Opened 5 months ago
Closed 5 months ago
#73089 closed defect (fixed)
py39-dnspython @2.8.0_0 can not be imported
| Reported by: | marka63 | Owned by: | Schamschula (Marius Schamschula) |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | |
| Keywords: | Cc: | ||
| Port: | py39-dnspython |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
The minimum python version dnspython 2.8 supports is python 3.10. Import fails in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/dns/enum.py
at
@classmethod
def make(cls: Type[TIntEnum], value: int | str) -> TIntEnum:
"""Convert text or a value into an enumerated type, if possible.
*value*, the ``int`` or ``str`` to convert.
Raises a class-specific exception if a ``str`` is provided that
cannot be converted.
Raises ``ValueError`` if the value is out of range.
Returns an enumeration from the calling class corresponding to the
value, if one is defined, or an ``int`` otherwise.
"""
if isinstance(value, str):
return cls.from_text(value)
cls._check_value(value)
return cls(value)
as value: int | str is not supported in python 3.9.
I would suggest rolling back py39-dnspython (and earlier) to the previous version.
Change History (4)
comment:1 Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)
| Description: | modified (diff) |
|---|---|
| Owner: | set to Schamschula |
| Port: | py39-dnspython added |
| Status: | new → assigned |
comment:2 Changed 5 months ago by reneeotten (Renee Otten)
comment:3 Changed 5 months ago by Schamschula (Marius Schamschula)
Agreed! It seems a lot of packages have left Python 3.9 behind at this point.
However, I see
% port echo rdepends:py39-dnspython gr-lora-rpp0 py-apache-beam py-authheaders py-magenta py-tensorflow-data-validation py-tensorflow-transform py-tfx-bsl py39-apache-beam py39-authheaders py39-dns-lexicon py39-eventlet py39-fasteners py39-magenta py39-maggma py39-mongoengine py39-mp-api py39-pymongo py39-tensorflow-data-validation py39-tensorflow-transform py39-tfx-bsl py39-xraylarch
That means that if I remove the py39 subport there are a bunch of broken dependents.
comment:4 Changed 5 months ago by Marius Schamschula <mschamschula@…>
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Note: See
TracTickets for help on using
tickets.

Python 3.9 is almost EOL, so I'd suggest to upgrade to a more recent version. We could pin py39-dnspython to an earlier version but I'd be in favor of starting the removal process of all
py39-<portname>subports instead.