From ce18dc9b0d1b7875606faff5c3226aa0f70dd5fb Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Tue, 3 Feb 2026 17:07:33 +0000 Subject: [PATCH 1/8] --> 3.11.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 30954607..c0ba1fc8 100644 --- a/pom.xml +++ b/pom.xml @@ -22,7 +22,7 @@ com.couchbase.client java-client - 3.10.1 + 3.11.0 com.fasterxml.jackson.core From 99831579639d4c4fe3f93507096ce58660f101d0 Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Tue, 3 Feb 2026 17:08:53 +0000 Subject: [PATCH 2/8] --> 3.11 --- README.adoc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.adoc b/README.adoc index 9e0ae0a9..58dccfd1 100644 --- a/README.adoc +++ b/README.adoc @@ -1,9 +1,9 @@ = Couchbase Java SDK Documentation -This repository hosts the documentation source for the https://docs.couchbase.com/java-sdk/3.10/hello-world/overview.html[Couchbase Java SDK]. +This repository hosts the documentation source for the https://docs.couchbase.com/java-sdk/3.11/hello-world/overview.html[Couchbase Java SDK]. -This branch documents the 3.10 release of the SDK. -It follows the https://docs.couchbase.com/java-sdk/3.10/project-docs/compatibility.html#api-version[SDK 3.8 API]. +This branch documents the 3.11 release of the SDK. +It follows the https://docs.couchbase.com/java-sdk/3.11/project-docs/compatibility.html#api-version[SDK 3.9 API]. This branch reflects the new Information Architecture for the SDK docs, helping to guide new-to-Couchbase users through the pitfalls of a complex distributed system. @@ -121,7 +121,7 @@ Update the following files: === New Branches -Production branches use the *release/x.y* naming pattern (e.g. `release/3.10`, `release/3.9`). +Production branches use the *release/x.y* naming pattern (e.g. `release/3.10`, `release/3.11`). Antora uses the branch names in the playbook, but also uses the `version` given in the antor.yml file, to create the version navigation -- so this version number must be unique within the repo for any branches included in the playbook. When creating a new branch for a new release, remember to update the antora.yml file before trying to build. @@ -132,5 +132,5 @@ This is in the process of being changed -- documentation will appear here once t == Docs License -©2025 Couchbase, Inc. +©2026 Couchbase, Inc. This work is licensed under https://creativecommons.org/licenses/by-nc-sa/4.0/[CC BY-NC-SA 4.0]. From c9e9e82ddc686649c5ef2c6ea30f5bb290529752 Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Tue, 3 Feb 2026 17:25:43 +0000 Subject: [PATCH 3/8] Update compatibility.adoc DOC-13974 DOC-13557 DOC-13603 --- modules/project-docs/pages/compatibility.adoc | 78 +++++++++---------- 1 file changed, 35 insertions(+), 43 deletions(-) diff --git a/modules/project-docs/pages/compatibility.adoc b/modules/project-docs/pages/compatibility.adoc index e8ae8794..3b539e41 100644 --- a/modules/project-docs/pages/compatibility.adoc +++ b/modules/project-docs/pages/compatibility.adoc @@ -43,37 +43,33 @@ Please make sure you run on one of the latest patch releases, since they provide In general, the JVM eliminates concerns about underlying OS compatibility, and Couchbase JVM SDKs can be expected to run on all of the Operating Systems supported by xref:{version-server}@server:install:install-platforms.adoc[Couchbase Server]. -The {name-sdk} is tested and supported on the following OSs and platforms: + +The {name-sdk} will run on, and is supported on, the following OSs and platforms. +The SDK has been tested on a representative subset of the platforms listed below. **** [discrete] === GNU/Linux * Amazon Linux 2 & AL2023. -* Red Hat Enterprise Linux 8 & 9; -* Oracle Linux 8 & 9. +* Red Hat Enterprise Linux 8, 9, & 10. +* Oracle Linux 8, 9, & 10. * Ubuntu (LTS) 22.04 (_Jammy_) & 24.04 (_Noble_). -* Debian 11 (_Bullseye_) & Debian 12 (_Bookworm_). -* SUSE Enterprise Linux 12 & 15 -* Alpine Linux 3.18 (_Oracle JDK only_) -- but see <>. +* Debian 11 (_Bullseye_), Debian 12 (_Bookworm_), & Debian 13 (_Trixie_). +* SUSE Enterprise Linux 12 & 15. +* Alpine Linux 3.21 - 3.23. [discrete] === Microsoft Windows * Microsoft Windows 10 & 11; -* Windows Server 2019 & 2022. +* Windows Server 2019, 2022, & 2025. [discrete] === Mac OS X The current and previous two releases of OS X. -At time of writing (April 2025): 15 (Sequoia), 14 (Sonoma), and 13 (Ventura). -M1 ARM architecture is fully supported in the {name-sdk}. - -[discrete] -=== ARM Processor Support - -AWS Amazon Graviton2, Apple M1 ARM processors, and ARMv8 on Ubuntu 20.04+ (from SDK 3.4). +At time of writing (February 2026): 26 (Tahoe), 15 (Sequoia), and 14 (Sonoma). **** The JVM SDKs should also be expected to run on other commonly-available GNU/Linux distributions which support an appropriate JDK, but not all combinations can be tested -- notable exceptions are listed below. @@ -135,34 +131,38 @@ The matrix below denotes the version of Couchbase Server, the version of the {na * ✖ *Unsupported*: This combination is not tested, and is not within the scope of technical support if you have purchased a support agreement. * ◎ *Compatible*: This combination has been tested previously, and should be compatible. -This combination is not recommended by our technical support organization. +evertheless, this combination is not recommended by our technical support organization, as not all of the latest features are supported by it. It is best to upgrade either the SDK or the Couchbase version you are using. * ✔ *Supported*: This combination is subject to ongoing quality assurance, and is fully supported by our technical support organization. .Recommended SDK per Server Version Matrix [#table_sdk_versions] |=== -| | 3.4, 3.5 | 3.6, 3.7 | 3.8 | 3.9, 3.10 +| | 3.4, 3.5 | 3.6, 3.7 | 3.8 | 3.9-3.11 -| *Server 7.0 - 7.2* +| *Server 8.0* ① | *✔* | *✔* | *✔* | *✔* -| *Server 7.6* +| *Server 7.6* ① | *✔* | *✔* | *✔* | *✔* -| *Server 8.0* +| *Server 7.2* | *◎* | *◎* | *✔* | *✔* |=== + +① Server 7.6 & 8.0 are compatible with all supported (not yet End-of-Life) versions of the {name-sdk}, but for full support of the latest features you need to upgrade to a recent version of the SDK. +See the <<#couchbase-new-feature-availability-matrix,Feature Availablity matrix below>> and the xref:sdk-release-notes.adoc[Release Notes page]. + Note the https://www.couchbase.com/support-policy/EOL/[End of Life dates^] for Couchbase Server and SDK versions. See the notes there for Support details. @@ -180,35 +180,27 @@ include::{version-common}@sdk:shared:partial$capella.adoc[tag=cloud] [.table-merge-cells] [cols="7,6,6,6"] |=== -| | Server 7.0 & 7.1 | Server 7.2 | Server 7.6 - -| Enhanced Durability -3+| All SDK versions +| | Server 7.2 | Server 7.6 | Server 8.0 -| Durable Writes -3+| Since 3.0 +| KV Range Scan +| N/A +2+| All supported SDK versions -| Analytics -3+| Since 2.7 - -| Collections -3+| Since 3.0.6 - -| Scope-Level {sqlpp} (formerly N1QL) Queries & all Collections features -3+| Since SDK 3.2.0 - -| Request Tracing -3+| Since SDK 3.1.0 +| Vector Search +| N/A +2+| From SDK 3.6.0 (base64 encoded vectors from 3.7.0) -| Cloud Native Gateway -| Not Supported -2+| From SDK 3.5.0 (with xref:operator::overview.adoc[Couchbase Autonomous Operator] 2.6.1+) +| Preferred Server Group Replica Reads +| N/A +2+| From SDK 3.7.4 (with Server 7.6.2 onwards) -| Vector Search +| Vector Query using GSI 2+| N/A -| From SDK 3.6.0 +| From SDK 3.9.0 ① |=== +① As part of the standard SDK {sqlpp} API, it should be compatible with all earlier versions of the SDK -- but it has not been tested. + This table is not an exhaustive list -- just a few highlights -- provided to help assess compatibility of older versions in particular. For alignment of SDKs and new Server features, scroll down to the information below the <>. @@ -221,13 +213,13 @@ The following table provides an overview at the time of Java SDK {sdk_dot_minor} .Recommended Spring Data Couchbase per Server Version Matrix [#table_spring_versions] |=== -| | SDC 5.0 - 5.2 | SDC 5.3 - 5.5 +| | SDC 5.4 - 5.5 | SDC 6.0 | _Status ->_ | _Maintenance Support_ | _New Features, Active Development_ -| *Server 7.0 - 8.0* +| *Server 7.2 - 8.0* | *Compatible* | *Recommended* |=== From 7db2783718f3d0b435ddd6c49e5b8212641e80ea Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Tue, 3 Feb 2026 17:27:13 +0000 Subject: [PATCH 4/8] 3.11 --- antora.yml | 18 +++++-------- .../project-docs/pages/sdk-release-notes.adoc | 27 +++++++++++++++++-- 2 files changed, 31 insertions(+), 14 deletions(-) diff --git a/antora.yml b/antora.yml index 944c1d3e..86e12b51 100644 --- a/antora.yml +++ b/antora.yml @@ -1,27 +1,21 @@ name: java-sdk -version: '3.10' +version: '3.11' title: Java SDK start_page: hello-world:overview.adoc nav: - modules/ROOT/nav.adoc -ext: - preview: - HEAD: - sources: - docs-sdk-common: - branches: release/8.0 asciidoc: attributes: - page-nav-header-levels: 1 + page-nav-header-levels: 2 server_version: '8.0.0' - sdk_current_version: '3.10.1' - sdk_dot_minor: '3.10' + sdk_current_version: '3.11.0' + sdk_dot_minor: '3.11' sdk_dot_major: '3.x' version-server: '8.0' - version-common: '8.0' + version-common: '8.0.1' java_latest_lts_version: '25' name_platform: 'Java' name-sdk: Java SDK - sdk_api: '3.8' + sdk_api: '3.9' sdk-api-link: https://docs.couchbase.com/sdk-api/couchbase-java-client/ sdk-gh-link: https://github.com/couchbase/couchbase-jvm-clients/ diff --git a/modules/project-docs/pages/sdk-release-notes.adoc b/modules/project-docs/pages/sdk-release-notes.adoc index b272a767..d4ca6f65 100644 --- a/modules/project-docs/pages/sdk-release-notes.adoc +++ b/modules/project-docs/pages/sdk-release-notes.adoc @@ -23,13 +23,13 @@ include::{version-common}@sdk:pages:partial$signed.adoc[tag=signed] [#latest-release] -== Java SDK 3.10 Releases +== Java SDK 3.11 Releases We always recommend using the latest version of the SDK -- it contains all of the latest security patches and support for new and upcoming features. All patch releases for each dot minor release should be API compatible, and safe to upgrade; any changes to expected behavior are noted in the release notes that follow. -Version 3.10 of the Java SDK implements the 3.8 xref:compatibility.adoc#api-version[SDK API]. +Version 3.11 of the Java SDK implements the 3.9 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. @@ -44,6 +44,29 @@ echo metrics-opentelemetry ; grep '' $src/metrics-opentelemetry/pom.xml echo metrics-micrometer ; grep '' $src/metrics-micrometer/pom.xml | head -2 | tail -1 ; grep '' $src/pom.xml //// + + +=== Version 3.11.0 (???? February 2026) + +This is the first release of the 3.11 series. + +https://packages.couchbase.com/clients/java/3.11.0/Couchbase-Java-Client-3.11.0.zip[Download] | +https://docs.couchbase.com/sdk-api/couchbase-java-client-3.11.0/index.html[API Reference] | +http://docs.couchbase.com/sdk-api/couchbase-core-io-3.11.0/[Core API Reference] + +The supported and tested dependencies for this release are: + + + + + + + + + +== Java SDK 3.10 Releases + + === Version 3.10.1 (14 January 2026) https://packages.couchbase.com/clients/java/3.10.1/Couchbase-Java-Client-3.10.1.zip[Download] | From 1ae88cbadff1f35d7ef1d8614e97e2c3e455d922 Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Wed, 4 Feb 2026 10:15:17 +0000 Subject: [PATCH 5/8] ARM & Virtual DOC-13557 DOC-12341 --- modules/project-docs/pages/compatibility.adoc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/modules/project-docs/pages/compatibility.adoc b/modules/project-docs/pages/compatibility.adoc index 3b539e41..7ad6e23b 100644 --- a/modules/project-docs/pages/compatibility.adoc +++ b/modules/project-docs/pages/compatibility.adoc @@ -112,6 +112,13 @@ The downside of these workarounds is potentially reduced performance, which can +// Platforms, Chipsets, and Virtual Environments. +include::{version-common}@sdk:shared:partial$platform.adoc[tag=virtual] + + + + + // Network Requirements include::{version-common}@sdk:shared:partial$network-requirements.adoc[] From 380608778d9a9dc100e9782ee3540858ef6201fb Mon Sep 17 00:00:00 2001 From: David Nault Date: Wed, 4 Feb 2026 15:55:51 -0800 Subject: [PATCH 6/8] Release notes for 3.11.0 --- .../project-docs/pages/sdk-release-notes.adoc | 52 +++++++++++++++++-- 1 file changed, 47 insertions(+), 5 deletions(-) diff --git a/modules/project-docs/pages/sdk-release-notes.adoc b/modules/project-docs/pages/sdk-release-notes.adoc index d4ca6f65..f985665a 100644 --- a/modules/project-docs/pages/sdk-release-notes.adoc +++ b/modules/project-docs/pages/sdk-release-notes.adoc @@ -45,23 +45,65 @@ echo metrics-micrometer ; grep '' $src/metrics-micrometer/pom.xml | hea //// - -=== Version 3.11.0 (???? February 2026) - -This is the first release of the 3.11 series. +[[v3.11.0]] +=== Version 3.11.0 (04 February 2026) https://packages.couchbase.com/clients/java/3.11.0/Couchbase-Java-Client-3.11.0.zip[Download] | https://docs.couchbase.com/sdk-api/couchbase-java-client-3.11.0/index.html[API Reference] | -http://docs.couchbase.com/sdk-api/couchbase-core-io-3.11.0/[Core API Reference] +https://docs.couchbase.com/sdk-api/couchbase-core-io-3.11.0/[Core API Reference] The supported and tested dependencies for this release are: +* io.projectreactor:**reactor-core:3.6.9** +* org.reactivestreams:**reactive-streams:1.0.4** +Optional artifacts on top of this SDK version are tested for the following compatibilities: +.Optional Artifact Version Compatibility +[options="header"] +|======================= +| Artifact | Built Against | API Stability +| `tracing-opentelemetry` | OpenTelemetry 1.57.0 | Committed +| `tracing-opentracing` | OpenTracing 0.33.0 | Committed +| `metrics-opentelemetry` | OpenTelemetry 1.57.0 | Volatile +| `metrics-micrometer` | Micrometer 1.12.9 | Volatile +|======================= +==== Bug Fixes +* https://jira.issues.couchbase.com/browse/JVMCBC-1705[JVMCBC-1705]: +Fixed an issue that could cause the transaction cleanup task to terminate unexpectedly, leaving the SDK unable to clean up incomplete transactions. +==== Improvements +* https://jira.issues.couchbase.com/browse/JCBC-1739[JCBC-1739]: +When inserting or replacing a document inside a transaction, it is now possible to specify an expiration time for the document. + +* https://jira.issues.couchbase.com/browse/JVMCBC-1708[JVMCBC-1708]: +Upgraded OpenTelemetry from `1.31.0` to `1.57.0`. + +* https://jira.issues.couchbase.com/browse/JVMCBC-1692[JVMCBC-1692]: +SQL++ statements are now excluded from tracing spans unless the query has parameters. + +* https://jira.issues.couchbase.com/browse/SCBC-501[SCBC-501] +/ https://jira.issues.couchbase.com/browse/JCBC-2207[JCBC-2207]: +Developers who want to use the latest https://opentelemetry.io/docs/specs/semconv/db/database-spans/[OpenTelemetry semantic conventions for database client spans] can now opt in by setting the `OTEL_SEMCONV_STABILITY_OPT_IN` environment variable to `database` (or `database/dup` to create duplicate spans using both old and new conventions). +Java and Scala developers can also opt in via the `observabilitySemanticConventions` client setting, which has a higher precedence than the environment variable. + +* https://jira.issues.couchbase.com/browse/JVMCBC-1635[JVMCBC-1635]: +Upgraded Netty from `4.1.130` to `4.2.9`. +[TIP] +Netty 4.2 introduces a new memory allocator called `AdaptiveByteBufAllocator`. +By default, this version of the Couchbase SDK continues using the tried and true `PooledByteBufAllocator`. +However, the default may change in a future minor version. +If you want to use the new allocator now, set the Java system property `com.couchbase.client.core.deps.io.netty.allocator.type` to `adaptive`. +On the other hand, if you want to insulate your project from possible future changes to the default allocator, set that property to `pooled`. + +* https://jira.issues.couchbase.com/browse/JCBC-2211[JCBC-2211]: +Added an optional `Jackson3JsonSerializer` which uses Jackson 3 for data binding. +[CAUTION] +The new `Jackson3JsonSerializer` does not support the `@Encrypted` annotation for automatic Field-Level Encryption. +If your application relies on this feature, please continue using Jackson 2 for now. == Java SDK 3.10 Releases From f8e26da01d5035e02002177e99bf154bb0751af7 Mon Sep 17 00:00:00 2001 From: Richard Smedley Date: Thu, 5 Feb 2026 09:59:02 +0000 Subject: [PATCH 7/8] Gardening --- modules/project-docs/pages/sdk-release-notes.adoc | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/modules/project-docs/pages/sdk-release-notes.adoc b/modules/project-docs/pages/sdk-release-notes.adoc index f985665a..4c7d7de7 100644 --- a/modules/project-docs/pages/sdk-release-notes.adoc +++ b/modules/project-docs/pages/sdk-release-notes.adoc @@ -45,7 +45,6 @@ echo metrics-micrometer ; grep '' $src/metrics-micrometer/pom.xml | hea //// -[[v3.11.0]] === Version 3.11.0 (04 February 2026) https://packages.couchbase.com/clients/java/3.11.0/Couchbase-Java-Client-3.11.0.zip[Download] | @@ -80,14 +79,14 @@ Fixed an issue that could cause the transaction cleanup task to terminate unexpe When inserting or replacing a document inside a transaction, it is now possible to specify an expiration time for the document. * https://jira.issues.couchbase.com/browse/JVMCBC-1708[JVMCBC-1708]: -Upgraded OpenTelemetry from `1.31.0` to `1.57.0`. +Upgraded `OpenTelemetry` from `1.31.0` to `1.57.0`. * https://jira.issues.couchbase.com/browse/JVMCBC-1692[JVMCBC-1692]: -SQL++ statements are now excluded from tracing spans unless the query has parameters. +{sqlpp} statements are now excluded from tracing spans unless the query has parameters. -* https://jira.issues.couchbase.com/browse/SCBC-501[SCBC-501] -/ https://jira.issues.couchbase.com/browse/JCBC-2207[JCBC-2207]: -Developers who want to use the latest https://opentelemetry.io/docs/specs/semconv/db/database-spans/[OpenTelemetry semantic conventions for database client spans] can now opt in by setting the `OTEL_SEMCONV_STABILITY_OPT_IN` environment variable to `database` (or `database/dup` to create duplicate spans using both old and new conventions). +* https://jira.issues.couchbase.com/browse/JCBC-2207[JCBC-2207]: +Developers who want to use the latest https://opentelemetry.io/docs/specs/semconv/db/database-spans/[OpenTelemetry semantic conventions for database client spans] +can now opt in by setting the `OTEL_SEMCONV_STABILITY_OPT_IN` environment variable to `database` (or `database/dup` to create duplicate spans using both old and new conventions). Java and Scala developers can also opt in via the `observabilitySemanticConventions` client setting, which has a higher precedence than the environment variable. * https://jira.issues.couchbase.com/browse/JVMCBC-1635[JVMCBC-1635]: From 0916f7e1c8335bb37bf9942871dab8d364bd375b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 12:28:45 +0000 Subject: [PATCH 8/8] Bump io.grpc:grpc-protobuf from 1.53.0 to 1.54.2 Bumps [io.grpc:grpc-protobuf](https://github.com/grpc/grpc-java) from 1.53.0 to 1.54.2. - [Release notes](https://github.com/grpc/grpc-java/releases) - [Commits](https://github.com/grpc/grpc-java/compare/v1.53.0...v1.54.2) --- updated-dependencies: - dependency-name: io.grpc:grpc-protobuf dependency-version: 1.54.2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c0ba1fc8..88253d62 100644 --- a/pom.xml +++ b/pom.xml @@ -80,7 +80,7 @@ io.grpc grpc-protobuf - 1.53.0 + 1.54.2 io.grpc