|
1 | 1 | # Changelog |
2 | 2 |
|
3 | | -## [v0.27.0](https://github.com/delta-io/delta-kernel-rs/tree/v0.27.0/) (2026-08-12) |
4 | 3 |
|
5 | | -[Full Changelog](https://github.com/delta-io/delta-kernel-rs/compare/v0.26.0...v0.27.0) |
| 4 | +## [v0.27.1](https://github.com/delta-io/delta-kernel-rs/tree/v0.27.1/) (2026-08-14) |
| 5 | + |
| 6 | +[Full Changelog](https://github.com/delta-io/delta-kernel-rs/compare/v0.26.0...v0.27.1) |
6 | 7 |
|
7 | 8 |
|
8 | 9 | ### 🏗️ Breaking changes |
|
49 | 50 | protocol/metadata loads), and `crc_versions_behind` goes from a bool to a count. None are |
50 | 51 | `#[non_exhaustive]`, so code that constructs or exhaustively matches them needs updating. |
51 | 52 | `LogSegmentLoad` and `ProtocolMetadataLoad` now fire on incremental loads too, not just fresh. |
| 53 | +11. Derive `Scalar` from POD structs; infallible `Vec`/`HashMap` conversions ([#3095]) |
| 54 | + - Converting a `Vec` or `HashMap` into `Scalar::Array` / `Scalar::Map` is now infallible (it used to |
| 55 | + return a `Result`), so drop the `?`/`unwrap` at those call sites. Also adds a proc macro that |
| 56 | + derives `From<MyStruct> for Scalar`. |
| 57 | +12. Derive macro for populating a struct from a `Scalar` ([#3101]) |
| 58 | + - `StructData::into_values` is replaced by `StructData::into_parts`, which also returns field info, so |
| 59 | + update callers to `into_parts`. Adds a derive macro for `TryFrom<Scalar>`, round-tripping a struct |
| 60 | + through `Scalar`. |
52 | 61 |
|
53 | 62 | ### 🚀 Features / new APIs |
54 | 63 |
|
|
110 | 119 | 56. 3-arg Min/MaxNotNullBy ([#3082]) |
111 | 120 | 57. Define and implement SUM/COUNT aggregates ([#3083]) |
112 | 121 | 58. Initial predicate conversion ([#2971]) |
| 122 | +59. Typed Struct and StructPatch expression conversion ([#2972]) |
| 123 | +60. Convert MapToStruct expressions to DataFusion ([#2996]) |
| 124 | +61. Lower ParseJson to a kernel-delegating scalar UDF ([#3056]) |
| 125 | +62. Validate required fields for dv update ([#3026]) |
113 | 126 |
|
114 | 127 | ### 🐛 Bug Fixes |
115 | 128 |
|
|
134 | 147 | 19. Remove version from kernel in datafusion executor ([#3108]) |
135 | 148 | 20. Logical comparison for NULL instead of physical comparison ([#3085]) |
136 | 149 | 21. Read tables with orphaned columnMapping reader feature ([#3097]) |
| 150 | +22. Spurious delta acceptance failure due to network connection issues ([#3109]) |
| 151 | +23. Fix default-feature build (import CollectInto from crate::utils) ([#3123]) |
137 | 152 |
|
138 | 153 | ### 📚 Documentation |
139 | 154 |
|
|
158 | 173 | 6. Extract unit test utils from `kernel/src/utils.rs` ([#3018]) |
159 | 174 | 7. Move plan construction to `Scan` ([#3039]) |
160 | 175 |
|
| 176 | +### 🧪 Testing |
| 177 | + |
| 178 | +1. Strengthen scan metadata struct columns coverage ([#3053]) |
| 179 | + |
161 | 180 | ### ⚙️ Chores/CI |
162 | 181 |
|
163 | 182 | 1. Split no-declarative-plans tests into a parallel job ([#3038]) |
164 | 183 | 2. Scaffold datafusion-executor crate ([#2928]) |
165 | 184 | 3. Version the UC crates independently at 0.1.0 ([#3062]) |
166 | 185 | 4. Use col! instead of column_expr! ([#3074]) |
| 186 | +5. Use col and col_name macros everywhere they make sense ([#3121]) |
167 | 187 |
|
168 | 188 |
|
169 | 189 | [#2860]: https://github.com/delta-io/delta-kernel-rs/pull/2860 |
|
274 | 294 | [#3108]: https://github.com/delta-io/delta-kernel-rs/pull/3108 |
275 | 295 | [#3085]: https://github.com/delta-io/delta-kernel-rs/pull/3085 |
276 | 296 | [#3097]: https://github.com/delta-io/delta-kernel-rs/pull/3097 |
| 297 | +[#3095]: https://github.com/delta-io/delta-kernel-rs/pull/3095 |
| 298 | +[#3101]: https://github.com/delta-io/delta-kernel-rs/pull/3101 |
| 299 | +[#2972]: https://github.com/delta-io/delta-kernel-rs/pull/2972 |
| 300 | +[#2996]: https://github.com/delta-io/delta-kernel-rs/pull/2996 |
| 301 | +[#3056]: https://github.com/delta-io/delta-kernel-rs/pull/3056 |
| 302 | +[#3026]: https://github.com/delta-io/delta-kernel-rs/pull/3026 |
| 303 | +[#3109]: https://github.com/delta-io/delta-kernel-rs/pull/3109 |
| 304 | +[#3053]: https://github.com/delta-io/delta-kernel-rs/pull/3053 |
| 305 | +[#3121]: https://github.com/delta-io/delta-kernel-rs/pull/3121 |
| 306 | +[#3123]: https://github.com/delta-io/delta-kernel-rs/pull/3123 |
277 | 307 |
|
278 | 308 |
|
279 | 309 | ## [v0.26.0](https://github.com/delta-io/delta-kernel-rs/tree/v0.26.0/) (2026-07-13) |
|
0 commit comments