Description
setuptools' pkg_resources is considered sort of deprecated nowadays, and it's being replaced by importlib.resources (added to python3.7 stdlib) and importlib.metadata (included in python3.8).
Both of the latter have backports on PyPI for previous pythons:
https://pypi.org/project/importlib_resources/
https://pypi.org/project/importlib-metadata/
As far as I understand, fs needs pkg_resources for two reasons:
- for implementing namespace packages
- for dynamically loading plugins as entry-points
For the first, the Python Packaging Authority's packaging guide recommends to use pkgutil
-style namespace packages which allegedly work on both py2 and py3 (I have never used them though): https://packaging.python.org/guides/packaging-namespace-packages/#pkgutil-style-namespace-packages
For the second point, I think importlib.metadata
should support this. Other big projects like pytest have recently switched to using that (see pytest-dev/pluggy#199).
My immediate issue is that I cannot package my app (https://github.com/googlefonts/fontmake) with PyObsidizer because the latter does not support pkg_resources:
indygreg/PyOxidizer#134