Skip to content

bug: trino dependency fails to install correctly #11794

@baumgold

Description

@baumgold

What happened?

When adding ibis-framework[trino] as a dependency I expect to be able to import ibis and use the ibis.trino module without error.

What version of ibis are you using?

11.0.0

What backend(s) are you using, if any?

Trino backend with Python 3.13

Relevant log output

$ uv run --with 'ibis-framework[trino]==11' python -c "import ibis; print(ibis.trino)"
Traceback (most recent call last):
  File "~/.venv/lib/python3.13/site-packages/ibis/__init__.py", line 82, in load_backend
    module = entry_point.load()
  File "/usr/lib/python3.13/importlib/metadata/__init__.py", line 179, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "~/.venv/lib/python3.13/site-packages/ibis/backends/trino/__init__.py", line 17, in <module>
    import ibis.backends.sql.compilers as sc
  File "~/.venv/lib/python3.13/site-packages/ibis/backends/sql/compilers/__init__.py", line 29, in <module>
    from ibis.backends.sql.compilers.datafusion import DataFusionCompiler
  File "~/.venv/lib/python3.13/site-packages/ibis/backends/sql/compilers/datafusion.py", line 10, in <module>
    from packaging.version import parse as vparse
ModuleNotFoundError: No module named 'packaging'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
    import ibis; print(ibis.trino)
                       ^^^^^^^^^^
  File "~/.venv/lib/python3.13/site-packages/ibis/__init__.py", line 142, in __getattr__
    return load_backend(name)
  File "~/.venv/lib/python3.13/site-packages/ibis/__init__.py", line 84, in load_backend
    raise ImportError(
    ...<4 lines>...
    ) from exc
ImportError: Failed to import the trino backend due to missing dependencies.

You can pip or conda install the trino backend as follows:

  python -m pip install -U "ibis-framework[trino]"  # pip install
  conda install -c conda-forge ibis-trino           # or conda install

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIncorrect behavior inside of ibis

    Type

    No type

    Projects

    Status

    backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions