Skip to content

bug: failed to create duckdb connect for latest duckdb 1.4.1 release #11668

@ruiyang2015

Description

@ruiyang2015

What happened?

pip install duckdb==1.4.1

import ibis
c = ibis.duckdb.connect()

Looks like DuckDB 1.4.1 deprecate the duckdb.functional
need to change the import to

from duckdb.func import ARROW,NATIVE

in ibis/ibis/backends/duckdb/init.py

What version of ibis are you using?

10.8.1.dev76

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

DuckDB 1.4.1

Relevant log output

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/ruiyang/Go/src/github.com/ascend-io/ascend-core/.venv/lib/python3.12/site-packages/ibis/__init__.py", line 142, in __getattr__
    return load_backend(name)
           ^^^^^^^^^^^^^^^^^^
  File "/Users/ruiyang/Go/src/github.com/ascend-io/ascend-core/.venv/lib/python3.12/site-packages/ibis/__init__.py", line 82, in load_backend
    module = entry_point.load()
             ^^^^^^^^^^^^^^^^^^
  File "/Users/ruiyang/.local/share/uv/python/cpython-3.12.9-macos-aarch64-none/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
    module = import_module(match.group('module'))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/ruiyang/.local/share/uv/python/cpython-3.12.9-macos-aarch64-none/lib/python3.12/importlib/__init__.py", line 90, 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 999, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/Users/ruiyang/Go/src/github.com/ascend-io/ascend-core/.venv/lib/python3.12/site-packages/ibis/backends/duckdb/__init__.py", line 51, in <module>
    InputType.PYARROW: duckdb.functional.ARROW,

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