dglent / meteo-qt

System tray application for weather status information
GNU General Public License v3.0
82 stars 21 forks source link

Incompatibilities with recent changes in Python ecosystem #144

Open pmattern opened 4 months ago

pmattern commented 4 months ago

There are currently some incompatibilities with changes made to the Python ecosystem. None of them is really urgent, I think it's okay to summarize all in a single issue.

Distutils were removed in Python 3.12. meteo-qt is still using some of their features, e. g. some of those mentioned in section Migration Advice in setup.py.
Setuptools provide some kind of compatibility layer, so meteo-qt still builds against Python 3.12. But in the long run this should be fixed.

The other one are the fundamental changes of the packaging concepts depicted in PEP 517.
Workarounds for software lacking support at the packaging stage are available but do not really make sense.
So it would be good, if you could at least add a pyproject.toml allowing to use setuptools as backend in terms of those new concepts. Maybe you want to ditch setuptools altogether in favor of one of the other backends while at it. YMMV.

One of the localization tools will be deprecated in Python 3.15:

/usr/lib/python3.12/site-packages/PyQt5/pylupdate_main.py:73: DeprecationWarning: 'locale.getdefaultlocale' is deprecated and slated for removal in Python 3.15. Use setlocale(), getencoding() and getlocale() instead.

There's an incompatibility with Setuptools' package configuration:

/usr/lib/python3.12/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'meteo_qt.images' is absent from the `packages` configuration.
[...]

EDIT Section about Distutils was inaccurate, add two more problems.

dglent commented 4 months ago

Thank you @pmattern i wasn't aware of this evolution. I will check also to add the pyproject.toml; i am busy unfortunately this period, i will try to do as soon as possible , any help is welcome.