- Fixed CI so docker images are built and pushed to Docker Hub for tags. (#589)
-
Support using Postgres indexes and reading from partitioned tables. (#477)
-
The
AS (id bigint, name text)
syntax is no longer supported when usingread_parquet
,iceberg_scan
, etc. The new syntax is as follows: (#531)SELECT * FROM read_parquet('file.parquet'); SELECT r['id'], r['name'] FROM read_parquet('file.parquet') r WHERE r['age'] > 21;
-
Add a
duckdb.query
function which allows using DuckDB query syntax in Postgres. (#531) -
Support the
approx_count_distinct
DuckDB aggregate. (#499) -
Support the
bytea
(aka blob),uhugeint
,jsonb
,timestamp_ns
,timestamp_ms
,timestamp_s
&interval
types. (#511, #525, #513, #534, [(#573)]) -
Support DuckDB json functions and aggregates. (#546)
-
Add support for the
duckdb.allow_community_extensions
setting. -
We have an official logo! 🎉 (#575)
- Update to DuckDB 1.2.0. (#548)
- Allow executing
duckdb.raw_query
,duckdb.cache_info
,duckdb.cache_delete
andduckdb.recycle_db
as non-superusers. (#572) - Only sync MotherDuck catalogs when there is DuckDB query activity. (#582)
- Correctly parse parameter lists in
COPY
commands. This allows usingPARTITION_BY
as one of theCOPY
options. (#465) - Correctly read cache metadata for files larger than 4GB. (#494)
- Fix bug in parameter handling for prepared statements and PL/pgSQL functions. (#491)
- Fix comparisons and operators on the
timestamp with timezone
field by enabling DuckDB itsicu
extension by default. (#512) - Allow using
read_parquet
functions when not using superuser privileges. (#550) - Fix some case insensitivity issues when reading from Postgres tables. (#563)
- Fix case where cancel requests (e.g. triggered by pressing Ctrl+C in
psql
) would be ignored (#548, #584, #587)
- Support for reading Delta Lake storage using the
duckdb.delta_scan(...)
function. (#403) - Support for reading JSON using the
duckdb.read_json(...)
function. (#405) - Support for multi-statement transactions. (#433)
- Support reading from Azure Blob storage. (#478)
- Support many more array types, such as
float
,numeric
anduuid
arrays. (#282) - Support for PostgreSQL 14. (#397)
- Manage cached files using the
duckdb.cache_info()
andduckdb.cache_delete()
functions. (#434) - Add
scope
column toduckdb.secrets
table. (#461) - Allow configuring the default MotherDuck database using the
duckdb.motherduck_default_database
setting. (#470) - Automatically install and load known DuckDB extensions when queries use them. So,
duckdb.install_extension()
is usually not necessary anymore. (#484)
- Throw a clear error when reading partitioned tables (reading from partitioned tables is not supported yet). (#412)
- Fixed crash when using
CREATE SCHEMA AUTHORIZATION
. (#423) - Fix queries inserting into DuckDB tables with
DEFAULT
values. (#448) - Fixed assertion failure involving recursive CTEs. (#436)
- Only allow setting
duckdb.motherduck_postgres_database
inpostgresql.conf
. (#476) - Much better separation between C and C++ code, to avoid memory leaks and crashes (many PRs).
Initial release.