Skip to content

No package metadata was found for typing_extensions on plotly import #902

Open
@davetapley

Description

@davetapley

Describe the bug

plotly crashes on import

  • Does the error get raised while building or when running?

To Reproduce

A minimal example file:

import plotly.express 

PyInstaller command:

pyinstall test.py

Error:

Traceback (most recent call last):
  File "__main__.py", line 3, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "main.py", line 8, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "admin.py", line 9, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "common.py", line 24, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "jefdaq/runner/environment.py", line 18, in <module>
    from jefdaq.runner.runners.admin import AdminGuiRunner
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "jefdaq/runner/runners/admin.py", line 8, in <module>
    import jefdaq.gui.main  # noqa: F401 # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "jefdaq/gui/main.py", line 9, in <module>
    import plotly.express as px
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "plotly/express/__init__.py", line 25, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "plotly/express/_imshow.py", line 2, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "_plotly_utils/basevalidators.py", line 11, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/__init__.py", line 7, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/stable/__init__.py", line 3, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/stable/v1/__init__.py", line 24, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/functions.py", line 32, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/series.py", line [22](https://github.com/JEFuller/ng/actions/runs/14497242202/job/40667964593#step:6:23), in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/typing.py", line 10, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/_compliant/__init__.py", line 3, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/_compliant/dataframe.py", line 21, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "narwhals/_translate.py", line 37, in <module>
  File "narwhals/_translate.py", line 20, in _typing_extensions_has_pep_696
  File "importlib/metadata/__init__.py", line 888, in version
  File "importlib/metadata/__init__.py", line 861, in distribution
  File "importlib/metadata/__init__.py", line 399, in from_name
importlib.metadata.PackageNotFoundError: No package metadata was found for typing_extensions
[6770] Failed to execute script '__main__' due to unhandled exception!

Expected behavior
Since there is already a plotly hook in contrib, it should Just Work.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Ubuntu
  • Python Version: 3.12.2
  • Version of pyinstaller-hooks-contrib: 2024.9
  • Version of PyInstaller 6.9.0

Additional context

I was able to work around with:

datas += copy_metadata('typing_extensions')

Metadata

Metadata

Assignees

No one assigned

    Labels

    state:triageWe're still figuring out how severe this issue is

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions