I wanted to create a standalone executable from a pyton script and tried cx_Freeze. After emerging, the cxfreeze script fails to start due to a missing dependency 'importlib_metadata'. This is unexpected since that package is supposedly part of the python stdlib as of 3.9. Reproducible: Always Steps to Reproduce: 1. emerge cx_Freeze using only python-3.9 2. start cxfreeze 3. Error! Actual Results: $cxfreeze Traceback (most recent call last): File "/usr/lib/python-exec/python3.9/cxfreeze", line 33, in <module> sys.exit(load_entry_point('cx-Freeze==6.5.3', 'console_scripts', 'cxfreeze')()) File "/usr/lib/python-exec/python3.9/cxfreeze", line 25, in importlib_load_entry_point return next(matches).load() File "/usr/lib/python3.9/importlib/metadata.py", line 77, in load module = import_module(match.group('module')) File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 680, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 790, in exec_module File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed File "/usr/lib/python3.9/site-packages/cx_Freeze/__init__.py", line 1, in <module> import setuptools File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 16, in <module> import setuptools.version File "/usr/lib/python3.9/site-packages/setuptools/version.py", line 1, in <module> import pkg_resources File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3243, in <module> def _initialize_master_working_set(): File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3226, in _call_aside f(*args, **kwargs) File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 3255, in _initialize_master_working_set working_set = WorkingSet._build_master() File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 568, in _build_master ws.require(__requires__) File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 886, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 772, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'importlib_metadata>=3.1.1' distribution was not found and is required by cx-Freeze Expected Results: Correct start.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af2562a929179727a786c5053cd0a906a5183b65 commit af2562a929179727a786c5053cd0a906a5183b65 Author: Sergey Popov <pinkbyte@gentoo.org> AuthorDate: 2021-04-15 08:25:40 +0000 Commit: Sergey Popov <pinkbyte@gentoo.org> CommitDate: 2021-04-15 09:13:22 +0000 dev-python/cx_Freeze: add missing dependency for dev-python/importlib_metadata Closes: https://bugs.gentoo.org/773550 Package-Manager: Portage-3.0.13, Repoman-3.0.2 Signed-off-by: Sergey Popov <pinkbyte@gentoo.org> dev-python/cx_Freeze/cx_Freeze-6.5.3.ebuild | 2 ++ 1 file changed, 2 insertions(+)