From b69216b2afaa6195cda2efb728624fe74c7a1f8e Mon Sep 17 00:00:00 2001 From: teodordelibasic-db Date: Wed, 12 Nov 2025 15:40:27 +0000 Subject: [PATCH 1/2] Initial commit Signed-off-by: teodordelibasic-db --- NEXT_CHANGELOG.md | 25 +++++++++++++++++++++++++ README.md | 34 +++++++++++++++++----------------- pom.xml | 2 +- 3 files changed, 43 insertions(+), 18 deletions(-) diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index 1b000f6..e45accf 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -4,10 +4,35 @@ ### New Features and Improvements +- Updated Protocol Buffers from 3.24.0 to 4.33.0 for improved performance and latest features +- Updated gRPC dependencies from 1.58.0 to 1.76.0 for enhanced stability and security +- Updated SLF4J logging framework from 1.7.36 to 2.0.17 for modern logging capabilities + ### Bug Fixes ### Documentation +- Updated README.md with new dependency versions +- Updated protoc compiler version recommendations +- Updated Logback version compatibility for SLF4J 2.0 + ### Internal Changes +- Updated maven-compiler-plugin from 3.11.0 to 3.14.1 +- All gRPC artifacts now consistently use version 1.76.0 + ### API Changes + +**⚠️ Breaking Changes:** + +- **Protocol Buffers 4.x Migration**: If you use the regular JAR (not the fat JAR), you must upgrade to protobuf-java 4.33.0 and regenerate any custom `.proto` files using protoc 4.x + - Download protoc 4.33.0 from: https://github.com/protocolbuffers/protobuf/releases/tag/v33.0 + - Regenerate proto files: `protoc --java_out=src/main/java src/main/proto/record.proto` + - Protobuf 4.x is binary-compatible over the wire with 3.x, but generated Java code may differ + +- **SLF4J 2.0 Migration**: If you use a logging implementation, you may need to update it: + - `slf4j-simple`: Use version 2.0.17 or later + - `logback-classic`: Use version 1.4.14 or later (for SLF4J 2.0 compatibility) + - `log4j-slf4j-impl`: Use version 2.20.0 or later + +**Note**: If you use the fat JAR (`jar-with-dependencies`), all dependencies are bundled and no action is required. diff --git a/README.md b/README.md index 2b03c7d..13d767b 100644 --- a/README.md +++ b/README.md @@ -47,19 +47,19 @@ The Databricks Zerobus Ingest SDK for Java provides a high-performance client fo - No additional dependencies required - all dependencies are bundled **When using the regular JAR**: -- [`protobuf-java` 3.24.0](https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java/3.24.0) -- [`grpc-netty-shaded` 1.58.0](https://mvnrepository.com/artifact/io.grpc/grpc-netty-shaded/1.58.0) -- [`grpc-protobuf` 1.58.0](https://mvnrepository.com/artifact/io.grpc/grpc-protobuf/1.58.0) -- [`grpc-stub` 1.58.0](https://mvnrepository.com/artifact/io.grpc/grpc-stub/1.58.0) +- [`protobuf-java` 4.33.0](https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java/4.33.0) +- [`grpc-netty-shaded` 1.76.0](https://mvnrepository.com/artifact/io.grpc/grpc-netty-shaded/1.76.0) +- [`grpc-protobuf` 1.76.0](https://mvnrepository.com/artifact/io.grpc/grpc-protobuf/1.76.0) +- [`grpc-stub` 1.76.0](https://mvnrepository.com/artifact/io.grpc/grpc-stub/1.76.0) - [`javax.annotation-api` 1.3.2](https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api/1.3.2) -- [`slf4j-api` 1.7.36](https://mvnrepository.com/artifact/org.slf4j/slf4j-api/1.7.36) -- An SLF4J implementation such as [`slf4j-simple` 1.7.36](https://mvnrepository.com/artifact/org.slf4j/slf4j-simple/1.7.36) or [`logback-classic` 1.2.11](https://mvnrepository.com/artifact/ch.qos.logback/logback-classic/1.2.11) +- [`slf4j-api` 2.0.17](https://mvnrepository.com/artifact/org.slf4j/slf4j-api/2.0.17) +- An SLF4J implementation such as [`slf4j-simple` 2.0.17](https://mvnrepository.com/artifact/org.slf4j/slf4j-simple/2.0.17) or [`logback-classic` 1.4.14](https://mvnrepository.com/artifact/ch.qos.logback/logback-classic/1.4.14) ### Build Requirements (only for building from source) - **Java**: 8 or higher - [Download Java](https://adoptium.net/) - **Maven**: 3.6 or higher - [Download Maven](https://maven.apache.org/download.cgi) -- **Protocol Buffers Compiler** (`protoc`): 24.4 - [Download protoc](https://github.com/protocolbuffers/protobuf/releases/tag/v24.4) (for compiling your own `.proto` schemas) +- **Protocol Buffers Compiler** (`protoc`): 33.0 - [Download protoc](https://github.com/protocolbuffers/protobuf/releases/tag/v33.0) (for compiling your own `.proto` schemas) ## Quick Start User Guide @@ -163,32 +163,32 @@ dependencies { com.google.protobuf protobuf-java - 3.24.0 + 4.33.0 io.grpc grpc-netty-shaded - 1.58.0 + 1.76.0 io.grpc grpc-protobuf - 1.58.0 + 1.76.0 io.grpc grpc-stub - 1.58.0 + 1.76.0 org.slf4j slf4j-api - 1.7.36 + 2.0.17 org.slf4j slf4j-simple - 1.7.36 + 2.0.17 javax.annotation @@ -290,7 +290,7 @@ Create `pom.xml`: com.google.protobuf protobuf-java - 3.24.0 + 4.33.0 @@ -331,7 +331,7 @@ protoc --java_out=src/main/java src/main/proto/record.proto This generates `src/main/java/com/example/proto/Record.java`. -**Note**: Ensure you have `protoc` version 24.4 installed. [Download protoc](https://github.com/protocolbuffers/protobuf/releases/tag/v24.4) if needed. The generated Java files are compatible with `protobuf-java` 3.24.0. +**Note**: Ensure you have `protoc` version 33.0 installed. [Download protoc](https://github.com/protocolbuffers/protobuf/releases/tag/v33.0) if needed. The generated Java files are compatible with `protobuf-java` 4.33.0. ### Generate Protocol Buffer Schema from Unity Catalog (Alternative) @@ -639,7 +639,7 @@ Add to your Maven dependencies: org.slf4j slf4j-simple - 1.7.36 + 2.0.17 ``` @@ -657,7 +657,7 @@ Add to your Maven dependencies: ch.qos.logback logback-classic - 1.2.11 + 1.4.14 ``` diff --git a/pom.xml b/pom.xml index 727424e..0f543ff 100644 --- a/pom.xml +++ b/pom.xml @@ -114,7 +114,7 @@ protobuf-maven-plugin 0.6.1 - com.google.protobuf:protoc:3.24.0:exe:${os.detected.classifier} + com.google.protobuf:protoc:4.33.0:exe:${os.detected.classifier} grpc-java io.grpc:protoc-gen-grpc-java:1.76.0:exe:${os.detected.classifier} From a29f2376c3fe95312d50584e4602b7240a6baba0 Mon Sep 17 00:00:00 2001 From: teodordelibasic-db Date: Wed, 12 Nov 2025 16:01:15 +0000 Subject: [PATCH 2/2] Remove warning emoji Signed-off-by: teodordelibasic-db --- NEXT_CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index e45accf..8403e31 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -23,7 +23,7 @@ ### API Changes -**⚠️ Breaking Changes:** +**Breaking Changes** - **Protocol Buffers 4.x Migration**: If you use the regular JAR (not the fat JAR), you must upgrade to protobuf-java 4.33.0 and regenerate any custom `.proto` files using protoc 4.x - Download protoc 4.33.0 from: https://github.com/protocolbuffers/protobuf/releases/tag/v33.0