pip installable DuckDB extensions
pip installable DuckDB core extensions, so you don't have to leave your Python ecosystem behind.
Table of Contents
Available extensions
- duckdb_extension_autocomplete
- duckdb_extension_avro
- duckdb_extension_aws
- duckdb_extension_azure
- duckdb_extension_delta
- duckdb_extension_ducklake
- duckdb_extension_encodings
- duckdb_extension_excel
- duckdb_extension_fts
- duckdb_extension_httpfs
- duckdb_extension_iceberg
- duckdb_extension_icu
- duckdb_extension_inet
- duckdb_extension_json
- duckdb_extension_lance
- duckdb_extension_motherduck
- duckdb_extension_mysql
- duckdb_extension_mysql_scanner
- duckdb_extension_odbc
- duckdb_extension_odbc_scanner
- duckdb_extension_parquet
- duckdb_extension_postgres
- duckdb_extension_postgres_scanner
- duckdb_extension_quack
- duckdb_extension_spatial
- duckdb_extension_sqlite3
- duckdb_extension_sqlite
- duckdb_extension_sqlite_scanner
- duckdb_extension_tpcds
- duckdb_extension_tpch
- duckdb_extension_ui
- duckdb_extension_unity_catalog
- duckdb_extension_vortex
- duckdb_extension_vss
The architectures supported:
linux_amd64linux_arm64osx_arm64osx_amd64windows_amd64
Compatible with duckdb==1.5.5
Project scope
This repository deliberately packages DuckDB core extensions.
It does not currently package community extensions or nightly-only extensions from other repositories (for example https://community-extensions.duckdb.org). That is a deliberate scope choice: core extensions are maintained by DuckDB Labs and come with a different trust model than third-party/community extensions, and packaging and redistributing community-maintained or unstable moving targets would require accepting additional supply chain risk and per-extension vendor assessment.
Release cadence
This repository does not publish on every upstream DuckDB extension commit.
For a change (for example in duckdb-excel) to show up here:
- The change must be included in DuckDB's published extension artifact for a specific DuckDB version.
- This repository must bump to that same DuckDB version and publish a new tag.
CI builds run on pushes and pull requests, but PyPI publishing happens only for tagged releases in this repository. Maintainer steps for version bumps are documented in CONTRIBUTING.md.
Artifact integrity checks
- Release builds verify SHA-256 checksums for downloaded extension binaries using
extension_checksums.json. - If checksums are missing or mismatched, the build fails.
- Local developer breakglass is available via
DUCKDB_EXTENSIONS_ALLOW_UNVERIFIED=1for emergency debugging only. - Breakglass is blocked in GitHub Actions to ensure published artifacts are always checksum-verified.
Installation
First install duckdb-extensions.
pip install duckdb-extensions
Then one of the extensions.
pip install duckdb-extension-httpfs
You are ready to install the extension for duckdb.
from duckdb_extensions import import_extension
import_extension("httpfs")
Verify that the extension is installed.
import duckdb
print(
duckdb.sql("""SELECT installed
FROM duckdb_extensions() where extension_name='httpfs'""")
.fetchone()[0]
)
Licensing
duckdb-extensionsrepository code and wrapper/package code are distributed under the terms of the MIT license.- Bundled extension binaries are downloaded from upstream providers and may be governed by different licenses or terms.
- See THIRD_PARTY_LICENSES.md for extension-by-extension provenance and upstream terms references.
Metadata
Release files for duckdb-extensions 1.5.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| duckdb_extensions-1.5.5-py3-none-any.whl | Python 3 | none | any | Details |
Release files / duckdb_extensions-1.5.5-py3-none-any.whl
| Download URL | duckdb_extensions-1.5.5-py3-none-any.whl |
|---|---|
| Size | 4.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d552214c9b16aa3ba654476dd1ae00b1e9a8cdb656f6dec2a0c59a3c882bfc37
|
|
BLAKE2b-256 checksum How to use checksums |
ffaf9b6c2e3fce62c045c4a9e9e6aaf3887ddbb13e8fcc7f5925ad69991a20a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 10, 2026.
Transparency log