Skip to content

Commit

Permalink
release 0.6.0 (#599)
Browse files Browse the repository at this point in the history
shipping CDF and a number of other improvements!
  • Loading branch information
zachschuermann authored Dec 14, 2024
1 parent c33ae00 commit ae841ea
Show file tree
Hide file tree
Showing 5 changed files with 55 additions and 7 deletions.
52 changes: 50 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,66 @@
# Changelog

## unreleased
## [v0.6.0](https://github.com/delta-io/delta-kernel-rs/tree/v0.6.0/) (2024-12-13)

[Full Changelog](https://github.com/delta-io/delta-kernel-rs/compare/v0.5.0...HEAD)
[Full Changelog](https://github.com/delta-io/delta-kernel-rs/compare/v0.5.0...v0.6.0)

**API Changes**

*Breaking*
1. `Scan::execute` takes an `Arc<dyn EngineData>` now ([#553])
2. `StructField::physical_name` no longer takes a `ColumnMapping` argument ([#543])
3. removed `ColumnMappingMode` `Default` implementation ([#562])
4. Remove lifetime requirement on `Scan::execute` ([#588])
5. `scan::Scan::predicate` renamed as `physical_predicate` to eliminate ambiguity ([#512])
6. `scan::log_replay::scan_action_iter` now takes fewer (and different) params. ([#512])
7. `Expression::Unary`, `Expression::Binary`, and `Expression::Variadic` now wrap a struct of the
same name containing their fields ([#530])
8. New `Error` variant `Error::ChangeDataFeedIncompatibleSchema`

*Additions*
1. Ability to read a table's change data feed with new TableChanges API! See new `table_changes`
module as well as the 'read-table-changes' example ([#597]). Changes include:
- Implement Log Replay for Change Data Feed ([#540])
- `ScanFile` expression and visitor for CDF ([#546])
- Resolve deletion vectors to find inserted and removed rows for CDF ([#568])
- Helper methods for CDF Physical to Logical Transformation ([#579])
- `TableChangesScan::execute` and end to end testing for CDF ([#580])
- `TableChangesScan::schema` method to get logical schema ([#589])
2. Enable relaying log events via FFI ([#542])

**Implemented enhancements:**
- Define an ExpressionTransform trait ([#530])
- [chore] appease clippy in rustc 1.83 ([#557])
- Simplify column mapping mode handling ([#543])
- Adding some more miri tests ([#503])
- Data skipping correctly handles nested columns and column mapping ([#512])
- Engines now return FileMeta with correct millisecond timestamps ([#565])

**Fixed bugs:**
- don't use std abs_diff, put it in test_utils instead, run tests with msrv in action ([#596])
- (CDF) Add fix for sv extension ([#591])
- minimal CI fixes in arrow integration test and semver check ([#548])

[#503]: https://github.com/delta-io/delta-kernel-rs/pull/503
[#512]: https://github.com/delta-io/delta-kernel-rs/pull/512
[#530]: https://github.com/delta-io/delta-kernel-rs/pull/530
[#540]: https://github.com/delta-io/delta-kernel-rs/pull/540
[#542]: https://github.com/delta-io/delta-kernel-rs/pull/542
[#543]: https://github.com/delta-io/delta-kernel-rs/pull/543
[#546]: https://github.com/delta-io/delta-kernel-rs/pull/546
[#548]: https://github.com/delta-io/delta-kernel-rs/pull/548
[#553]: https://github.com/delta-io/delta-kernel-rs/pull/553
[#557]: https://github.com/delta-io/delta-kernel-rs/pull/557
[#562]: https://github.com/delta-io/delta-kernel-rs/pull/562
[#565]: https://github.com/delta-io/delta-kernel-rs/pull/565
[#568]: https://github.com/delta-io/delta-kernel-rs/pull/568
[#579]: https://github.com/delta-io/delta-kernel-rs/pull/579
[#580]: https://github.com/delta-io/delta-kernel-rs/pull/580
[#588]: https://github.com/delta-io/delta-kernel-rs/pull/588
[#589]: https://github.com/delta-io/delta-kernel-rs/pull/589
[#591]: https://github.com/delta-io/delta-kernel-rs/pull/591
[#596]: https://github.com/delta-io/delta-kernel-rs/pull/596
[#597]: https://github.com/delta-io/delta-kernel-rs/pull/597


## [v0.5.0](https://github.com/delta-io/delta-kernel-rs/tree/v0.5.0/) (2024-11-26)
Expand Down
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ license = "Apache-2.0"
repository = "https://github.com/delta-io/delta-kernel-rs"
readme = "README.md"
rust-version = "1.80"
version = "0.5.0"
version = "0.6.0"

[workspace.dependencies]
arrow = { version = ">=53, <54" }
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,10 @@ consumer's own `Engine` trait, the kernel has a feature flag to enable a default
```toml
# fewer dependencies, requires consumer to implement Engine trait.
# allows consumers to implement their own in-memory format
delta_kernel = "0.5"
delta_kernel = "0.6"

# or turn on the default engine, based on arrow
delta_kernel = { version = "0.5", features = ["default-engine"] }
delta_kernel = { version = "0.6", features = ["default-engine"] }
```

### Feature flags
Expand Down
2 changes: 1 addition & 1 deletion ffi/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ url = "2"
delta_kernel = { path = "../kernel", default-features = false, features = [
"developer-visibility",
] }
delta_kernel_ffi_macros = { path = "../ffi-proc-macros", version = "0.5.0" }
delta_kernel_ffi_macros = { path = "../ffi-proc-macros", version = "0.6.0" }

# used if we use the default engine to be able to move arrow data into the c-ffi format
arrow-schema = { version = "53.0", default-features = false, features = [
Expand Down
2 changes: 1 addition & 1 deletion kernel/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ uuid = "1.10.0"
z85 = "3.0.5"

# bring in our derive macros
delta_kernel_derive = { path = "../derive-macros", version = "0.5.0" }
delta_kernel_derive = { path = "../derive-macros", version = "0.6.0" }

# used for developer-visibility
visibility = "0.1.1"
Expand Down

0 comments on commit ae841ea

Please sign in to comment.