#3259 closed defect (fixed)
The switch to use pkg_resources breaks frozen builds
Reported by: | cypher | Owned by: | daira |
---|---|---|---|
Priority: | normal | Milestone: | 1.14.0 |
Component: | packaging | Version: | n/a |
Keywords: | regression | Cc: | |
Launchpad Bug: |
Description
PR #646 introduced a change that broke "frozen" builds of Tahoe-LAFS (i.e., standalone executables generated by PyInstaller?, cx_Freeze, and the like). Specifically, because "frozen" python interpreters run outside of and without a traditional setuptools-based packaging environment, the pkg_resources.get_distribution(__appname__) call will fail as follows when running under a "frozen" interpreter:
Traceback (most recent call last): File "tahoe.py", line 23, in <module> from twisted.python.procutils import which File "/tmp/pip-install-Om4he9/pyinstaller/PyInstaller/loader/pyimod03_importers.py", line 395, in load_module File "site-packages/allmydata/scripts/runner.py", line 9, in <module> File "/tmp/pip-install-Om4he9/pyinstaller/PyInstaller/loader/pyimod03_importers.py", line 395, in load_module File "site-packages/allmydata/version_checks.py", line 29, in <module> File "site-packages/pkg_resources/__init__.py", line 481, in get_distribution File "site-packages/pkg_resources/__init__.py", line 357, in get_provider File "site-packages/pkg_resources/__init__.py", line 900, in require File "site-packages/pkg_resources/__init__.py", line 786, in resolve pkg_resources.DistributionNotFound: The 'tahoe-lafs' distribution was not found and is required by the application [23457] Failed to execute script tahoe
Conditionally skipping this call when running under a frozen interpreter will allow the execution of the application to continue as intended (as is already being done elsewhere in the version_checks module -- e.g., here).
Change History (3)
comment:1 Changed at 2019-10-03T19:02:04Z by cypher
comment:2 Changed at 2019-10-09T19:32:10Z by Chris Wood <chris@…>
- Resolution set to fixed
- Status changed from new to closed
In 710af06/trunk:
comment:3 Changed at 2019-10-09T19:32:10Z by GitHub <noreply@…>
In 91dd27b/trunk:
PR: https://github.com/tahoe-lafs/tahoe-lafs/pull/661