Hi,

This is an addendum to doko's existing MBF, with more than 100 RC bugs
still open.

The severity of the original MBF was raised begin of this month.

This addendum includes the packages that gained the depedency after initial MBF
and also the brand new packages.

I checked 1/4 of the 50 packages involveld and they were all correct matches.

Sometimes I even see that it was _me_ that added the dependency earlier
to temporarily get past a FTBFS of CI failure.

For completeness hereunder is the script I used to detect CI failures
due to undeclared usage of pkg_resources.

It parses all the interesting logs for the string "ModuleNotFoundError"

For the FTBFS I rely on Santiago, Lucas et all usual mass rebuilds.

Greetings

Alexandre

------

$ cat ci.py
#!/usr/bin/python3

import time

import requests
import psycopg

conn = 
psycopg.connect("postgresql://udd-mirror:[email protected]/udd")
cursor = conn.cursor()

# maybe it's Python, maybe it's Maybelline
SQL = """
   select source, arch, run_id
   from ci
   where status='fail'
   and suite='unstable'
   and date > TIMESTAMP '%TS% 00:01:01'
   and not source like 'cl-%'
   and not source like 'golang-%'
   and not source like 'haskell-%'
   and not source like 'lib%perl'
   and not source like 'lua-%'
   and not source like 'node-%'
   and not source like 'openjdk-%'
   and not source like 'php%'
   and not source like 'postgresql-%'
   and not source like 'ruby-%'
   and not source like 'rust-%'
   and not source like 'r-bioc-%'
   and not source like 'r-cran-%'
   order by source, arch
"""

cursor.execute(SQL.replace('%TS%', '2025-01-11'))

counts = dict()
urls = dict()

for row in cursor.fetchall():
   source, arch, run_id = row
   if type(source) is bytes:
       source = source.decode('ascii')
   if type(arch) is bytes:
       arch = arch.decode('ascii')
   if type(run_id) is bytes:
       run_id = run_id.decode('ascii')
   if source not in counts:
       counts[source] = 0
   counts[source] += 1
   url = 'https://ci.debian.net/data/autopkgtest/unstable/%s/%s/%s/%s/log.gz'
% (
        arch,
        source[0],
        source,
        run_id,
   )
   urls[source] = url

conn.close()

#print(counts)

for source, count in counts.items():
   if count < 2:
      continue
   url = urls[source]

   time.sleep(0.3)
   print('.', end='', flush=True)

   #print(url)
   r = requests.get(url)

   lines = set()
   for line in r.text.splitlines():
       if line in lines:
           continue
       if 'ModuleNotFoundError' in line:
           print('\r' + url, line)
           lines.add(line)

print()




Le dim. 18 janv. 2026 à 14:06, Holger Levsen <[email protected]> a écrit :
>
> On Sun, Jan 18, 2026 at 01:45:40PM +0100, [email protected] wrote:
> > The package build-depends or depends on python3-pkg-resources, which
> > is deprecated upstream. Details can be found at
>
> this is normally not enough to tag a bug with severity "serious",
> so how about downgrading this to "important"?
>
>
> --
> cheers,
>         Holger
>
>  ⢀⣴⠾⠻⢶⣦⠀
>  ⣾⠁⢠⠒⠀⣿⡁  holger@(debian|reproducible-builds|layer-acht).org
>  ⢿⡄⠘⠷⠚⠋⠀  OpenPGP: B8BF54137B09D35CF026FE9D 091AB856069AAA1C
>  ⠈⠳⣄
>
> There are only two kinds of nazis: stupid ones and those without an excuse.
> (Volker Strübing)

Reply via email to