From 2c3ebffa20d43615b4614ae5ecb37acba2dcfa8e Mon Sep 17 00:00:00 2001 From: Shefeek Jinnah Date: Wed, 4 Feb 2026 16:37:26 +0530 Subject: [PATCH] chore: prepare v0.0.5 release --- CHANGELOG.md | 13 +++++++++++++ Cargo.lock | 24 +++++++++++++++++++++++- Cargo.toml | 2 +- README.md | 7 ++++--- 4 files changed, 41 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4cf940c..93da0d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.0.5] - 2026-02-04 + +### Added +- Write support with streaming API for DuckLake catalogs (`write` feature flag) +- SQL write support with `INSERT INTO` statements (`write` feature flag) +- Schema evolution support +- TPC-H and TPC-DS benchmarks comparing DuckDB-DuckLake vs DataFusion-DuckLake +- Benchmark test workflow for CI + +### Changed +- Reuse DuckDB connection for metadata queries instead of creating new connection per call (performance improvement) + ## [0.0.4] - 2026-01-14 ### Added @@ -46,6 +58,7 @@ Initial release. - Filter pushdown to Parquet - Query-scoped snapshot isolation +[0.0.5]: https://github.com/hotdata-dev/datafusion-ducklake/compare/v0.0.4...v0.0.5 [0.0.4]: https://github.com/hotdata-dev/datafusion-ducklake/compare/v0.0.3...v0.0.4 [0.0.3]: https://github.com/hotdata-dev/datafusion-ducklake/compare/v0.0.2...v0.0.3 [0.0.2]: https://github.com/hotdata-dev/datafusion-ducklake/compare/v0.0.1...v0.0.2 diff --git a/Cargo.lock b/Cargo.lock index 02b16d1..4e7c65f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1096,8 +1096,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ "iana-time-zone", + "js-sys", "num-traits", "serde", + "wasm-bindgen", "windows-link", ] @@ -1695,7 +1697,7 @@ checksum = "b71f8c2c0d5c57620003c3bf1ee577b738404a7fd9642f6cf73d10e44ffaa70f" [[package]] name = "datafusion-ducklake" -version = "0.0.4" +version = "0.0.5" dependencies = [ "anyhow", "arrow", @@ -1718,6 +1720,7 @@ dependencies = [ "tokio", "tracing", "url", + "uuid", ] [[package]] @@ -2186,6 +2189,25 @@ dependencies = [ "strum 0.27.2", ] +[[package]] +name = "ducklake-benchmark" +version = "0.1.0" +dependencies = [ + "anyhow", + "chrono", + "clap", + "csv", + "datafusion", + "datafusion-ducklake", + "duckdb", + "futures", + "regex", + "serde", + "serde_json", + "tokio", + "walkdir", +] + [[package]] name = "dunce" version = "1.0.5" diff --git a/Cargo.toml b/Cargo.toml index cc69d66..4be5c86 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ members = [".", "benchmark"] [package] name = "datafusion-ducklake" -version = "0.0.4" +version = "0.0.5" edition = "2024" authors = ["zac@hotdata.dev", "shefeek@hotdata.dev", "anoop@hotdata.dev"] description = "DuckLake query engine for rust, built with datafusion." diff --git a/README.md b/README.md index c09af97..3515fe1 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ The goal of this project is to make DuckLake a first-class, Arrow-native lakehou ## Currently Supported -- Read-only queries against DuckLake catalogs +- Read and write queries against DuckLake catalogs (INSERT INTO support) - DuckDB, PostgreSQL, MySQL, and SQLite catalog backends - Local filesystem and S3-compatible object stores (MinIO, S3) - Snapshot-based consistency @@ -29,7 +29,6 @@ The goal of this project is to make DuckLake a first-class, Arrow-native lakehou ## Known Limitations - Complex types (nested lists, structs, maps) have minimal support -- No write operations - No partition-based file pruning - No time travel support - DuckDB-encrypted Parquet files (non-PME) are not supported @@ -55,7 +54,8 @@ This project is under active development. The roadmap below reflects major areas ### Write Support -- Initial write support for DuckLake tables +- ~~Initial write support for DuckLake tables~~ (Done in v0.0.5) +- UPDATE and DELETE operations ### Time Travel & Versioning @@ -87,6 +87,7 @@ This project is under active development. The roadmap below reflects major areas | `metadata-mysql` | MySQL catalog backend | | | `metadata-sqlite` | SQLite catalog backend | | | `encryption` | Parquet Modular Encryption (PME) support | | +| `write` | Write support (INSERT INTO) | | ```bash # DuckDB only (default)