[Bug 2018519] [NEW] dput crashes if setuptools version is greater than 66

Adrianna Pińska 2018519 at bugs.launchpad.net
Thu May 4 14:16:28 UTC 2023


Public bug reported:

I'm using dput version 1.0.3ubuntu1 on Ubuntu 20.04. Setuptools version
66 introduced a breaking change to end support of version strings which
don't conform to PEP 440. If the installed setuptools version is 66 or
higher, the dput launcher script fails with this error:

adrianna at sergyar:~/packaging/beta$ dput
Traceback (most recent call last):
  File "/usr/bin/dput", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3327, in <module>
    def _initialize_master_working_set():
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3301, in _call_aside
    f(*args, **kwargs)
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3339, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 629, in _build_master
    ws.require(__requires__)
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 966, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 827, in resolve
    dist = self._resolve_dist(
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 852, in _resolve_dist
    if dist is None or (dist not in req and replace_conflicting):
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3204, in __contains__
    return self.specifier.contains(item, prereleases=True)
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 902, in contains
    item = Version(item)
  File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/version.py", line 197, in __init__
    raise InvalidVersion(f"Invalid version: '{version}'")
pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '1.0.3ubuntu1'

The only workaround is to downgrade setuptools to an older version.

If this was fixed in a more recent version of dput, can the fix be
backported to Focal?

** Affects: dput (Ubuntu)
     Importance: Undecided
         Status: New

** Description changed:

- I'm using dput version `1.0.3ubuntu1` on Ubuntu 20.04. Setuptools
- version 66 introduced a breaking change to end support of version
- strings which don't conform to PEP 440. If the installed setuptools
- version is 66 or higher, the dput launcher script fails with this error:
+ I'm using dput version 1.0.3ubuntu1 on Ubuntu 20.04. Setuptools version
+ 66 introduced a breaking change to end support of version strings which
+ don't conform to PEP 440. If the installed setuptools version is 66 or
+ higher, the dput launcher script fails with this error:
  
- ```
- adrianna at sergyar:~/packaging/beta$ dput                                                                                                                                      
- Traceback (most recent call last):                                                                                                                                           
-   File "/usr/bin/dput", line 6, in <module>                                                                                                                                  
-     from pkg_resources import load_entry_point                                                                                                                               
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3327, in <module>                                                                 
-     def _initialize_master_working_set():                                                                                                                                    
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3301, in _call_aside                                                              
-     f(*args, **kwargs)                                                                                                                                                       
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3339, in _initialize_master_working_set                                           
-     working_set = WorkingSet._build_master()                                                                                                                                 
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 629, in _build_master
-     ws.require(__requires__)                                                          
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 966, in require                                                                   
-     needed = self.resolve(parse_requirements(requirements))                                                                                                                  
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 827, in resolve                                                                   
-     dist = self._resolve_dist(                                                                                                                                               
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 852, in _resolve_dist                                                             
-     if dist is None or (dist not in req and replace_conflicting):                                                                                                            
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3204, in __contains__                                                             
-     return self.specifier.contains(item, prereleases=True)                                                                                                                   
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 902, in contains                                              
-     item = Version(item)                                                                                                                                                     
-   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/version.py", line 197, in __init__                                                 
-     raise InvalidVersion(f"Invalid version: '{version}'")                                                                                                                    
+ adrianna at sergyar:~/packaging/beta$ dput
+ Traceback (most recent call last):
+   File "/usr/bin/dput", line 6, in <module>
+     from pkg_resources import load_entry_point
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3327, in <module>
+     def _initialize_master_working_set():
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3301, in _call_aside
+     f(*args, **kwargs)
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3339, in _initialize_master_working_set
+     working_set = WorkingSet._build_master()
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 629, in _build_master
+     ws.require(__requires__)
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 966, in require
+     needed = self.resolve(parse_requirements(requirements))
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 827, in resolve
+     dist = self._resolve_dist(
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 852, in _resolve_dist
+     if dist is None or (dist not in req and replace_conflicting):
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3204, in __contains__
+     return self.specifier.contains(item, prereleases=True)
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 902, in contains
+     item = Version(item)
+   File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/version.py", line 197, in __init__
+     raise InvalidVersion(f"Invalid version: '{version}'")
  pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '1.0.3ubuntu1'
- ```
  
  The only workaround is to downgrade setuptools to an older version.
  
  If this was fixed in a more recent version of dput, can the fix be
  backported to Focal?

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dput in Ubuntu.
https://bugs.launchpad.net/bugs/2018519

Title:
  dput crashes if setuptools version is greater than 66

Status in dput package in Ubuntu:
  New

Bug description:
  I'm using dput version 1.0.3ubuntu1 on Ubuntu 20.04. Setuptools
  version 66 introduced a breaking change to end support of version
  strings which don't conform to PEP 440. If the installed setuptools
  version is 66 or higher, the dput launcher script fails with this
  error:

  adrianna at sergyar:~/packaging/beta$ dput
  Traceback (most recent call last):
    File "/usr/bin/dput", line 6, in <module>
      from pkg_resources import load_entry_point
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3327, in <module>
      def _initialize_master_working_set():
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3301, in _call_aside
      f(*args, **kwargs)
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3339, in _initialize_master_working_set
      working_set = WorkingSet._build_master()
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 629, in _build_master
      ws.require(__requires__)
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 966, in require
      needed = self.resolve(parse_requirements(requirements))
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 827, in resolve
      dist = self._resolve_dist(
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 852, in _resolve_dist
      if dist is None or (dist not in req and replace_conflicting):
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3204, in __contains__
      return self.specifier.contains(item, prereleases=True)
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 902, in contains
      item = Version(item)
    File "/home/adrianna/.local/lib/python3.8/site-packages/pkg_resources/_vendor/packaging/version.py", line 197, in __init__
      raise InvalidVersion(f"Invalid version: '{version}'")
  pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '1.0.3ubuntu1'

  The only workaround is to downgrade setuptools to an older version.

  If this was fixed in a more recent version of dput, can the fix be
  backported to Focal?

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dput/+bug/2018519/+subscriptions




More information about the foundations-bugs mailing list