This is an automated email from the ASF dual-hosted git repository.

mmodzelewski pushed a commit to branch java-0.9.1-snapshot
in repository https://gitbox.apache.org/repos/asf/iggy.git

commit 8af0588a8fcab26bf9bb547cfab8c9fbf1a1e91b
Author: Maciej Modzelewski <[email protected]>
AuthorDate: Mon Sep 21 10:10:14 2026 +0200

    chore(java): start 0.9.1-SNAPSHOT and document the 0.9.0 SDK
    
    The Java SDK 0.9.0 is on Maven Central, but the README still pointed
    readers at 0.9.0-SNAPSHOT and the build still carried the released
    version.
    
    The README now names 0.9.0 as the dependency and moves the snapshot
    section to 0.9.1-SNAPSHOT, which the build version follows. The
    Quick Start drops the pre-release upgrade warning and describes what
    the TCP client builder does instead.
---
 foreign/java/README.md         | 32 +++++++++++++-------------------
 foreign/java/gradle.properties |  2 +-
 2 files changed, 14 insertions(+), 20 deletions(-)

diff --git a/foreign/java/README.md b/foreign/java/README.md
index f64f75615..33896cbcc 100644
--- a/foreign/java/README.md
+++ b/foreign/java/README.md
@@ -14,14 +14,14 @@ _This is part of the Apache Iggy monorepo. For the main 
project, see the [root r
 
 ## Installation
 
-These examples target server **0.9.0**. The released `0.8.0` artifact uses the 
older TCP protocol. Use `0.9.0-SNAPSHOT` for the pre-release SDK, with the ASF 
repository configured under [Snapshot Versions](#snapshot-versions), or build 
the SDK and server from the same checkout. Java 17 or newer is required.
+These examples target server **0.9.0**. SDK `0.9.0` is on Maven Central and 
works with server `0.9.0`. The older `0.8.0` artifact speaks the previous TCP 
protocol and does not work with server `0.9.0`. Java 17 or newer is required.
 
 Add the dependency to your project:
 
 **Gradle:**
 
 ```gradle
-implementation 'org.apache.iggy:iggy:0.9.0-SNAPSHOT'
+implementation 'org.apache.iggy:iggy:0.9.0'
 ```
 
 **Maven:**
@@ -30,15 +30,15 @@ implementation 'org.apache.iggy:iggy:0.9.0-SNAPSHOT'
 <dependency>
     <groupId>org.apache.iggy</groupId>
     <artifactId>iggy</artifactId>
-    <version>0.9.0-SNAPSHOT</version>
+    <version>0.9.0</version>
 </dependency>
 ```
 
-Check [Maven 
Central](https://central.sonatype.com/artifact/org.apache.iggy/iggy) for 
`0.9.0` release availability.
+See [Maven 
Central](https://central.sonatype.com/artifact/org.apache.iggy/iggy) for all 
published versions.
 
 ### Snapshot Versions
 
-Snapshot versions are also available through the ASF snapshot repository:
+Development builds of the next release carry the version `0.9.1-SNAPSHOT`. Get 
them from the ASF snapshot repository:
 
 **Gradle:**
 
@@ -51,7 +51,7 @@ repositories {
 }
 
 dependencies {
-    implementation 'org.apache.iggy:iggy:0.9.0-SNAPSHOT'
+    implementation 'org.apache.iggy:iggy:0.9.1-SNAPSHOT'
 }
 ```
 
@@ -72,20 +72,14 @@ dependencies {
     <dependency>
         <groupId>org.apache.iggy</groupId>
         <artifactId>iggy</artifactId>
-        <version>0.9.0-SNAPSHOT</version>
+        <version>0.9.1-SNAPSHOT</version>
     </dependency>
 </dependencies>
 ```
 
 ## Quick Start
 
-Cluster auto-commit polling over TCP/TLS keeps group membership on the
-coordinator and uses separate connections to partition primaries. It requires
-server support for binary commands 14, 103 and 104. Pause binary auto-commit
-consumers for the whole upgrade: upgrade every server first, then the SDKs,
-and restart consumers so they rejoin their groups. Older SDKs can lose 
membership
-when a backup refuses an offset commit; the new SDK does not fall back to 
legacy
-polling. Use `Iggy.tcpClientBuilder()` to get this routing and session 
management.
+`Iggy.tcpClientBuilder()` handles the routing and the session for you. Over 
TCP and TCP/TLS, the client keeps the consumer group membership on the 
coordinator. It polls each partition through a separate connection to the 
primary of that partition.
 
 Start the server with the [example 
prerequisites](../../examples/java/#running-examples) and matching credentials. 
The following snippets show alternative clients. Close a blocking client with 
`close()` or an async client with `close().join()` when finished.
 
@@ -231,7 +225,7 @@ callback stalls every client that shares the group.
 
 ```java
 // Get SDK version
-String version = Iggy.version();  // e.g., "0.9.0-SNAPSHOT"
+String version = Iggy.version();  // e.g., "0.9.0"
 
 // Get detailed version info
 IggyVersion info = Iggy.versionInfo();
@@ -243,7 +237,7 @@ info.getUserAgent();   // User-Agent string for HTTP
 
 ## Exception Handling
 
-The SDK's custom exception types inherit from `IggyException`. Joining a 
failed future can wrap the cause in `CompletionException`; the HTTP client's 
`close()` method declares `IOException`. Handle those boundaries as well as 
specific SDK errors.
+The SDK's custom exception types inherit from `IggyException`. When you join a 
failed future, the cause can come back inside a `CompletionException`. The HTTP 
client's `close()` method declares `IOException`. Handle these two boundaries 
as well as the specific SDK errors.
 
 ## Examples
 
@@ -278,7 +272,7 @@ The wrapper script will:
 
 No manual Gradle installation is required.
 
-**Note:** Only the Unix shell wrapper (`gradlew`) is provided. Windows users 
should use WSL, Git Bash, or install Gradle manually.
+**Note:** Only the Unix shell wrapper (`gradlew`) is provided. On Windows, use 
WSL or Git Bash, or install Gradle manually.
 
 ## Contributing
 
@@ -286,6 +280,6 @@ Before opening a pull request:
 
 1. **Format code:** `./gradlew spotlessApply`
 2. **Validate build:** `./gradlew check`
-3. **Use AssertJ for assertions:** Tests should use 
[AssertJ](https://assertj.github.io/doc/) (`assertThat(...)`) instead of JUnit 
assertions.
+3. **Use AssertJ for assertions:** Write test assertions with 
[AssertJ](https://assertj.github.io/doc/) (`assertThat(...)`) instead of JUnit 
assertions.
 
-This ensures code style compliance and that all tests and checkstyle 
validations pass.
+These steps keep the code style compliant and make sure that all tests and 
checkstyle validations pass.
diff --git a/foreign/java/gradle.properties b/foreign/java/gradle.properties
index 45031112e..d6e8e6b14 100644
--- a/foreign/java/gradle.properties
+++ b/foreign/java/gradle.properties
@@ -15,5 +15,5 @@
 # specific language governing permissions and limitations
 # under the License.
 
-version=0.9.0
+version=0.9.1-SNAPSHOT
 group=org.apache.iggy

Reply via email to