duckdb-extensions provides a comprehensive set of pip-installable DuckDB extensions, acting as a meta-package or individual `duckdb-extension-*` packages. It allows users to easily add capabilities like HTTPFS, Parquet, JSON, and Spatial functions to their DuckDB installations. The current version is 1.5.1, and releases closely track new DuckDB versions, offering frequent updates to maintain compatibility and leverage the latest features.
pip install duckdb-extensionsVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to install `duckdb-extensions` (which makes the binaries available), and then use the `duckdb` Python library to connect to DuckDB and load an extension (e.g., `httpfs`) via SQL commands within the session. It then provides a simple example of using the loaded extension to query a remote Parquet file.
Upgrade to Python 3.9+ or pin `duckdb-extensions` to `==1.3.2` if Python 3.8 is required.
Ensure `pip install duckdb==X.Y.Z` and `pip install duckdb-extensions==X.Y.Z` (or specific extensions) use the same `X.Y.Z` version number.
After installation, use `import duckdb` and interact with extensions through `duckdb.connect().execute("INSTALL extension_name;").execute("LOAD extension_name;")`.Ensure `pip install duckdb-extensions==X.Y.Z` (or `pip install duckdb-extension-httpfs==X.Y.Z`) where `X.Y.Z` matches your `duckdb` version, then retry `INSTALL` and `LOAD` in your DuckDB session.
Uninstall both `duckdb` and `duckdb-extensions` (or specific extensions) and reinstall them with matching versions: `pip uninstall duckdb duckdb-extensions && pip install duckdb==1.5.1 duckdb-extensions==1.5.1` (using current versions as an example).
Do not `import duckdb_extensions`. Instead, `import duckdb` and manage extensions within the DuckDB session using SQL commands like `INSTALL` and `LOAD` after `duckdb-extensions` is pip-installed.