Skip to content

Releases: neo4j/neo4j-jdbc

6.4.0

05 May 13:36
Compare
Choose a tag to compare

What's Changed

(Note: Publishing SBOMs failed, but they can be created and will be in the next release)

🚀 Features

  • 38dae9f feat: Provide access to GQL Status objects.
  • b72778b feat: Propagate GQL error codes as SQL state. (#932)
  • d631b45 feat: Generate and attach CycloneDX SBOMs for all relevant artifacts. (#931)
  • bbd7f29 feat: Add support for java.sql.Array.

🐛 Bug Fixes

  • 47032b6 fix: Neo4j FLOAT is a SQL Double, INTEGER is BIGINT.

🔄️ Refactorings

  • d2f03d9 refactor: Polish some JavaDocs, deprecate methods and fields that should never have been public.

🧹 Housekeeping

  • b0011ef Bump org.jooq:jooq from 3.19.22 to 3.19.23 (#936)
  • 8735bbd Bump com.opencsv:opencsv from 5.10 to 5.11 (#938)
  • 7b977c1 Bump org.jreleaser:jreleaser-maven-plugin (#937)
  • bbd328f Bump quarkus.platform.version from 3.21.4 to 3.22.1 (#935)
  • ba830c7 Bump org.jdbi:jdbi3-bom from 3.49.2 to 3.49.3 (#934)
  • 104261a Bump org.openapitools:openapi-generator-maven-plugin (#929)
  • a5e13b5 Bump org.jdbi:jdbi3-bom from 3.49.0 to 3.49.2 (#927)
  • dad329b Bump org.testcontainers:testcontainers-bom (#926)
  • dc44d00 Bump quarkus.platform.version from 3.21.2 to 3.21.4 (#925)
  • 35d5103 Bump spring-boot.version from 3.4.4 to 3.4.5 (#924)
  • 2b4d929 Bump io.micrometer:micrometer-tracing-bom (#922)
  • 28d0206 Bump org.neo4j.bolt:neo4j-bolt-connection-bom (#930)

6.3.1

16 Apr 15:57
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • 57c0045 fix: Remove superflous config in test.
  • 8648243 fix: typo in docs (Dashß -> Dash0) (#911)

🔄️ Refactorings

  • fe529de refactor: Avoid logging about the available more than once in the same class loader.

🧹 Housekeeping

  • 5b3041a Bump org.junit:junit-bom from 5.12.1 to 5.12.2 (#919)
  • 3233cf2 Bump org.mockito:mockito-bom from 5.16.1 to 5.17.0 (#916)
  • 80d3199 Bump io.fabric8:docker-maven-plugin from 0.45.1 to 0.46.0 (#918)
  • 3ccbf62 Bump quarkus.platform.version from 3.21.0 to 3.21.2 (#917)
  • 1101e4b Bump io.micrometer:micrometer-bom from 1.14.5 to 1.14.6 (#915)

🛠 Build

  • 4a64753 build: Use specific commits for none enterprise actions. (#920)
  • c7cc502 build: Test against Java 24. (#912)

6.3.0

07 Apr 10:42
Compare
Choose a tag to compare

What's Changed

This is big feature release including support for both Metrics and Tracing.
Metrics will be enabled automatically if you use the Neo4j JDBC Driver within an application that has Micrometer on the class path.

Tracing can be enabled via the Neo4jDataSource and putting Micrometer Tracing on the class path and choosing a registry and reporter that fits your needs. We tested both the Zipkin Brave registry with Zipkin, and the OpenTelemetry registry together with the Otel sender against Dash0.

Please read our docs how to configure this: Configuring tracing for the JDBC driver.

🚀 Features

  • 2025829 feat: Add support for tracing. (#904)
  • 74466d8 feat: Allow the full URL to be configured on the datasource.
  • e00bdae feat: Add events and metrics to the driver. (#895)

🧹 Housekeeping

  • 6c71310 Bump org.jooq:jooq from 3.19.21 to 3.19.22 (#909)
  • 07bc0c4 Bump org.neo4j:cypher-v5-antlr-parser from 5.26.4 to 5.26.5 (#908)
  • 87ab869 Bump org.jacoco:jacoco-maven-plugin from 0.8.12 to 0.8.13 (#907)
  • 6c99932 Bump org.hibernate.orm:hibernate-platform (#906)
  • 3a74dce Bump org.sonarsource.scanner.maven:sonar-maven-plugin (#902)
  • 21ebae1 Bump org.apache.maven.plugins:maven-failsafe-plugin (#901)
  • 9da5b81 Bump org.jdbi:jdbi3-bom from 3.48.0 to 3.49.0 (#900)
  • 608578b Bump org.apache.maven.plugins:maven-surefire-plugin (#899)
  • 2ee1c4e Bump quarkus.platform.version from 3.19.4 to 3.21.0 (#898)

6.2.1

24 Mar 15:14
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • 99b78bf fix: SQL processing attempt must be made before transaction acquisition.

🔄️ Refactorings

  • 86a67c5 refactor: Make sure all bolt connections are closed during abort, too.
  • e20469e refactor: Restrict the output of dbms.components() to 'Neo4j Kernel'.
  • 26dc5e3 refactor: Clear out bolt-connection for database metadata on close.

🧹 Housekeeping

  • 859c255 Bump org.neo4j.bolt:neo4j-bolt-connection-bom to 1.1.1
  • 780b89a Bump org.neo4j:neo4j-cypher-dsl-bom (#894)
  • c0e5e2f Bump quarkus.platform.version from 3.19.3 to 3.19.4 (#893)
  • b9afe9e Bump org.asciidoctor:asciidoctor-maven-plugin (#892)
  • 1f0c1d1 Bump org.jetbrains.kotlin:kotlin-stdlib-jdk8 (#891)
  • e8669cf Bump org.neo4j.bolt:neo4j-bolt-connection-bom (#890)
  • 39ec25d Bump spring-boot.version from 3.4.3 to 3.4.4 (#889)
  • 209538f Bump com.mycila:license-maven-plugin from 4.6 to 5.0.0 (#888)
  • 221654b Bump org.junit:junit-bom from 5.12.0 to 5.12.1 (#887)
  • 0758b9c Bump org.mockito:mockito-bom from 5.16.0 to 5.16.1 (#886)
  • b4b6398 Bump quarkus.platform.version from 3.19.2 to 3.19.3 (#885)
  • 1c43629 Bump org.graalvm.buildtools:native-maven-plugin (#884)
  • 9209dbf Bump org.hibernate.orm:hibernate-platform (#883)
  • 3e650b7 Bump org.jooq:jooq from 3.19.20 to 3.19.21 (#882)
  • 85b8318 Bump org.neo4j:cypher-v5-antlr-parser from 5.26.3 to 5.26.4 (#881)

🛠 Build

  • c1beca4 build: Add a Lazy-test.
  • b5aadb5 test: Use Neo4jContainer.getHost() in ITs instead of localhost (#880)
  • 629e287 build: Update license-maven-plugin configuration to include full path to license.tpl. (#878)
  • 410513d Update exec-maven-plugin configuration to include full path (#879)

6.2.0

14 Mar 09:23
Compare
Choose a tag to compare

What's Changed

This is quite a big release, as from 6.2.0 onwards both the Neo4j JDBC Driver and the Neo4j Java driver will use the exact same network stack, so both drivers will equally benefit from enhancements there.

Tip

This minor release bump is fully API compatible with 6.1.5, we bumped the version for the following reasons:

The SQL Translator now aliases projected column in such a way that they can be retrieved like they have been originally project:
SELECT title FROM Movie will now be translated into MATCH (movie:Movie) RETURN movie.title AS title
This is in line with the asterisk projection, too, but only available if there's only one relation in the FROM clause.

The ResultSet implementation is more lenient when being asked for String values and follows the JDBC spec that
will just use the Java representation of a non-string projection.

The Connection implementation is more lenient on commit and rollback, so that these operations are idempotent in case
there is no ongoing transaction or a transaction that is either already committed or rolled back.

🐛 Bug Fixes

🔄️ Refactorings

  • b1db4b2 refactor: Try to convert strings to integers and floats if possible.
  • c7ee637 refactor: Try to use Java toString representation on non-string results when using getString().
  • e06311f refactor(translator): Use AS to give results same name if there’s a single source table and no qualified names are expected.
  • 0d27cd4 refactor(metadata): Use separate (bolt) connection for metadata.
  • c9bb99c refactor(metadata): Improve transaction handling in metadata. (#877)
  • 0306bf1 refactor: Replace custom bolt stack with shared bolt connection module. (#832)

📝 Documentation

  • 27b6734 docs: Update local changelog.

🧹 Housekeeping

  • 60b9604 Bump org.testcontainers:testcontainers-bom (#875)
  • a1fa305 Bump quarkus.platform.version from 3.19.1 to 3.19.2 (#874)
  • 9da051b Bump org.mockito:mockito-bom from 5.15.2 to 5.16.0 (#873)
  • e00d760 Bump org.apache.maven.plugins:maven-install-plugin (#872)
  • 5bb8953 Bump org.hibernate.orm:hibernate-platform (#871)
  • 7842b2a Bump com.puppycrawl.tools:checkstyle (#870)

6.1.5

07 Mar 10:19
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • c36ae21 fix(build): Add another way to spell MIT license to the license check.
  • bc5e0de fix: Make driver more resilient agains already existing attribute keys for Netty channels. (#869)

🔄️ Refactorings

  • 0e1882e refactor: Support row movement as much as possible in the ResultSetImpl and throw the appropriate exception otherwise.
  • 0de6261 refactor: Trace usage of all result set interface methods.
  • d3184c9 refactor: Trace usage of all callable statement interface methods.
  • 9357d4e refactor: Trace usage of all prepared statement interface methods.
  • f7e05d7 refactor: Trace usage of all statement interface methods.
  • 0c9743a refactor: Trace usage of all connection interface methods.

📝 Documentation

  • ffb06b2 docs: Add issue template.
  • db3e3f0 docs: Document logging configuration.
  • cdd1351 docs: Point GitHub pages always to the offical Neo4j manual.

🧹 Housekeeping

  • 8aaaeb3 Bump quarkus.platform.version from 3.18.4 to 3.19.1 (#862)
  • f7aca53 Bump org.codehaus.mojo:flatten-maven-plugin (#868)
  • 4a1c289 Bump org.neo4j:cypher-v5-antlr-parser from 5.26.2 to 5.26.3 (#867)
  • f9cfe1b Bump org.apache.maven.plugins:maven-deploy-plugin (#865)
  • 013e29e Bump org.neo4j:neo4j-cypher-dsl-bom (#864)
  • 050c220 Bump slf4j.version from 2.0.16 to 2.0.17 (#863)
  • 16ea18e Bump org.openapitools:openapi-generator-maven-plugin (#861)
  • 48e0863 Bump org.jreleaser:jreleaser-maven-plugin (#860)
  • 9b4842e Bump io.netty:netty-bom from 4.1.118.Final to 4.1.119.Final (#859)

6.1.4

24 Feb 09:53
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • e9d87c2 fix: Remove tests for unsupported features that are now supported.

🔄️ Refactorings

  • 1daa556 refactor(metadata): More work on adding support for JDBC / SQL features.
  • 2678d37 refactor: Replace several more unnessary usages of SQLFeatureNotSupportedException.

🧹 Housekeeping

  • 3df0055 Bump org.jooq:jooq from 3.19.18 to 3.19.20 (#858)
  • 70ff7b0 Bump spring-boot.version from 3.4.2 to 3.4.3 (#857)
  • 6e89852 Bump quarkus.platform.version from 3.18.3 to 3.18.4 (#856)
  • f068a19 Bump org.apache.maven.plugins:maven-compiler-plugin (#855)
  • ce60c12 Bump org.hibernate.orm:hibernate-platform (#854)
  • ff850fc Bump com.puppycrawl.tools:checkstyle (#853)
  • d7df38d Bump io.github.cdimascio:dotenv-java from 3.1.0 to 3.2.0 (#852)
  • 745c67b Bump org.junit:junit-bom from 5.11.4 to 5.12.0 (#851)
  • edbca02 Bump org.testcontainers:testcontainers-bom (#850)

6.1.3

17 Feb 11:54
Compare
Choose a tag to compare

What's Changed

🚀 Features

  • a42da59 feat(metadata): Cache the result of getTables per metadata instance as it is used during columns computations, too.
  • 2de971b feat(metadata): Use apoc.meta.schema if available for computing tables and relationships.
  • 404bd0f feat(metadata): Make sampling size for relationships configurable.

🐛 Bug Fixes

  • 93abb1a fix(test): Disable reflection based test in native image. (#844)
  • 3bb7ab7 fix(build): The default of structuredMessage is false.

🔄️ Refactorings

  • de2b3d3 refactor(meta): Sanitize sampling size and ensure it works for both apoc and Cypher solutions.

🧹 Housekeeping

  • 080ce04 Bump quarkus.platform.version from 3.18.2 to 3.18.3 (#849)
  • 14ee32f Bump org.hibernate.orm:hibernate-platform (#848)
  • c0ccfad Bump org.neo4j:neo4j-cypher-dsl-bom (#847)
  • 08c1b3d build(deps-dev): Bump com.tngtech.archunit:archunit from 1.3.0 to 1.4.0 (#846)
  • d7aefaf Bump org.jdbi:jdbi3-bom from 3.47.0 to 3.48.0 (#845)

🛠 Build

  • 3a03ce1 build: Use default values for announcer.
  • 34e7cad build: Exclude shaded dependencies from semver check.
  • b8523fb build: Enable announcer on release only.

6.1.2

12 Feb 12:39
Compare
Choose a tag to compare

What's Changed

🚀 Features

  • ce3e888 feat: Avoid throwing any SQLFeatureNotSupportedException from DatabaseMetaData.
  • dacb98f feat: Add support for isReadOnly in database metadata.
  • bbcb487 feat: Add support for getURL in database metadata.
  • d42f893 feat: Provide proper schema and catalog names from within ResultSetMetaData.
  • b0416d8 feat(translator): Provide a module containing a translator aiming specifically at Spark generated queries.

🔄️ Refactorings

  • 69ee1a3 refactor: Use constants for metadata column names.
  • 2fc53c4 refactor: Address some overly complex methods. (#843)
  • b1e3435 refactor(translator): Optimize LIKE queries to not always use =~.
  • 0a691b2 refactor: Allow translator factories to return null to indicate that no translator has been created.

🧹 Housekeeping

  • b8bc487 Bump io.netty:netty-bom from 4.1.117.Final to 4.1.118.Final
  • 175b19d Bump quarkus.platform.version from 3.18.1 to 3.18.2 (#842)
  • 7b4189f Bump org.graalvm.buildtools:native-maven-plugin (#841)
  • 7112adb Bump org.neo4j:cypher-v5-antlr-parser from 5.26.1 to 5.26.2 (#840)
  • f39448b Bump org.jetbrains.kotlin:kotlin-stdlib-jdk8 (#839)
  • 5c75faa Bump org.hibernate.orm:hibernate-platform (#838)
  • 896f02f Bump quarkus.platform.version from 3.17.8 to 3.18.1 (#837)
  • 32051be Bump com.puppycrawl.tools:checkstyle (#836)
  • a6b6686 Bump quarkus.platform.version from 3.17.7 to 3.17.8 (#835)
  • 1480297 Bump org.openapitools:openapi-generator-maven-plugin (#834)
  • bf9b12b Bump spring-boot.version from 3.4.1 to 3.4.2 (#833)
  • 03bc391 Bump org.hibernate.orm:hibernate-platform (#831)
  • 5fc86b8 Bump quarkus.platform.version from 3.17.6 to 3.17.7 (#830)
  • 1d7b0d7 Bump org.assertj:assertj-core from 3.27.2 to 3.27.3 (#828)
  • ac32b32 Bump io.netty:netty-bom from 4.1.116.Final to 4.1.117.Final (#827)
  • 789a95f Bump org.jooq:jooq from 3.19.17 to 3.19.18 (#829)
  • 96e0910 Bump cookie and express in /etc/antora (#825)

🛠 Build

  • ede26b1 build: Add release announcements.

6.1.1

13 Jan 10:11
Compare
Choose a tag to compare

What's Changed

🚀 Features

  • e98cab4 feat: Indicate that all open result sets will be closed when autocommit fails. [metadata]
  • 791e4f2 feat: Add app string to transactional metadata and unify with BoltAgent.
  • f1baf87 feat: Indicate in metadata which client info properties are supported. [metadata]
  • 9d179b1 feat: Add support for getTypeInfo. [metadata]
  • d6b2183 feat: Show all catalogs. [metadata]
  • 34bbb15 feat: In LIKE also translate _ to .. [translator].
  • 8b771b9 feat: Derive primary keys from unique constraints.

🐛 Bug Fixes

  • 46ef2c5 fix: Don’t swallow exception and don’t overwrite previous valid translation when a later translator fails.
  • d4ee5f1 fix: Allow matching on multiple patterns, check target nodes in relationships. [translator] (#819)
  • 245cd93 fix: Transaction must not jump back from committed to ready.
  • 7e02077 fix: Use correct target for elementId. [translator]

🔄️ Refactorings

  • b3e3a73 refactor: Still create a relationship pattern despite an expected empty result [translator]
  • 77e52f4 refactor: Align both overloads of getSchemas to support querying the schema and returning the current catalog.
  • 895d416 refactor: Rework catalog support.

📝 Documentation

  • 6e799ab docs: Add screenshot from 6.1.0 release notes.

🧰 Tasks

  • 1c1562b chore: Extend license header to 2025.

🧹 Housekeeping

  • 01b9528 Bump quarkus.platform.version from 3.17.5 to 3.17.6 (#824)
  • 9160d22 Bump org.jooq:jooq from 3.19.16 to 3.19.17 (#823)
  • d6abf3e Bump com.github.siom79.japicmp:japicmp-maven-plugin (#822)
  • 805f8bf Bump com.opencsv:opencsv from 5.9 to 5.10 (#821)
  • fcfb7d2 Bump org.hibernate.orm:hibernate-platform (#808)
  • 89169c7 Bump quarkus.platform.version from 3.17.4 to 3.17.5 (#809)
  • 2c1f2e6 Bump org.mockito:mockito-bom from 5.14.2 to 5.15.2 (#816)
  • 6cb0502 Bump org.jreleaser:jreleaser-maven-plugin (#817)
  • 76692f2 Bump org.assertj:assertj-core from 3.26.3 to 3.27.2 (#818)
  • 8f758aa Bump spring-boot.version from 3.4.0 to 3.4.1 (#812)
  • d1e2c56 Bump io.netty:netty-bom from 4.1.115.Final to 4.1.116.Final (#810)
  • cd90d65 Bump org.neo4j:neo4j-cypher-dsl-bom (#813)
  • 202c80e Bump com.puppycrawl.tools:checkstyle (#815)
  • 0220639 Bump org.junit:junit-bom from 5.11.3 to 5.11.4 (#807)
  • c8c4f1b Bump org.jooq:jooq from 3.19.15 to 3.19.16 (#806)
  • fea2623 Bump com.puppycrawl.tools:checkstyle (#805)
  • 0d263f0 Bump io.github.cdimascio:dotenv-java from 3.0.2 to 3.1.0 (#804)
  • fc18b14 Bump quarkus.platform.version from 3.17.3 to 3.17.4 (#803)
  • 41abb65 Bump neo4j-cypher-dsl.version from 2024.3.1 to 2024.3.2

🛠 Build

  • d53805b build: Allow the swagger generated stuff to compile with JDK23.