github / release-radar

Repo for submission of projects to consider for the GitHub Release Radar 📡
https://releaseradar.github.com
Creative Commons Zero v1.0 Universal
295 stars 23 forks source link

[Release Radar Request] Neo4j-Migrations v2 #141

Closed michael-simons closed 1 year ago

michael-simons commented 1 year ago

Open Source Project name

neo4j-migrations

What is your project?

Neo4j-Migrations is a database refactoring tool for Neo4j. It takes care of managing Cypher scripts by checksumming them and applying them in a controlled fashion, including pre-conditions and repeatable migrations. In addition it contains a set of predefined refactoring such as renaming a set of labels or types and changing relationships.

It comes as a standalone API, as CLI and as a plugin for major Java frameworks such as Spring Boot or Quarkus. The CLI does not need to have JVM installed, it is build with GraalVM and available as native executable for various operation systems and architectures:

cli-demo

Here's the main author of the project giving a presentation of the project at Neo4j's Nodes2022 conference: https://www.youtube.com/watch?v=5-j0xiVAeoM

Version

2.0

Date

2022-12-05

Description of breaking changes

The 2.0 release is now build on Java 17. Previous baseline was Java 8, but Java 8's time is coming to an end, at least in non-commercial settings.

This allows us to support Spring Boot 3 (released in November 2022, also on Java 17) and make use of the latest Java-Driver for Neo4j which also requires Java 17. Apart from that, the GraalVM, an Oracle Labs project we are using to produce native binaries, stopped supporting Java 8 a while back and we have been stuck on an old version ever since.

In addition, our code base got smaller because we don't do multi-release jars anymore and we can of course benefit from all the new features since Java 8, such as text blocks, records, switch statements and the like.

GitHub Repo

https://github.com/michael-simons/neo4j-migrations

Website

https://neo4j.com/labs/neo4j-migrations/2.0/introduction/

Link to changelog

https://github.com/michael-simons/neo4j-migrations/releases/tag/2.0.0

Social media

https://twitter.com/rotnroll666/status/1599775753360396288

Anything else to add?

The project uses rather strict semantic versioning. On the one hand, we try to not break our users ever without a proper warning and on the other hand, try to support as many Neo4j major versions as possible without our users ever noticing that we adapt behind the scenes.

adriens commented 1 year ago

Big release :muscle:

mishmanners commented 1 year ago

Congrats on being featured in the Dec/Jan Festive Release Radar 🥳

adriens commented 1 year ago

:clap:

michael-simons commented 1 year ago

Wow. Thank you. 🙇‍♂️