Repository navigation
Drivine 0.4.1 - #63
Merged
Merged
Conversation
Moves drivine4j-spring-boot-starter and the codegen subproject's drivineVersion from 0.4.0 to 0.4.1. 0.4.1 links with code built on 0.4.0, so embabel-agent-rag-graph and embabel-chat-store snapshots built on 0.4.0 run on it unchanged.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #62
Moves Drivine from 0.4.0 to 0.4.1 (Drivine 2026.11):
pom.xml:drivine4j-spring-boot-starter0.4.0 to 0.4.1. The pin comment now says 0.4.1 is a drop-in for code built on 0.4.0, and the Jackson comment names 0.4.1 (its Jackson BOM is still 2.19.2).codegen-gradle/build.gradle.kts:drivineVersion0.4.0 to 0.4.1.The issue asks to move in step with embabel-agent-rag-graph and embabel-chat-store. That isn't needed: their current snapshots, built on 0.4.0, link with 0.4.1 (below), so this can merge before or after they move.
Binary compatibility (0.4.0 to 0.4.1)
Checked against the released jars on Maven Central.
drivine4j-spring,drivine4j-spring-boot-starter,drivine4j-codegen,drivine4j-codegen-javaanddrivine4j-coroutinesare byte-identical between 0.4.0 and 0.4.1.drivine4j-codegen-modeldiffers only in its version properties file. Their poms differ only in the version.drivine4j, a descriptor-leveljavap -protected -sdiff finds members removed or changed only in Drivine's internals: the SQL backends'*Predicatesconstructors,*RowSources.steps/OracleRowSources.reached,NodeWrites,WritePlan.patch,JdbcConnection's constructor (a new parameter), the Cypher AST'sClause.CallandValue.Json,Temporals.truncate,FragmentField,CypherGenerator.buildWhereClause(internal), and theIndexManagerconstructors (they now take aPersistenceManager).SqlCypherCompilergains an abstractlistOrder. The schema specs (UniquenessConstraintSpec,RangeIndexSpec,TextIndexSpec,VectorIndexSpec) keep every constructor andcopythey had, and addignoreCaseoverloads.@Unique,@RangeIndexand@TextIndexgainignoreCase()with a default.javap -von their snapshots built on 0.4.0 (the deploys of 2026-10-29) finds no reference to any removed member, and everyorg/drivinereference they make resolves in 0.4.1. The Drivine starter and codegen 0.4.0 jars make no such reference either.So 0.4.1 is a drop-in for code built on 0.4.0, and each project can move on its own.
Built and tested
./mvnw -B -U compile test-compile: passes, with KSP codegen on 0.4.1.dependency:treeshows only 0.4.1 Drivine artifacts../mvnw -B -U test(CI's test step, with Testcontainers): 183 tests, 0 failures, 0 errors, 0 skipped.randomUUID()(Make randomUUID() Oracle's UUID() and need Oracle 23.9, so a stamp's token doesn't come round again liberation-data/drivine4j#402, which needs Oracle 23.9) or on the stricter kind checks (Refuse a value of a known kind where an operator or a function takes another, as Neo4j does liberation-data/drivine4j#448).