Hi,

I'm worried that a lot of undeclared dependencies on
python3-pkg-resources will creep up in Trixie
and none of us will notice because we all have python3-setuptools
installed somehow.

By scrapping UDD & ci.debian.net I can find a lot of failing CI jobs
that needs this one-line fix in d-control.

Of course it would be more effecient to zgrep ModuleNotFoundError
inside https://ci.debian.net,
like what was done for SyntaxWarning inside piuparts architecture.

Another orthogonal worry: the (over-)use of @builddeps@ in
d/test/control let packages
pass CI as Green while they will fail for end-users because of some
missing deps.

Greetings,

Alexandre
-----

tchet@quieter:~/udd/ci$ ./ci.py
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/afew/57418208/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/afew/57418208/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/afew/57418208/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/astroquery/57415625/log.gz
100s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/astroquery/57415625/log.gz
100s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/astroquery/57415625/log.gz
100s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/astroquery/57415625/log.gz
100s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/a/astroquery/57415625/log.gz
100s E   ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/b/bernhard/57413994/log.gz
 26s ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/b/biomaj3/57408831/log.gz
 57s ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/b/biomaj3-core/57401997/log.gz
 35s E   ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/c/circlator/57409170/log.gz
 66s E   ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/geoalchemy2/57402616/log.gz
106s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/geoalchemy2/57402616/log.gz
106s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/geoalchemy2/57402616/log.gz
106s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/geoalchemy2/57402616/log.gz
106s E   ModuleNotFoundError: No module named 'pkg_resources'
https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/geoalchemy2/57402616/log.gz
106s E   ModuleNotFoundError: No module named 'pkg_resources'

https://ci.debian.net/data/autopkgtest/unstable/ppc64el/g/git-review/57422016/log.gz
 42s ModuleNotFoundError: No module named 'pkg_resources'

------

#!/usr/bin/python3

# https://udd.debian.org/schema/udd.html
# 
https://ci.debian.net/data/autopkgtest/unstable/amd64/p/python-debian/57324755/log.gz

import time

import requests
import psycopg2

conn = 
psycopg2.connect("postgresql://udd-mirror:udd-mir...@udd-mirror.debian.net/udd")
cursor = conn.cursor()

# maybe it's Python, maybe it's Maybelline
SQL = """
   select source, arch, run_id
   from ci
   where suite='unstable'
   and status='fail'
   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-01'))

counts = dict()
urls = dict()

for row in cursor.fetchall():
   source, arch, run_id = row
   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()

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

   time.sleep(0.3)

   r = requests.get(url)
   for line in r.text.splitlines():
       if 'ModuleNotFoundError' in line:
           print(url, line)

Reply via email to