This repository contains some scripting and base data to build a database that can answer questions like
- Which version of Neo4j Database is still in support and which Driver version is recommended for this database or compatible with it?
- A complete list of available releases of the Neo4j Java Driver and what servers they support
- A complete list of combinations of Spring Boot, Spring Data Neo4j (SDN, Neo4j-OGM (if applicable) and the Neo4j Java Driver they shipped with
- Support status for Spring Boot and SDN versions as communicated by Broadcom.
All data files reside in data
.
Those files are manually maintained and contain static information:
t_driver_java_matrix.csv
- Minimum required Java version for releases of the Neo4j Java Driver, sourced by going through the corresponding tags of the readme
t_driver_server_matrix.csv
- List of drivers and the server versions that they support, sourced from https://github.com/neo4j/neo4j-java-driver/wiki
t_driver_support_matrix.csv
- List of supported driver versions, conversations and common sense
t_neo4j_versions.csv
- All Neo4j versions and their support dates. End of support for the 5.x series is always
null
, as the release of the next version ends support of the previous. From https://neo4j.com/developer/kb/neo4j-supported-versions/ t_ogm_support_matrix.csv
- The status of OGM support
t_spring_boot_java_matrix.csv
- Minimum required Java version for various Spring Boot releases, sourced by going through the corresponding manuals
Those files are generated via export_database.sh
and contain the following information:
v_java_driver_versions.csv
- The full list of all released versions of the Java driver, server_versions is a nested attribute, containing a list of supported servers.
v_neo4j_driver_support_matrix.csv
- Neo4j and driver support matrix
v_neo4j_ogm_support_matrix.csv
- The list of Neo4j-OGM releases, their minimum required and maximum supported Java driver and the server version they can connect to
v_neo4j_versions.csv
- All known Neo4j versions
v_sdn_versions.csv
- The list of all combinations of Spring Boot and SDN versions and whether they are supported in either an OSS or commercially way.
v_sdn_versions_with_commercial_support.csv
- The list of all combinations of Spring Boot and SDN versions that are still supported under a commercial Broadcom license.
v_sdn_versions_with_oss_support.csv
- The list of all combinations of Spring Boot and SDN versions that are still OSS supported.
v_supported_java_driver_versions.csv
- All supported driver versions
- DuckDB >= 1.1
- Java >= 17
- Apache Maven >= 3.9
- xidel
- A shell that supports
sed
andcompgen
All scripts are idempotent and can be safely run multiple times. First create an empty database:
./bin/create_or_update_database.sh test.duckdb
Then populate it. The first run will take some time, as we grab data from Maven central and actually create some Java projects to have the actual shipped dependencies with Spring Boot and Neo4j-OGM projects:
./bin/import_and_update.sh test.duckdb