Control: tags -1 + patch

Hello to the gamers.

This broke the reprepro pipeline used universally across Salsa:
  https://salsa.debian.org/salsa-ci-team/pipeline/-/issues/376
the backtrace ends in
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 20, in 
<module>
    import pkg_resources
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 95, in 
<module>
    import packaging.specifiers
thus
  $ wget 
http://ftp.de.debian.org/debian/pool/main/s/setuptools/python3-pkg-resources_66.1.1-1_all.deb
 
http://ftp.de.debian.org/debian/pool/main/s/setuptools/python3-pkg-resources_70.3.0-2_all.deb
 
http://ftp.de.debian.org/debian/pool/main/s/setuptools/python3-pkg-resources_72.2.0-1_all.deb
  $ dpkg-deb -R python3-pkg-resources_66.1.1-1_all.deb 
python3-pkg-resources_66.1.1-1
  $ dpkg-deb -R python3-pkg-resources_70.3.0-2_all.deb 
python3-pkg-resources_70.3.0-2
  $ dpkg-deb -R python3-pkg-resources_72.2.0-1_all.deb 
python3-pkg-resources_72.2.0-1
  $ grep Depends: python3-pkg-resources_??.?.?-?/DEBIAN/control
  python3-pkg-resources_66.1.1-1/DEBIAN/control:Depends: python3:any
  python3-pkg-resources_70.3.0-2/DEBIAN/control:Depends: python3:any
  python3-pkg-resources_72.2.0-1/DEBIAN/control:Depends: python3:any
  $ grep -re 'import.*packaging' -e 'packaging.*import'   
python3-pkg-resources_??.?.?-?
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 pkg_resources.extern import packaging
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:__import__('pkg_resources.extern.packaging.version')
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:__import__('pkg_resources.extern.packaging.specifiers')
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:__import__('pkg_resources.extern.packaging.requirements')
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:__import__('pkg_resources.extern.packaging.markers')
  
python3-pkg-resources_66.1.1-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:__import__('pkg_resources.extern.packaging.utils')
  
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/_vendor/packaging/version.py:
    from packaging.version import parse, Version
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/_vendor/packaging/specifiers.py:
    from packaging.specifiers import Specifier, SpecifierSet, InvalidSpecifier
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/_vendor/packaging/specifiers.py:
    from packaging.version import Version
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/__init__.py::mod:`importlib.metadata`
 and :pypi:`packaging` instead.
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 pkg_resources.extern.packaging import markers as _packaging_markers
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 pkg_resources.extern.packaging import requirements as _packaging_requirements
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 pkg_resources.extern.packaging import utils as _packaging_utils
  
python3-pkg-resources_70.3.0-2/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 pkg_resources.extern.packaging import version as _packaging_version
  
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/tests/test_resources.py:from
 packaging.specifiers import SpecifierSet
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py::mod:`importlib.metadata`
 and :pypi:`packaging` instead.
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:import
 packaging.specifiers
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 packaging import markers as _packaging_markers
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 packaging import requirements as _packaging_requirements
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 packaging import utils as _packaging_utils
  
python3-pkg-resources_72.2.0-1/usr/lib/python3/dist-packages/pkg_resources/__init__.py:from
 packaging import version as _packaging_version

This indicates, to me, that pkg_resources 66 and 70 used an embedded
packaging, but 72 uses the system packaging.
This agrees with ema's analysis.


In a clean sid chroot, the "import pkg_resources" repros:
  # python3 -c "import pkg_resources"
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 95, 
in <module>
      import packaging.specifiers
  ModuleNotFoundError: No module named 'packaging'

  # apt install python3-packaging
  # python3 -c "import pkg_resources"
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 96, 
in <module>
      from jaraco.text import (
  ModuleNotFoundError: No module named 'jaraco'

  # apt install python3-jaraco.text
  # python3 -c "import pkg_resources"
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 105, 
in <module>
      from platformdirs import user_cache_dir as _user_cache_dir
  ModuleNotFoundError: No module named 'platformdirs'

  # apt install python3-platformdirs
  # python3 -c "import pkg_resources"
  <string>:1: DeprecationWarning: pkg_resources is deprecated as an API. See 
https://setuptools.pypa.io/en/latest/pkg_resources.html

Thus, ema's list seems accurate.
Attaching a patch that adds them to the Depends: list.

Best,
diff '--color=auto' -ru setuptools-72.2.0.orig/debian/control setuptools-72.2.0/debian/control
--- setuptools-72.2.0.orig/debian/control	2024-03-04 11:13:53.000000000 +0100
+++ setuptools-72.2.0/debian/control	2024-08-21 00:42:45.960890472 +0200
@@ -28,7 +28,8 @@
 Package: python3-pkg-resources
 Architecture: all
 Multi-Arch: foreign
-Depends: ${misc:Depends}, ${python3:Depends}
+Depends: ${misc:Depends}, ${python3:Depends},
+ python3-packaging, python3-jaraco.text, python3-platformdirs
 Suggests: python3-setuptools
 Description: Package Discovery and Resource Access using pkg_resources
  The pkg_resources module provides an API for Python libraries to

Attachment: signature.asc
Description: PGP signature

Reply via email to