From 01bcfac7bb0607da554a6fe3993f5f6a2b8b01cd Mon Sep 17 00:00:00 2001 From: Aaron Chung Date: Mon, 23 Dec 2024 11:58:43 -0800 Subject: [PATCH] Update changelog and bump version for 2.5.4 --- CHANGELOG.md | 9 +++++++++ Maintenance.md | 3 ++- benchmarks/README.md | 2 +- docs/GettingStarted.md | 14 +++++++------- docs/using-the-jdbc-driver/UsingTheJdbcDriver.md | 2 +- .../using-plugins/UsingTheFederatedAuthPlugin.md | 2 +- examples/SpringBootHikariExample/README.md | 2 +- examples/SpringHibernateExample/README.md | 2 +- examples/SpringTxFailoverExample/README.md | 2 +- examples/SpringWildflyExample/README.md | 6 +++--- .../modules/software/amazon/jdbc/main/module.xml | 2 +- examples/VertxExample/README.md | 2 +- gradle.properties | 2 +- wrapper/build.gradle.kts | 10 +++++----- .../hibernate_files/hibernate-core.gradle | 2 +- .../resources/hibernate_files/java-module.gradle | 2 +- 16 files changed, 37 insertions(+), 27 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48b223751..011fbfa49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/#semantic-versioning-200). +## [2.5.4] - 2024-12-23 +### :bug: Fixed +- Avoid setting ignoreNewTopologyRequestsEndTimeNano on initial connection ([PR #1221](https://github.com/aws/aws-advanced-jdbc-wrapper/pull/1221)). +- Limitless Connection Plugin set round-robin weights properly to original properties, not a copy ([PR #1223](https://github.com/aws/aws-advanced-jdbc-wrapper/pull/1223)). + +### :crab: Changed +- Update dependencies to address [CVE-2024-47535](https://www.cve.org/CVERecord?id=CVE-2024-47535) ([Issue #1229](https://github.com/aws/aws-advanced-jdbc-wrapper/issues/1229)). + ## [2.5.3] - 2024-11-29 ### :magic_wand: Added - Add WRITER custom endpoint type ([PR #1202](https://github.com/aws/aws-advanced-jdbc-wrapper/pull/1202)). @@ -396,6 +404,7 @@ The Amazon Web Services (AWS) Advanced JDBC Driver allows an application to take - The [AWS IAM Authentication Connection Plugin](./docs/using-the-jdbc-driver/using-plugins/UsingTheIamAuthenticationPlugin.md) - The [AWS Secrets Manager Connection Plugin](./docs/using-the-jdbc-driver/using-plugins/UsingTheAwsSecretsManagerPlugin.md) +[2.5.4]: https://github.com/awslabs/aws-advanced-jdbc-wrapper/compare/2.5.3...2.5.4 [2.5.3]: https://github.com/awslabs/aws-advanced-jdbc-wrapper/compare/2.5.2...2.5.3 [2.5.2]: https://github.com/awslabs/aws-advanced-jdbc-wrapper/compare/2.5.1...2.5.2 [2.5.1]: https://github.com/awslabs/aws-advanced-jdbc-wrapper/compare/2.5.0...2.5.1 diff --git a/Maintenance.md b/Maintenance.md index 259322b0b..ea1634dab 100644 --- a/Maintenance.md +++ b/Maintenance.md @@ -29,6 +29,7 @@ | October 24, 2024 | [Release 2.5.1](https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/tag/2.5.1) | | November 5, 2024 | [Release 2.5.2](https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/tag/2.5.2) | | November 29, 2024 | [Release 2.5.3](https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/tag/2.5.3) | +| December 23, 2024 | [Release 2.5.4](https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/tag/2.5.4) | `aws-advanced-jdbc-wrapper` [follows semver](https://semver.org/#semantic-versioning-200) which means we will only release breaking changes in major versions. Generally speaking patches will be released to fix existing problems without @@ -82,4 +83,4 @@ from the updated source after the PRs are merged. | Major Version | Latest Minor Version | Status | Initial Release | Maintenance Window Start | Maintenance Window End | |---------------|----------------------|-------------|-----------------|--------------------------|------------------------| | 1 | 1.0.2 | Maintenance | Oct 5, 2022 | Apr 28, 2023 | Apr 28, 2024 | -| 2 | 2.5.3 | Current | Apr 28, 2023 | N/A | N/A | +| 2 | 2.5.4 | Current | Apr 28, 2023 | N/A | N/A | diff --git a/benchmarks/README.md b/benchmarks/README.md index fb017b5df..3a214f580 100644 --- a/benchmarks/README.md +++ b/benchmarks/README.md @@ -7,5 +7,5 @@ The benchmarks do not measure the performance of target JDBC drivers nor the per ## Usage 1. Build the benchmarks with the following command `../gradlew jmhJar`. 1. the JAR file will be outputted to `build/libs` -2. Run the benchmarks with the following command `java -jar build/libs/benchmarks-2.5.3-jmh.jar`. +2. Run the benchmarks with the following command `java -jar build/libs/benchmarks-2.5.4-jmh.jar`. 1. you may have to update the command based on the exact version of the produced JAR file diff --git a/docs/GettingStarted.md b/docs/GettingStarted.md index b74dced9b..9d3acfd64 100644 --- a/docs/GettingStarted.md +++ b/docs/GettingStarted.md @@ -16,7 +16,7 @@ If you are using the AWS JDBC Driver as part of a Gradle project, include the wr ```gradle dependencies { - implementation group: 'software.amazon.jdbc', name: 'aws-advanced-jdbc-wrapper', version: '2.5.3' + implementation group: 'software.amazon.jdbc', name: 'aws-advanced-jdbc-wrapper', version: '2.5.4' implementation group: 'org.postgresql', name: 'postgresql', version: '42.5.0' } ``` @@ -30,16 +30,16 @@ You can use pre-compiled packages that can be downloaded directly from [GitHub R For example, the following command uses wget to download the wrapper: ```bash -wget https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/download/2.5.3/aws-advanced-jdbc-wrapper-2.5.3.jar +wget https://github.com/awslabs/aws-advanced-jdbc-wrapper/releases/download/2.5.4/aws-advanced-jdbc-wrapper-2.5.4.jar ``` Then, the following command adds the AWS JDBC Driver to the CLASSPATH: ```bash -export CLASSPATH=$CLASSPATH:/home/userx/libs/aws-advanced-jdbc-wrapper-2.5.3.jar +export CLASSPATH=$CLASSPATH:/home/userx/libs/aws-advanced-jdbc-wrapper-2.5.4.jar ``` -> **Note**: There is also a JAR suffixed with `-bundle-federated-auth`. It is an Uber JAR that contains the AWS JDBC Driver as well as all the dependencies needed to run the Federated Authentication Plugin. **Our general recommendation is to use the `aws-advanced-jdbc-wrapper-2.5.3.jar` for use cases unrelated to complex Federated Authentication environments**. To learn more, please check out the [Federated Authentication Plugin](./using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md#bundled-uber-jar). +> **Note**: There is also a JAR suffixed with `-bundle-federated-auth`. It is an Uber JAR that contains the AWS JDBC Driver as well as all the dependencies needed to run the Federated Authentication Plugin. **Our general recommendation is to use the `aws-advanced-jdbc-wrapper-2.5.4.jar` for use cases unrelated to complex Federated Authentication environments**. To learn more, please check out the [Federated Authentication Plugin](./using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md#bundled-uber-jar). ### As a Maven Dependency @@ -50,7 +50,7 @@ You can use [Maven's dependency management](https://search.maven.org/search?q=g: software.amazon.jdbc aws-advanced-jdbc-wrapper - 2.5.3 + 2.5.4 ``` @@ -61,7 +61,7 @@ You can use [Gradle's dependency management](https://search.maven.org/search?q=g ```gradle dependencies { - implementation group: 'software.amazon.jdbc', name: 'aws-advanced-jdbc-wrapper', version: '2.5.3' + implementation group: 'software.amazon.jdbc', name: 'aws-advanced-jdbc-wrapper', version: '2.5.4' } ``` @@ -69,7 +69,7 @@ To add a Gradle dependency in a Kotlin syntax, use the following configuration: ```kotlin dependencies { - implementation("software.amazon.jdbc:aws-advanced-jdbc-wrapper:2.5.3") + implementation("software.amazon.jdbc:aws-advanced-jdbc-wrapper:2.5.4") } ``` diff --git a/docs/using-the-jdbc-driver/UsingTheJdbcDriver.md b/docs/using-the-jdbc-driver/UsingTheJdbcDriver.md index 2c249b666..33281c4bd 100644 --- a/docs/using-the-jdbc-driver/UsingTheJdbcDriver.md +++ b/docs/using-the-jdbc-driver/UsingTheJdbcDriver.md @@ -226,7 +226,7 @@ If there is an unreleased feature you would like to try, it may be available in software.amazon.jdbc aws-advanced-jdbc-wrapper - 2.5.4-SNAPSHOT + 2.5.5-SNAPSHOT system path-to-snapshot-jar diff --git a/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md b/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md index 614b02b57..b6c2d5ede 100644 --- a/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md +++ b/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md @@ -32,7 +32,7 @@ This JAR is a drop-in ready solution and is **recommended for customers who do n As this plugin has a number of transitive dependencies, the goal of this JAR is to eliminate the need to manually source all the dependencies and avoid potential issues with managing them. In that spirit, the dependencies in this JAR are shaded with the prefix `shaded` to avoid potential package conflicts with pre-existing packages in your environment. -It is important to note that the Uber JAR is bundled with the AWS Java RDS SDK and is larger (**15 MB**) than our `aws-advanced-jdbc-wrapper-2.5.3.jar`. So please take that into account when deciding if this solution is for you. +It is important to note that the Uber JAR is bundled with the AWS Java RDS SDK and is larger (**15 MB**) than our `aws-advanced-jdbc-wrapper-2.5.4.jar`. So please take that into account when deciding if this solution is for you. If you would like to download and install the bundled Uber JAR, follow these [instructions](../../GettingStarted.md#direct-download-and-installation). diff --git a/examples/SpringBootHikariExample/README.md b/examples/SpringBootHikariExample/README.md index cd48901a5..d674689b6 100644 --- a/examples/SpringBootHikariExample/README.md +++ b/examples/SpringBootHikariExample/README.md @@ -4,7 +4,7 @@ In this tutorial, you will set up a Spring Boot application using Hikari and the > Note: this tutorial was written using the following technologies: > - Spring Boot 2.7.0 -> - AWS JDBC Driver 2.5.3 +> - AWS JDBC Driver 2.5.4 > - Postgresql 42.5.4 > - Java 8 diff --git a/examples/SpringHibernateExample/README.md b/examples/SpringHibernateExample/README.md index bb2bc47ad..219067c07 100644 --- a/examples/SpringHibernateExample/README.md +++ b/examples/SpringHibernateExample/README.md @@ -5,7 +5,7 @@ In this tutorial, you will set up a Spring Boot and Hibernate application with t > Note: this tutorial was written using the following technologies: > - Spring Boot 2.7.1 > - Hibernate -> - AWS JDBC Driver 2.5.3 +> - AWS JDBC Driver 2.5.4 > - Postgresql 42.5.4 > - Gradle 7 > - Java 11 diff --git a/examples/SpringTxFailoverExample/README.md b/examples/SpringTxFailoverExample/README.md index 93575ff01..89a0cfb3b 100644 --- a/examples/SpringTxFailoverExample/README.md +++ b/examples/SpringTxFailoverExample/README.md @@ -4,7 +4,7 @@ In this tutorial, you will set up a Spring Boot application using the AWS JDBC D > Note: this tutorial was written using the following technologies: > - Spring Boot 2.7.0 -> - AWS JDBC Driver 2.5.3 +> - AWS JDBC Driver 2.5.4 > - Postgresql 42.5.4 > - Java 8 diff --git a/examples/SpringWildflyExample/README.md b/examples/SpringWildflyExample/README.md index b8f89cc73..d900f0afa 100644 --- a/examples/SpringWildflyExample/README.md +++ b/examples/SpringWildflyExample/README.md @@ -5,7 +5,7 @@ In this tutorial, you will set up a Wildfly and Spring Boot application with the > Note: this tutorial was written using the following technologies: > - Spring Boot 2.7.1 > - Wildfly 26.1.1 Final -> - AWS JDBC Driver 2.5.3 +> - AWS JDBC Driver 2.5.4 > - Postgresql 42.5.4 > - Gradle 7 > - Java 11 @@ -38,7 +38,7 @@ Create a Gradle project with the following project hierarchy: │ └───main │ │ │───module.xml │ │ │───postgresql-42.5.4.jar - │ │ └───aws-advanced-jdbc-wrapper-2.5.3.jar + │ │ └───aws-advanced-jdbc-wrapper-2.5.4.jar └───standalone ├───configuration ├───amazon @@ -135,7 +135,7 @@ Since this example uses the PostgreSQL JDBC driver as the target driver, you nee - + diff --git a/examples/SpringWildflyExample/wildfly/modules/software/amazon/jdbc/main/module.xml b/examples/SpringWildflyExample/wildfly/modules/software/amazon/jdbc/main/module.xml index d540be30b..75a3bdc60 100644 --- a/examples/SpringWildflyExample/wildfly/modules/software/amazon/jdbc/main/module.xml +++ b/examples/SpringWildflyExample/wildfly/modules/software/amazon/jdbc/main/module.xml @@ -19,7 +19,7 @@ - + diff --git a/examples/VertxExample/README.md b/examples/VertxExample/README.md index 8ad5836a5..5d8c66cd7 100644 --- a/examples/VertxExample/README.md +++ b/examples/VertxExample/README.md @@ -3,7 +3,7 @@ In this tutorial, you will set up a Vert.x application with the AWS JDBC Driver, and use the driver to execute some simple database operations on an Aurora PostgreSQL database. > Note: this tutorial was written using the following technologies: -> - AWS JDBC Driver 2.5.3 +> - AWS JDBC Driver 2.5.4 > - PostgreSQL 42.5.4 > - Java 8 > - Vert.x 4.4.2 diff --git a/gradle.properties b/gradle.properties index 7b2aed9a1..7b00cf6ea 100644 --- a/gradle.properties +++ b/gradle.properties @@ -14,7 +14,7 @@ aws-advanced-jdbc-wrapper.version.major=2 aws-advanced-jdbc-wrapper.version.minor=5 -aws-advanced-jdbc-wrapper.version.subminor=3 +aws-advanced-jdbc-wrapper.version.subminor=4 snapshot=false nexus.publish=true diff --git a/wrapper/build.gradle.kts b/wrapper/build.gradle.kts index 72ec23645..fff06d8ce 100644 --- a/wrapper/build.gradle.kts +++ b/wrapper/build.gradle.kts @@ -29,12 +29,12 @@ plugins { dependencies { implementation("org.checkerframework:checker-qual:3.48.1") compileOnly("org.apache.httpcomponents:httpclient:4.5.14") - compileOnly("software.amazon.awssdk:rds:2.29.29") - compileOnly("software.amazon.awssdk:auth:2.29.29") // Required for IAM (light implementation) - compileOnly("software.amazon.awssdk:http-client-spi:2.29.29") // Required for IAM (light implementation) - compileOnly("software.amazon.awssdk:sts:2.29.29") + compileOnly("software.amazon.awssdk:rds:2.29.34") + compileOnly("software.amazon.awssdk:auth:2.29.34") // Required for IAM (light implementation) + compileOnly("software.amazon.awssdk:http-client-spi:2.29.34") // Required for IAM (light implementation) + compileOnly("software.amazon.awssdk:sts:2.29.34") compileOnly("com.zaxxer:HikariCP:4.0.3") // Version 4.+ is compatible with Java 8 - compileOnly("software.amazon.awssdk:secretsmanager:2.29.29") + compileOnly("software.amazon.awssdk:secretsmanager:2.29.34") compileOnly("com.fasterxml.jackson.core:jackson-databind:2.17.1") compileOnly("com.mysql:mysql-connector-j:8.3.0") compileOnly("org.postgresql:postgresql:42.7.4") diff --git a/wrapper/src/test/resources/hibernate_files/hibernate-core.gradle b/wrapper/src/test/resources/hibernate_files/hibernate-core.gradle index e63cc28bc..de747c4af 100644 --- a/wrapper/src/test/resources/hibernate_files/hibernate-core.gradle +++ b/wrapper/src/test/resources/hibernate_files/hibernate-core.gradle @@ -61,7 +61,7 @@ dependencies { transitive = true } testImplementation "joda-time:joda-time:2.3" - testImplementation files('/app/libs/aws-advanced-jdbc-wrapper-2.5.3.jar') + testImplementation files('/app/libs/aws-advanced-jdbc-wrapper-2.5.4.jar') testImplementation dbLibs.postgresql testImplementation dbLibs.mysql testImplementation dbLibs.h2 diff --git a/wrapper/src/test/resources/hibernate_files/java-module.gradle b/wrapper/src/test/resources/hibernate_files/java-module.gradle index f0c7e2eac..2674b9542 100644 --- a/wrapper/src/test/resources/hibernate_files/java-module.gradle +++ b/wrapper/src/test/resources/hibernate_files/java-module.gradle @@ -97,7 +97,7 @@ dependencies { // Since both the DB2 driver and HANA have a package "net.jpountz" we have to add dependencies conditionally // This is due to the "no split-packages" requirement of Java 9+ - testRuntimeOnly files('/app/libs/aws-advanced-jdbc-wrapper-2.5.3.jar') + testRuntimeOnly files('/app/libs/aws-advanced-jdbc-wrapper-2.5.4.jar') testRuntimeOnly dbLibs.mysql if ( db.startsWith( 'db2' ) ) {