From cc8dac9e7f1d218197393207183660f4d4db5c20 Mon Sep 17 00:00:00 2001 From: mikereiche Date: Fri, 8 Aug 2025 16:23:32 -0700 Subject: [PATCH 1/2] Release 3.9.0 --- antora.yml | 2 +- build.gradle | 2 +- .../project-docs/pages/sdk-release-notes.adoc | 71 +++++++++++++++++-- 3 files changed, 68 insertions(+), 7 deletions(-) diff --git a/antora.yml b/antora.yml index 8e7af02..fa3c9c0 100644 --- a/antora.yml +++ b/antora.yml @@ -11,7 +11,7 @@ asciidoc: server_version: '8.0.0' sdk_current_version: '3.9.0' sdk_dot_minor: '3.9' - sdk_dot_major: '1.x' + sdk_dot_major: '3.x' version-server: '7.6' version-common: '8.0' name_platform: 'Scala' diff --git a/build.gradle b/build.gradle index 20609c3..08c3a42 100644 --- a/build.gradle +++ b/build.gradle @@ -32,7 +32,7 @@ sourceSets { } dependencies { - implementation group: 'com.couchbase.client', name: 'scala-client_2.12', version: '1.8.3' + implementation group: 'com.couchbase.client', name: 'scala-client_2.12', version: '3.9.0' implementation group: 'com.couchbase.client', name: 'tracing-opentelemetry', version: '1.6.3' implementation group: 'com.couchbase.client', name: 'metrics-opentelemetry', version: '0.8.3' implementation group: 'com.couchbase.client', name: 'metrics-micrometer', version: '0.8.3' diff --git a/modules/project-docs/pages/sdk-release-notes.adoc b/modules/project-docs/pages/sdk-release-notes.adoc index c7dd61a..ffdfd27 100644 --- a/modules/project-docs/pages/sdk-release-notes.adoc +++ b/modules/project-docs/pages/sdk-release-notes.adoc @@ -54,8 +54,9 @@ grep ' ' $src/pom.xml //// +=== Version 3.9.0 (5 August 2025) -=== Version 3.9.0 (August 2025) +Version 3.9.0 is the first release of the 3.9 series. https://docs.couchbase.com/sdk-api/couchbase-scala-client-3.9.0/com/couchbase/client/scala/index.html[API Reference] | http://docs.couchbase.com/sdk-api/couchbase-core-io-3.9.0/[Core API Reference] @@ -68,14 +69,74 @@ The supported and tested dependencies for this release are: * io.projectreactor:**reactor-core:3.6.9** * org.reactivestreams:**reactive-streams:1.0.4** -==== Improvements -// TODO: for release captain! +# Release notes - Scala Couchbase Client - 3.9.0 -==== Bug Fixes +### Bug + +[SCBC-491](https://couchbasecloud.atlassian.net/browse/SCBC-491) NPE when accessing unscoped \(cluster-level\) eventing function manager + +### New Feature + +[SCBC-378](https://couchbasecloud.atlassian.net/browse/SCBC-378) Support Scala 3 + +[SCBC-476](https://couchbasecloud.atlassian.net/browse/SCBC-476) Implement ExtGetMulti \(aka Enhanced Read Committed Isolation\) + +[SCBC-483](https://couchbasecloud.atlassian.net/browse/SCBC-483) SDK: Support FTS like Pre-Filters while doing Vector Search + +[SCBC-490](https://couchbasecloud.atlassian.net/browse/SCBC-490) Operational SDK prevent connection to Analytics 2.0 Cluster + +# Release notes - Java Couchbase JVM Core - 3.9.0 + +### Bug + +[JVMCBC-1644](https://couchbasecloud.atlassian.net/browse/JVMCBC-1644) Query\_context namespace should not be surrounded by backticks + +[JVMCBC-1656](https://couchbasecloud.atlassian.net/browse/JVMCBC-1656) Java SDK Seed Nodes Don't Always Get Correctly Updated + +[JVMCBC-1660](https://couchbasecloud.atlassian.net/browse/JVMCBC-1660) Change Network Heuristic for JVM SDKs + +[JVMCBC-1662](https://couchbasecloud.atlassian.net/browse/JVMCBC-1662) Preferred server group not honored in transactions + +[JVMCBC-1664](https://couchbasecloud.atlassian.net/browse/JVMCBC-1664) ArrayIndexOutOfBoundsException when request takes more than 1 hour + +[JVMCBC-1671](https://couchbasecloud.atlassian.net/browse/JVMCBC-1671) Transactions metrics not reporting all required attributes + +### Task + +[JVMCBC-1639](https://couchbasecloud.atlassian.net/browse/JVMCBC-1639) Migrate to mono-versioning + +[JVMCBC-1659](https://couchbasecloud.atlassian.net/browse/JVMCBC-1659) GHA: Automate publishing API reference documentation + +[JVMCBC-1668](https://couchbasecloud.atlassian.net/browse/JVMCBC-1668) Remove Project Reactor links from API reference documentation + +### Improvement + +[JVMCBC-1607](https://couchbasecloud.atlassian.net/browse/JVMCBC-1607) Improve how trusted certificates are logged + +[JVMCBC-1612](https://couchbasecloud.atlassian.net/browse/JVMCBC-1612) Use IdleStateHandler to detect dead or half-open KV connections + +[JVMCBC-1634](https://couchbasecloud.atlassian.net/browse/JVMCBC-1634) Flatten published POMs + +[JVMCBC-1648](https://couchbasecloud.atlassian.net/browse/JVMCBC-1648) Upgrade Jackson from 2.17.3 to 2.19.2 + +[JVMCBC-1651](https://couchbasecloud.atlassian.net/browse/JVMCBC-1651) Support accessDeleted reads for subdoc replica reads + +[JVMCBC-1652](https://couchbasecloud.atlassian.net/browse/JVMCBC-1652) Read library version from a new \`version.properties\` resource instead of JAR manifest + +[JVMCBC-1657](https://couchbasecloud.atlassian.net/browse/JVMCBC-1657) Improve backpressure implementation for row-based HTTP services + +[JVMCBC-1658](https://couchbasecloud.atlassian.net/browse/JVMCBC-1658) Better filtering of suppressed exception stack traces + +[JVMCBC-1661](https://couchbasecloud.atlassian.net/browse/JVMCBC-1661) Upgrade Gson from 2.11.0 to 2.13.1 + +[JVMCBC-1665](https://couchbasecloud.atlassian.net/browse/JVMCBC-1665) Let internal Couchbase products bypass cluster type check + +[JVMCBC-1667](https://couchbasecloud.atlassian.net/browse/JVMCBC-1667) TEST: Make IgnoreWhen annotation repeatable -// TODO: for release captain! +### New Feature +[JVMCBC-1637](https://couchbasecloud.atlassian.net/browse/JVMCBC-1637) Publish a BOM From aa0fe09de8fc49d7bf57ee833244793e123b4bbf Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Mon, 11 Aug 2025 11:56:03 +0100 Subject: [PATCH 2/2] !MD (!) --- .../project-docs/pages/sdk-release-notes.adoc | 100 +++++++++++------- 1 file changed, 59 insertions(+), 41 deletions(-) diff --git a/modules/project-docs/pages/sdk-release-notes.adoc b/modules/project-docs/pages/sdk-release-notes.adoc index ffdfd27..92f5453 100644 --- a/modules/project-docs/pages/sdk-release-notes.adoc +++ b/modules/project-docs/pages/sdk-release-notes.adoc @@ -32,9 +32,10 @@ include::{version-common}@sdk:pages:partial$signed.adoc[tag=signed] Version 3.9 of the Scala SDK implements the 3.8 xref:compatibility.adoc#api-version[SDK API]. See the xref:compatibility.adoc#couchbase-feature-availability-matrix[compatibility pages] for more information on feature compatibility with different versions of Couchbase Server. -NOTE: From 3.9.0 on, all Couchbase JVM SDKs have an aligned version number to make it easier to users to track changes. So the version has jumped from 1.8.x to 3.9.x. - -While this is technically an increase in the major, the Scala 2 versions of the SDK have only one very small breaking change made to the API, to remove a long-deprecated transactions method. All other functionality works unchanged and users can upgrade existing applications without issue. +NOTE: From 3.9.0 on, all Couchbase JVM SDKs have an aligned version number to make it easier to users to track changes. +So the version has jumped from 1.8.x to 3.9.x. +While this is technically an increase in the major, the Scala 2 versions of the SDK have only one very small breaking change made to the API, to remove a long-deprecated transactions method. +All other functionality works unchanged and users can upgrade existing applications without issue. The major new feature in the 3.9 series is the addition of a new version of the SDK, built for Scala 3. The Scala 3 version of the SDK has some API differences, documented on xref:project-docs:migrating-to-scala-3.adoc[migrating to Scala 3]. @@ -70,73 +71,90 @@ The supported and tested dependencies for this release are: * org.reactivestreams:**reactive-streams:1.0.4** -# Release notes - Scala Couchbase Client - 3.9.0 - -### Bug - -[SCBC-491](https://couchbasecloud.atlassian.net/browse/SCBC-491) NPE when accessing unscoped \(cluster-level\) eventing function manager - -### New Feature +====New Features -[SCBC-378](https://couchbasecloud.atlassian.net/browse/SCBC-378) Support Scala 3 +https://couchbasecloud.atlassian.net/browse/SCBC-378[SCBC-378]: +Support Scala 3. -[SCBC-476](https://couchbasecloud.atlassian.net/browse/SCBC-476) Implement ExtGetMulti \(aka Enhanced Read Committed Isolation\) +https://couchbasecloud.atlassian.net/browse/SCBC-476[SCBC-476]: +Implement `ExtGetMulti` (aka Enhanced Read Committed Isolation). -[SCBC-483](https://couchbasecloud.atlassian.net/browse/SCBC-483) SDK: Support FTS like Pre-Filters while doing Vector Search +https://couchbasecloud.atlassian.net/browse/SCBC-483[SCBC-483]: +Support FTS like Pre-Filters while doing Vector Search. -[SCBC-490](https://couchbasecloud.atlassian.net/browse/SCBC-490) Operational SDK prevent connection to Analytics 2.0 Cluster +https://couchbasecloud.atlassian.net/browse/SCBC-490[SCBC-490]: +Operational SDK is now prevented from connecting to an Enterprise Analytics Cluster. -# Release notes - Java Couchbase JVM Core - 3.9.0 +https://couchbasecloud.atlassian.net/browse/JVMCBC-1637[JVMCBC-1637]: +Publish a BOM. -### Bug - -[JVMCBC-1644](https://couchbasecloud.atlassian.net/browse/JVMCBC-1644) Query\_context namespace should not be surrounded by backticks +==== Bug Fixes -[JVMCBC-1656](https://couchbasecloud.atlassian.net/browse/JVMCBC-1656) Java SDK Seed Nodes Don't Always Get Correctly Updated +https://couchbasecloud.atlassian.net/browse/SCBC-491[SCBC-491]: +NPE when accessing unscoped (cluster-level) eventing function manager. -[JVMCBC-1660](https://couchbasecloud.atlassian.net/browse/JVMCBC-1660) Change Network Heuristic for JVM SDKs +https://couchbasecloud.atlassian.net/browse/JVMCBC-1644[JVMCBC-1644] +`Query_context` namespace should not be surrounded by backticks. -[JVMCBC-1662](https://couchbasecloud.atlassian.net/browse/JVMCBC-1662) Preferred server group not honored in transactions +https://couchbasecloud.atlassian.net/browse/JVMCBC-1656[JVMCBC-1656]: +Java SDK Seed Nodes Don't Always Get Correctly Updated. -[JVMCBC-1664](https://couchbasecloud.atlassian.net/browse/JVMCBC-1664) ArrayIndexOutOfBoundsException when request takes more than 1 hour +https://couchbasecloud.atlassian.net/browse/JVMCBC-1660[JVMCBC-1660]: +Change Network Heuristic for JVM SDKs. -[JVMCBC-1671](https://couchbasecloud.atlassian.net/browse/JVMCBC-1671) Transactions metrics not reporting all required attributes +https://couchbasecloud.atlassian.net/browse/JVMCBC-1662[JVMCBC-1662]: +Preferred server group not honored in transactions. -### Task +https://couchbasecloud.atlassian.net/browse/JVMCBC-1664[JVMCBC-1664]: +`ArrayIndexOutOfBoundsException` when request takes more than 1 hour. -[JVMCBC-1639](https://couchbasecloud.atlassian.net/browse/JVMCBC-1639) Migrate to mono-versioning +https://couchbasecloud.atlassian.net/browse/JVMCBC-1671[JVMCBC-1671]: +Transactions metrics not reporting all required attributes. -[JVMCBC-1659](https://couchbasecloud.atlassian.net/browse/JVMCBC-1659) GHA: Automate publishing API reference documentation +==== Improvements -[JVMCBC-1668](https://couchbasecloud.atlassian.net/browse/JVMCBC-1668) Remove Project Reactor links from API reference documentation +https://couchbasecloud.atlassian.net/browse/JVMCBC-1607[JVMCBC-1607]: +Improve how trusted certificates are logged. -### Improvement +https://couchbasecloud.atlassian.net/browse/JVMCBC-1612[JVMCBC-1612]: +Use `IdleStateHandler` to detect dead or half-open KV connections. -[JVMCBC-1607](https://couchbasecloud.atlassian.net/browse/JVMCBC-1607) Improve how trusted certificates are logged +https://couchbasecloud.atlassian.net/browse/JVMCBC-1634[JVMCBC-1634]: +Flatten published POMs. -[JVMCBC-1612](https://couchbasecloud.atlassian.net/browse/JVMCBC-1612) Use IdleStateHandler to detect dead or half-open KV connections +https://couchbasecloud.atlassian.net/browse/JVMCBC-1648[JVMCBC-1648]: +Upgrade Jackson from 2.17.3 to 2.19.2. -[JVMCBC-1634](https://couchbasecloud.atlassian.net/browse/JVMCBC-1634) Flatten published POMs +https://couchbasecloud.atlassian.net/browse/JVMCBC-1651[JVMCBC-1651]: +Support `accessDeleted` reads for subdoc replica reads. -[JVMCBC-1648](https://couchbasecloud.atlassian.net/browse/JVMCBC-1648) Upgrade Jackson from 2.17.3 to 2.19.2 +https://couchbasecloud.atlassian.net/browse/JVMCBC-1652[JVMCBC-1652]: +Read library version from a new `version.properties` resource instead of JAR manifest. -[JVMCBC-1651](https://couchbasecloud.atlassian.net/browse/JVMCBC-1651) Support accessDeleted reads for subdoc replica reads +https://couchbasecloud.atlassian.net/browse/JVMCBC-1657[JVMCBC-1657]: +Improve backpressure implementation for row-based HTTP services. -[JVMCBC-1652](https://couchbasecloud.atlassian.net/browse/JVMCBC-1652) Read library version from a new \`version.properties\` resource instead of JAR manifest +https://couchbasecloud.atlassian.net/browse/JVMCBC-1658[JVMCBC-1658]: +Better filtering of suppressed exception stack traces. -[JVMCBC-1657](https://couchbasecloud.atlassian.net/browse/JVMCBC-1657) Improve backpressure implementation for row-based HTTP services +https://couchbasecloud.atlassian.net/browse/JVMCBC-1661[JVMCBC-1661]: +Upgrade `Gson` from 2.11.0 to 2.13.1. -[JVMCBC-1658](https://couchbasecloud.atlassian.net/browse/JVMCBC-1658) Better filtering of suppressed exception stack traces +https://couchbasecloud.atlassian.net/browse/JVMCBC-1665[JVMCBC-1665]: +Let internal Couchbase products bypass cluster type check. -[JVMCBC-1661](https://couchbasecloud.atlassian.net/browse/JVMCBC-1661) Upgrade Gson from 2.11.0 to 2.13.1 +https://couchbasecloud.atlassian.net/browse/JVMCBC-1667[JVMCBC-1667] +Make `IgnoreWhen` annotation repeatable. -[JVMCBC-1665](https://couchbasecloud.atlassian.net/browse/JVMCBC-1665) Let internal Couchbase products bypass cluster type check +https://couchbasecloud.atlassian.net/browse/JVMCBC-1639[JVMCBC-1639]: +Migrated to mono-versioning. -[JVMCBC-1667](https://couchbasecloud.atlassian.net/browse/JVMCBC-1667) TEST: Make IgnoreWhen annotation repeatable +https://couchbasecloud.atlassian.net/browse/JVMCBC-1659[JVMCBC-1659]: +Automate publishing API reference documentation. -### New Feature +https://couchbasecloud.atlassian.net/browse/JVMCBC-1668[JVMCBC-1668]: +Remove Project Reactor links from API reference documentation. -[JVMCBC-1637](https://couchbasecloud.atlassian.net/browse/JVMCBC-1637) Publish a BOM