Description
Panda3D registers a finalize_distribution_options as of 1.10.13 to fix #1394, which also gets called when using commands other than build_apps due to limitations in setuptools.
However, this causes an import of FreezeTool, which imports Panda3D modules. If there is an issue with the Panda3D installation, this causes unrelated uses of setuptools to fail.
Steps to Reproduce
- Introduce an issue with the Panda3D C++ modules, eg. by deleting panda3d/core.so
- Try to install Pillow using pip
- Observe the panda3d.core install error
Proposed Fix
Put our finalize_distribution_options hook in a separate module, so that it doesn't trigger an import of other Panda3D modules
Environment
- Operating system: macOS 14.4
- System architecture: arm64
- Panda3D version: 1.10.14+
- Installation method: built from source
- Python version (if using Python): 3.12
Description
Panda3D registers a finalize_distribution_options as of 1.10.13 to fix #1394, which also gets called when using commands other than build_apps due to limitations in setuptools.
However, this causes an import of FreezeTool, which imports Panda3D modules. If there is an issue with the Panda3D installation, this causes unrelated uses of setuptools to fail.
Steps to Reproduce
Proposed Fix
Put our finalize_distribution_options hook in a separate module, so that it doesn't trigger an import of other Panda3D modules
Environment