diff --git a/.github/workflows/tracking-orm-6.build.yml b/.github/workflows/tracking-orm-6.build.yml index b4252379b..9ed886386 100644 --- a/.github/workflows/tracking-orm-6.build.yml +++ b/.github/workflows/tracking-orm-6.build.yml @@ -1,6 +1,6 @@ # Run the build using the latest ORM 5.x snapshots # so that we can spot integration issues early -name: Latest ORM 6.x +name: Latest ORM 6.4 on: # Trigger the workflow on push or pull request, @@ -33,7 +33,7 @@ jobs: strategy: matrix: example: [ 'session-example', 'native-sql-example' ] - orm-version: [ '[6.2,6.3)' ] + orm-version: [ '[6.2,6.5)' ] db: ['MySQL', 'PostgreSQL'] exclude: # 'native-sql-example' doesn't run on MySQL because it has native queries @@ -43,7 +43,7 @@ jobs: # Label used to access the service container mysql: # Docker Hub image - image: mysql:8.0.33 + image: mysql:8.3.0 env: MYSQL_ROOT_PASSWORD: hreact MYSQL_DATABASE: hreact @@ -59,7 +59,7 @@ jobs: - 3306:3306 postgres: # Docker Hub image - image: postgres:15.2 + image: postgres:16.1 env: POSTGRES_DB: hreact POSTGRES_USER: hreact @@ -88,7 +88,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - orm-version: [ '[6.2,6.3)' ] + orm-version: [ '[6.2,6.5)' ] db: [ 'MariaDB', 'MySQL', 'PostgreSQL', 'DB2', 'CockroachDB', 'MSSQLServer', 'Oracle' ] steps: - uses: actions/checkout@v2 diff --git a/.github/workflows/tracking-vertx-4.build.yml b/.github/workflows/tracking-vertx-4.build.yml index d331d4411..edd571873 100644 --- a/.github/workflows/tracking-vertx-4.build.yml +++ b/.github/workflows/tracking-vertx-4.build.yml @@ -43,7 +43,7 @@ jobs: # Label used to access the service container mysql: # Docker Hub image - image: mysql:8.0.33 + image: mysql:8.3.0 env: MYSQL_ROOT_PASSWORD: hreact MYSQL_DATABASE: hreact @@ -59,7 +59,7 @@ jobs: - 3306:3306 postgres: # Docker Hub image - image: postgres:15.2 + image: postgres:16.1 env: POSTGRES_DB: hreact POSTGRES_USER: hreact diff --git a/README.md b/README.md index 60e062de6..38bfc1b2a 100644 --- a/README.md +++ b/README.md @@ -37,12 +37,12 @@ Hibernate Reactive has been tested with: - CockroachDB 22.1 - MS SQL Server 2019 - Oracle 21.3 -- [Hibernate ORM][] 6.4.2.Final -- [Vert.x Reactive PostgreSQL Client](https://vertx.io/docs/vertx-pg-client/java/) 4.5.1 -- [Vert.x Reactive MySQL Client](https://vertx.io/docs/vertx-mysql-client/java/) 4.5.1 -- [Vert.x Reactive Db2 Client](https://vertx.io/docs/vertx-db2-client/java/) 4.5.1 -- [Vert.x Reactive MS SQL Server Client](https://vertx.io/docs/vertx-mssql-client/java/) 4.5.1 -- [Vert.x Reactive Oracle Client](https://vertx.io/docs/vertx-oracle-client/java/) 4.5.1 +- [Hibernate ORM][] 6.4.3.Final +- [Vert.x Reactive PostgreSQL Client](https://vertx.io/docs/vertx-pg-client/java/) 4.5.2 +- [Vert.x Reactive MySQL Client](https://vertx.io/docs/vertx-mysql-client/java/) 4.5.2 +- [Vert.x Reactive Db2 Client](https://vertx.io/docs/vertx-db2-client/java/) 4.5.2 +- [Vert.x Reactive MS SQL Server Client](https://vertx.io/docs/vertx-mssql-client/java/) 4.5.2 +- [Vert.x Reactive Oracle Client](https://vertx.io/docs/vertx-oracle-client/java/) 4.5.2 - [Quarkus][Quarkus] via the Hibernate Reactive extension [PostgreSQL]: https://www.postgresql.org diff --git a/build.gradle b/build.gradle index 1f9bce0be..04b95b110 100644 --- a/build.gradle +++ b/build.gradle @@ -3,9 +3,9 @@ import java.util.regex.Pattern plugins { id 'java-library' id 'maven-publish' - id 'com.diffplug.spotless' version '6.18.0' + id 'com.diffplug.spotless' version '6.25.0' id 'nu.studer.credentials' version '3.0' - id 'org.asciidoctor.jvm.convert' version '3.3.2' apply false + id 'org.asciidoctor.jvm.convert' version '4.0.2' apply false id 'io.github.gradle-nexus.publish-plugin' version '1.3.0' } @@ -53,7 +53,7 @@ version = projectVersion // ./gradlew clean build -PhibernateOrmVersion=5.6.15-SNAPSHOT ext { if ( !project.hasProperty('hibernateOrmVersion') ) { - hibernateOrmVersion = '6.4.2.Final' + hibernateOrmVersion = '6.4.3.Final' } if ( !project.hasProperty( 'hibernateOrmGradlePluginVersion' ) ) { // Same as ORM as default @@ -83,10 +83,10 @@ ext { // Example: // ./gradlew build -PvertxSqlClientVersion=4.0.0-SNAPSHOT if ( !project.hasProperty( 'vertxSqlClientVersion' ) ) { - vertxSqlClientVersion = '4.5.1' + vertxSqlClientVersion = '4.5.2' } - testcontainersVersion = '1.18.3' + testcontainersVersion = '1.19.4' logger.lifecycle "Hibernate ORM Version: " + project.hibernateOrmVersion logger.lifecycle "Hibernate ORM Gradle plugin Version: " + project.hibernateOrmGradlePluginVersion diff --git a/gradle.properties b/gradle.properties index e6bc9462c..a049b271e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -47,9 +47,9 @@ org.gradle.java.installations.auto-download=false #skipOrmVersionParsing = true # Override default Vert.x Sql client version -#vertxSqlClientVersion = 4.5.1-SNAPSHOT +#vertxSqlClientVersion = 4.5.2-SNAPSHOT # Override default Vert.x Web client and server versions. For integration tests, both default to vertxSqlClientVersion -#vertxWebVersion = 4.5.1 -#vertxWebtClientVersion = 4.5.1 +#vertxWebVersion = 4.5.2 +#vertxWebtClientVersion = 4.5.2 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ac72c34e8..1af9e0930 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/hibernate-reactive-core/build.gradle b/hibernate-reactive-core/build.gradle index 3205129f0..0e00733ab 100644 --- a/hibernate-reactive-core/build.gradle +++ b/hibernate-reactive-core/build.gradle @@ -57,7 +57,7 @@ dependencies { testRuntimeOnly "com.mysql:mysql-connector-j:8.0.33" // JDBC driver for Db2 server, for testing - testRuntimeOnly "com.ibm.db2:jcc:11.5.8.0" + testRuntimeOnly "com.ibm.db2:jcc:11.5.9.0" // EHCache testRuntimeOnly ("org.ehcache:ehcache:3.10.0-alpha0") { diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/CockroachDBDatabase.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/CockroachDBDatabase.java index 3f80bbf96..ef8ef06ee 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/CockroachDBDatabase.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/CockroachDBDatabase.java @@ -25,7 +25,7 @@ class CockroachDBDatabase extends PostgreSQLDatabase { * TIP: To reuse the same containers across multiple runs, set `testcontainers.reuse.enable=true` in a file located * at `$HOME/.testcontainers.properties` (create the file if it does not exist). */ - public static final CockroachContainer cockroachDb = new CockroachContainer( imageName( "cockroachdb/cockroach", "v22.2.10" ) ) + public static final CockroachContainer cockroachDb = new CockroachContainer( imageName( "cockroachdb/cockroach", "v23.1.14" ) ) // Username, password and database are not supported by test container at the moment // Testcontainers will use a database named 'postgres' and the 'root' user .withReuse( true ); diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/DB2Database.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/DB2Database.java index d40e07305..46ebdefc2 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/DB2Database.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/DB2Database.java @@ -82,7 +82,7 @@ class DB2Database implements TestableDatabase { * TIP: To reuse the same containers across multiple runs, set `testcontainers.reuse.enable=true` in a file located * at `$HOME/.testcontainers.properties` (create the file if it does not exist). */ - static final Db2Container db2 = new Db2Container( imageName( "docker.io", "ibmcom/db2", "11.5.8.0" ) ) + static final Db2Container db2 = new Db2Container( imageName( "icr.io", "db2_community/db2", "11.5.9.0" ) ) .withUsername( DatabaseConfiguration.USERNAME ) .withPassword( DatabaseConfiguration.PASSWORD ) .withDatabaseName( DatabaseConfiguration.DB_NAME ) diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MariaDatabase.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MariaDatabase.java index 2a2c79ea7..46e2a0ad6 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MariaDatabase.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MariaDatabase.java @@ -21,7 +21,7 @@ class MariaDatabase extends MySQLDatabase { * TIP: To reuse the same containers across multiple runs, set `testcontainers.reuse.enable=true` in a file located * at `$HOME/.testcontainers.properties` (create the file if it does not exist). */ - public static final MariaDBContainer> maria = new MariaDBContainer<>( imageName( "mariadb", "10.11.3" ) ) + public static final MariaDBContainer> maria = new MariaDBContainer<>( imageName( "mariadb", "11.2.2" ) ) .withUsername( DatabaseConfiguration.USERNAME ) .withPassword( DatabaseConfiguration.PASSWORD ) .withDatabaseName( DatabaseConfiguration.DB_NAME ) diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MySQLDatabase.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MySQLDatabase.java index a8b3f0ed4..34aa54310 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MySQLDatabase.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/MySQLDatabase.java @@ -82,7 +82,7 @@ class MySQLDatabase implements TestableDatabase { * TIP: To reuse the same containers across multiple runs, set `testcontainers.reuse.enable=true` in a file located * at `$HOME/.testcontainers.properties` (create the file if it does not exist). */ - public static final MySQLContainer> mysql = new MySQLContainer<>( imageName( "mysql", "8.0.33") ) + public static final MySQLContainer> mysql = new MySQLContainer<>( imageName( "mysql", "8.3.0") ) .withUsername( DatabaseConfiguration.USERNAME ) .withPassword( DatabaseConfiguration.PASSWORD ) .withDatabaseName( DatabaseConfiguration.DB_NAME ) diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/PostgreSQLDatabase.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/PostgreSQLDatabase.java index b44163b77..f6babfd86 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/PostgreSQLDatabase.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/containers/PostgreSQLDatabase.java @@ -82,7 +82,7 @@ class PostgreSQLDatabase implements TestableDatabase { * TIP: To reuse the same containers across multiple runs, set `testcontainers.reuse.enable=true` in a file located * at `$HOME/.testcontainers.properties` (create the file if it does not exist). */ - public static final PostgreSQLContainer> postgresql = new PostgreSQLContainer<>( imageName( "postgres", "15.2" ) ) + public static final PostgreSQLContainer> postgresql = new PostgreSQLContainer<>( imageName( "postgres", "16.1" ) ) .withUsername( DatabaseConfiguration.USERNAME ) .withPassword( DatabaseConfiguration.PASSWORD ) .withDatabaseName( DatabaseConfiguration.DB_NAME ) diff --git a/integration-tests/bytecode-enhancements-it/src/test/java/org/hibernate/reactive/it/BaseReactiveIT.java b/integration-tests/bytecode-enhancements-it/src/test/java/org/hibernate/reactive/it/BaseReactiveIT.java index c7d8edbb7..d1bbc66f0 100644 --- a/integration-tests/bytecode-enhancements-it/src/test/java/org/hibernate/reactive/it/BaseReactiveIT.java +++ b/integration-tests/bytecode-enhancements-it/src/test/java/org/hibernate/reactive/it/BaseReactiveIT.java @@ -53,7 +53,7 @@ public abstract class BaseReactiveIT { public static final boolean USE_DOCKER = Boolean.getBoolean( "docker" ); public static final DockerImageName IMAGE_NAME = DockerImageName - .parse( "docker.io/postgres:15.2" ) + .parse( "docker.io/postgres:16.1" ) .asCompatibleSubstituteFor( "postgres" ); public static final String USERNAME = "hreact"; diff --git a/integration-tests/verticle-postgres-it/src/main/java/org/hibernate/reactive/it/verticle/VertxServer.java b/integration-tests/verticle-postgres-it/src/main/java/org/hibernate/reactive/it/verticle/VertxServer.java index 283e89aee..28b65aa73 100644 --- a/integration-tests/verticle-postgres-it/src/main/java/org/hibernate/reactive/it/verticle/VertxServer.java +++ b/integration-tests/verticle-postgres-it/src/main/java/org/hibernate/reactive/it/verticle/VertxServer.java @@ -36,7 +36,7 @@ public class VertxServer { // These properties are in DatabaseConfiguration in core public static final boolean USE_DOCKER = Boolean.getBoolean( "docker" ); - public static final String IMAGE_NAME = "postgres:15.2"; + public static final String IMAGE_NAME = "postgres:16.1"; public static final String USERNAME = "hreact"; public static final String PASSWORD = "hreact"; public static final String DB_NAME = "hreact"; diff --git a/podman.md b/podman.md index b8363c437..548f1030a 100644 --- a/podman.md +++ b/podman.md @@ -38,7 +38,7 @@ required credentials and schema to run the tests: ``` podman run --rm --name HibernateTestingPGSQL \ -e POSTGRES_USER=hreact -e POSTGRES_PASSWORD=hreact -e POSTGRES_DB=hreact \ - -p 5432:5432 docker.io/postgres:15.2 + -p 5432:5432 docker.io/postgres:16.1 ``` When the database has started, you can run the tests on PostgreSQL with: @@ -66,7 +66,7 @@ and schema to run the tests: ``` podman run --rm --name HibernateTestingMariaDB \ -e MYSQL_ROOT_PASSWORD=hreact -e MYSQL_DATABASE=hreact -e MYSQL_USER=hreact -e MYSQL_PASSWORD=hreact \ - -p 3306:3306 docker.io/mariadb:10.11.3 + -p 3306:3306 docker.io/mariadb:11.2.2 ``` When the database has started, you can run the tests on MariaDB with: @@ -93,7 +93,7 @@ and schema to run the tests: ``` podman run --rm --name HibernateTestingMySQL \ -e MYSQL_ROOT_PASSWORD=hreact -e MYSQL_DATABASE=hreact -e MYSQL_USER=hreact -e MYSQL_PASSWORD=hreact \ - -p 3306:3306 docker.io/mysql:8.0.33 + -p 3306:3306 docker.io/mysql:8.3.0 ``` When the database has started, you can run the tests on MySQL with: @@ -120,7 +120,7 @@ configured to run the tests: ``` podman run --rm --name=HibernateTestingCockroachDB \ --hostname=roachrr1 -p 26257:26257 -p 8080:8080 \ - docker.io/cockroachdb/cockroach:v22.2.10 start-single-node --insecure + docker.io/cockroachdb/cockroach:v23.1.14 start-single-node --insecure ``` Some of tests needs temporary tables and because this is an experimental feature in @@ -157,7 +157,7 @@ and schema to run the tests: podman run --rm -e LICENSE=accept --privileged=true --group-add keep-groups \ --name HibernateTestingDB2 -e DBNAME=hreact -e DB2INSTANCE=hreact \ -e DB2INST1_PASSWORD=hreact -e PERSISTENT_HOME=false -e ARCHIVE_LOGS=false \ - -e AUTOCONFIG=false -p 50000:50000 docker.io/ibmcom/db2:11.5.8.0 + -e AUTOCONFIG=false -p 50000:50000 docker.io/icr.io/db2_community/db2:11.5.9.0 ``` When the database has started, you can run the tests on Db2 with: diff --git a/tooling/jbang/CockroachDBReactiveTest.java.qute b/tooling/jbang/CockroachDBReactiveTest.java.qute index 6bd79e507..efcceac3e 100755 --- a/tooling/jbang/CockroachDBReactiveTest.java.qute +++ b/tooling/jbang/CockroachDBReactiveTest.java.qute @@ -5,8 +5,8 @@ * Copyright: Red Hat Inc. and Hibernate Authors */ -//DEPS io.vertx:vertx-pg-client:$\{vertx.version:4.5.1} -//DEPS io.vertx:vertx-unit:$\{vertx.version:4.5.1} +//DEPS io.vertx:vertx-pg-client:$\{vertx.version:4.5.2} +//DEPS io.vertx:vertx-unit:$\{vertx.version:4.5.2} //DEPS org.hibernate.reactive:hibernate-reactive-core:$\{hibernate-reactive.version:2.2.0.Final} //DEPS org.assertj:assertj-core:3.24.2 //DEPS junit:junit:4.13.2 @@ -70,7 +70,7 @@ public class {baseName} { } @ClassRule - public final static CockroachContainer database = new CockroachContainer( imageName( "cockroachdb", "cockroach", "v22.2.10" ) ); + public final static CockroachContainer database = new CockroachContainer( imageName( "cockroachdb", "cockroach", "v23.1.14" ) ); private Mutiny.SessionFactory sessionFactory; diff --git a/tooling/jbang/Db2ReactiveTest.java.qute b/tooling/jbang/Db2ReactiveTest.java.qute index 9aa4723b6..693eb9ec0 100755 --- a/tooling/jbang/Db2ReactiveTest.java.qute +++ b/tooling/jbang/Db2ReactiveTest.java.qute @@ -5,8 +5,8 @@ * Copyright: Red Hat Inc. and Hibernate Authors */ -//DEPS io.vertx:vertx-db2-client:$\{vertx.version:4.5.1} -//DEPS io.vertx:vertx-unit:$\{vertx.version:4.5.1} +//DEPS io.vertx:vertx-db2-client:$\{vertx.version:4.5.2} +//DEPS io.vertx:vertx-unit:$\{vertx.version:4.5.2} //DEPS org.hibernate.reactive:hibernate-reactive-core:$\{hibernate-reactive.version:2.2.0.Final} //DEPS org.assertj:assertj-core:3.24.2 //DEPS junit:junit:4.13.2 @@ -65,7 +65,7 @@ public class {baseName} { } @ClassRule - public final static Db2Container database = new Db2Container( imageName( "docker.io", "ibmcom/db2", "11.5.8.0" ) ) + public final static Db2Container database = new Db2Container( imageName( "docker.io", "icr.io/db2_community/db2", "11.5.9.0" ) ) .acceptLicense(); private Mutiny.SessionFactory sessionFactory; diff --git a/tooling/jbang/Example.java b/tooling/jbang/Example.java index 680f22c01..94b6cca43 100644 --- a/tooling/jbang/Example.java +++ b/tooling/jbang/Example.java @@ -6,9 +6,9 @@ */ //DEPS com.ongres.scram:client:2.1 -//DEPS io.vertx:vertx-pg-client:${vertx.version:4.5.1} -//DEPS io.vertx:vertx-mysql-client:${vertx.version:4.5.1} -//DEPS io.vertx:vertx-db2-client:${vertx.version:4.5.1} +//DEPS io.vertx:vertx-pg-client:${vertx.version:4.5.2} +//DEPS io.vertx:vertx-mysql-client:${vertx.version:4.5.2} +//DEPS io.vertx:vertx-db2-client:${vertx.version:4.5.2} //DEPS org.hibernate.reactive:hibernate-reactive-core:${hibernate-reactive.version:2.2.0.Final} //DEPS org.slf4j:slf4j-simple:2.0.7 //DESCRIPTION Allow authentication to PostgreSQL using SCRAM: @@ -59,7 +59,7 @@ *
* podman run --rm --name HibernateTestingPGSQL \ * -e POSTGRES_USER=hreact -e POSTGRES_PASSWORD=hreact -e POSTGRES_DB=hreact \ - * -p 5432:5432 postgres:15.2 + * -p 5432:5432 postgres:16.1 ** *