Bug#997857: python-debian 0.1.42 broken with Python 3.5/3.6

Evgeni Golov evgeni at debian.org
Tue Oct 26 08:15:47 BST 2021


Package: python3-debian
Version: 0.1.42

Ohai,

filing this in Debian, as I am not aware of any other bugtracker for
python-debian, even tho the issue doesn't *really* affect Debian
unstable (as it doesn't have Python 3.5/3.6).

In python-debian 0.1.42, the following commit was made:
https://salsa.debian.org/python-debian-team/python-debian/-/commit/f31ee8f3f14892eb42c64fd8513f4cb2a0081d10

It essentially moves some code arround, but more explicitly, it puts the
typing code closer to the actual code. This is nice, but sadly breaks
usage of the real code on Python 3.5 and 3.6:

    Python 3.6.15 (default, Sep  5 2021, 00:00:00)
    [GCC 11.2.1 20210728 (Red Hat 11.2.1-1)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from debian.deb822 import Deb822
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/tmp/python-debian/venv/lib64/python3.6/site-packages/debian/deb822.py", line 309, in <module>
        from debian._util import (
      File "/tmp/python-debian/venv/lib64/python3.6/site-packages/debian/_util.py", line 15, in <module>
        """
    AttributeError: 'TypeVar' object attribute '__doc__' is read-only
    
The issue is that __doc__ of a TypeVar was read-only until 3.7.

You could probably try/except that assignment, or drop it completely, as
it doesn't *really* provide any meaningful documentation.

Or you could state the module doesn't support such an old Python, but
right now your setup.py states:

    python_requires='>=3.3'

Thanks
Evgeni



More information about the pkg-python-debian-maint mailing list