Skip to content

Commit 7dc82a3

Browse files
dfa1claude
andcommitted
docs(changelog): add [0.9.0] section
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 9d3af3c commit 7dc82a3

1 file changed

Lines changed: 6 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,22 @@ All notable changes to **vortex-java** are documented here.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## [Unreleased]
8+
## [0.9.0] — 2026-06-24
99

10-
Vortex now ships with **no FlatBuffers or Protobuf runtime dependency**: the `.fbs` and `.proto` schemas are compiled in-house to `MemorySegment`-native Java. This drops `com.google.flatbuffers:flatbuffers-java` — the last automatic-module dependency — unblocking a named JPMS module, and the generated wire classes are prefixed so they no longer collide on your classpath (ADR 0017).
10+
Two import-only breaking changes — the `vortex-core` types moved under `io.github.dfa1.vortex.core.*`, and the no-arg `DType` factories became constants. In return, Vortex now ships with **no FlatBuffers or Protobuf runtime dependency**: the `.fbs`/`.proto` schemas compile in-house to `MemorySegment`-native Java, dropping `com.google.flatbuffers:flatbuffers-java` — the last automatic-module dependency — so a named JPMS `module-info` is viable, and the generated wire classes are prefixed so they no longer collide on your classpath (ADR 0017).
1111

1212
### Added
1313

14-
- Canonical non-nullable `DType` constants: primitives `DType.I8``DType.I64`, `DType.U8``DType.U64`, `DType.F16`/`F32`/`F64`, plus `DType.BOOL`, `DType.UTF8`, `DType.BINARY`, `DType.NULL`, `DType.VARIANT`. Shared immutable instances — prefer them over `new DType.Primitive(pt, false)` / `new DType.Utf8(false)` etc.; build a nullable column with `DType.I64.asNullable()`.
14+
- Canonical non-nullable `DType` constants: `DType.I8``I64`, `U8``U64`, `F16`/`F32`/`F64`, plus `BOOL`, `UTF8`, `BINARY`, `NULL`, `VARIANT`; build a nullable column with `DType.I64.asNullable()`. ([f4b22e42](https://github.com/dfa1/vortex-java/commit/f4b22e42))
1515

1616
### Changed
1717

18-
- **Breaking:** every `vortex-core` type now lives under `io.github.dfa1.vortex.core.*``core.model` (`DType`, `PType`, `TimeUnit`, `EncodingId`, `ExtensionId`, `TimeDtype`, `TimestampDtype`), `core.io` (`IoBounds`, `PTypeIO`, `VortexFormat`), `core.error` (`VortexException`), `core.compute` (`FastLanes`, `PrimitiveArrays`), and `core.fbs` / `core.proto` for the wire codecs. Update imports accordingly (e.g. `io.github.dfa1.vortex.core.DType``io.github.dfa1.vortex.core.model.DType`).
19-
- Removed the `com.google.flatbuffers:flatbuffers-java` runtime dependency. The `.fbs`/`.proto` schemas are now compiled in-house to `MemorySegment`-native Java, dropping the last automatic-module dependency so a named JPMS `module-info` is viable (ADR 0017).
20-
- Generated FlatBuffers/Protobuf wire classes are prefixed `Fbs*`/`Proto*`, so the generic type names (`Array`, `Buffer`, `DType`, `Null`, …) no longer collide on the consumer classpath.
18+
- **Breaking (imports):** every `vortex-core` type moved under `io.github.dfa1.vortex.core.*``core.model` (`DType`, `PType`, `TimeUnit`, `EncodingId`, `ExtensionId`, `Time*Dtype`), `core.io` (`IoBounds`, `PTypeIO`, `VortexFormat`), `core.error` (`VortexException`), `core.compute` (`FastLanes`, `PrimitiveArrays`), `core.fbs`/`core.proto` (wire codecs). E.g. `io.github.dfa1.vortex.core.DType``io.github.dfa1.vortex.core.model.DType`. ([52f30c16](https://github.com/dfa1/vortex-java/commit/52f30c16))
19+
- Dropped the `com.google.flatbuffers:flatbuffers-java` runtime dependency; the `.fbs`/`.proto` schemas compile in-house to `MemorySegment`-native Java, and the generated wire classes are prefixed `Fbs*`/`Proto*` so the generic names (`Array`, `Buffer`, `DType`, …) no longer collide on your classpath (ADR 0017). ([5907302e](https://github.com/dfa1/vortex-java/commit/5907302e))
2120

2221
### Removed
2322

24-
- **Breaking (minor):** the no-arg factory methods `DType.i8()``DType.f64()`, `DType.bool_()`, `DType.utf8()`, `DType.binary()`, `DType.null_()`, `DType.variant()` are replaced by the constants above (`DType.i64()``DType.I64`, `DType.utf8()``DType.UTF8`). The `DType.decimal(..)`/`DType.structBuilder()` factories and the record constructors are unchanged.
23+
- **Breaking (imports):** the no-arg `DType` factories (`DType.i64()`, `DType.utf8()`, …) — use the constants above (`DType.i64()``DType.I64`). `DType.decimal(..)`/`DType.structBuilder()` and the record constructors are unchanged. ([f4b22e42](https://github.com/dfa1/vortex-java/commit/f4b22e42))
2524

2625
## [0.8.3] — 2026-06-23
2726

0 commit comments

Comments
 (0)