Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
dd0baf8
Make JDK 17 the minimum Java version
claude Feb 4, 2026
f32d2e4
Add ErrorProne static analysis and fix issues
claude Feb 4, 2026
2a0c5d0
Modernize Java code generator for JDK 17
claude Feb 4, 2026
327fd8f
Enable ErrorProne validation of generated Thrift code
claude Feb 4, 2026
9efda40
Improve Maven artifact metadata and remove legacy Android library
claude Feb 4, 2026
524884a
Add NullAway null safety analysis with JSpecify annotations
claude Feb 4, 2026
98802ea
Remove deprecated org.apache.thrift.annotation.Nullable
claude Feb 4, 2026
c7eeeb9
Enhance Dependabot configuration for Java dependencies
claude Feb 4, 2026
d3234a4
Upgrade Java dependencies and enhance Dependabot configuration
claude Feb 4, 2026
a311e25
Add missing dependencies to Dependabot groups
claude Feb 4, 2026
d65b759
Fix import ordering for spotlessCheck
claude Feb 4, 2026
e97e707
Fix code generator to skip package-info.java when no package specified
claude Feb 4, 2026
a4a1476
Fix null-safety issues in TUnion and add JVM 17 target to Kotlin cros…
claude Feb 4, 2026
de65e04
Upgrade Spotless to 8.2.1 and google-java-format to 1.33.0
greggdonovan Feb 4, 2026
97a4687
Fix Gradle 10 deprecation warnings in build scripts
greggdonovan Feb 5, 2026
cb403bd
Downgrade ErrorProne to 2.42.0 for JDK 17 compatibility
greggdonovan Feb 5, 2026
aedb3d4
Fix NullAway error in TProtocol private constructor
greggdonovan Feb 5, 2026
4c94963
Fix null-safety and ErrorProne warnings in TProtocol
greggdonovan Feb 5, 2026
3bbbe3b
Fix IntLongMath overflow warning in TProtocol
greggdonovan Feb 5, 2026
43c9ee9
Add missing @Override to TTransport.close()
greggdonovan Feb 5, 2026
b7ed762
Use instanceof pattern matching in TField.equals()
greggdonovan Feb 5, 2026
42875e8
Fix ErrorProne and NullAway warnings (batch 1)
greggdonovan Feb 5, 2026
99d4e6c
Fix portability/docs follow-ups and add optional test fixtures
greggdonovan Feb 5, 2026
c1999a9
Define HAVE_CLANG_FUZZER in configure for fuzz Makefiles
greggdonovan Feb 5, 2026
9311573
Apply remaining Java ErrorProne/NullAway fixes for JDK17 CI
greggdonovan Feb 5, 2026
b76f0e7
Format Java sources for spotless and finalize framed transport fixes
greggdonovan Feb 5, 2026
19de7d0
Fix Java nullability generation for JDK17 and restore framed buffer c…
greggdonovan Feb 5, 2026
9db7617
Fix Java precross build checks and shadow jar compatibility
greggdonovan Feb 5, 2026
2388d84
Fix Java publishing config for new Shadow plugin
greggdonovan Feb 5, 2026
efd2b15
Ignore JSpecify nullability in Kotlin module builds
greggdonovan Feb 6, 2026
7f056ff
Format Kotlin Gradle scripts for ktfmt check
greggdonovan Feb 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,54 @@ updates:
directory: "/"
schedule:
interval: monthly
labels:
- "dependencies"
- "github-actions"

- package-ecosystem: "gradle"
directory: "/lib/java"
schedule:
interval: monthly
labels:
- "dependencies"
- "java"
groups:
# Group static analysis tools together
static-analysis:
patterns:
- "com.google.errorprone:*"
- "com.uber.nullaway:*"
- "org.jspecify:*"
- "net.ltgt.errorprone"
- "com.github.spotbugs"
- "com.h3xstream.findsecbugs:*"
- "net.sourceforge.pmd:*"
- "com.diffplug.spotless"
# Group test dependencies together
testing:
patterns:
- "org.junit*"
- "org.mockito*"
# Group Apache dependencies together
apache:
patterns:
- "org.apache.httpcomponents*"
- "org.apache.commons:*"
- "org.apache.tomcat*"
# Group Jakarta EE APIs together
jakarta:
patterns:
- "jakarta.servlet:*"
- "jakarta.annotation:*"
# Group logging dependencies together
logging:
patterns:
- "org.slf4j:*"

- package-ecosystem: "gradle"
directory: "/lib/kotlin"
schedule:
interval: monthly
labels:
- "dependencies"
- "kotlin"
8 changes: 4 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ jobs:
needs: compiler
runs-on: ubuntu-24.04
env:
GRADLE_VERSION: "8.4"
GRADLE_VERSION: "9.3.1"
steps:
- uses: actions/checkout@v6

Expand All @@ -250,7 +250,7 @@ jobs:
- name: Setup gradle
run: |
wget https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-bin.zip -q -O /tmp/gradle-$GRADLE_VERSION-bin.zip
(echo "3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae /tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -)
(echo "b266d5ff6b90eada6dc3b20cb090e3731302e553a27c5d3e4df1f0d76beaff06 /tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -)
unzip -d /tmp /tmp/gradle-$GRADLE_VERSION-bin.zip
sudo mv /tmp/gradle-$GRADLE_VERSION /usr/local/gradle
sudo ln -s /usr/local/gradle/bin/gradle /usr/local/bin
Expand Down Expand Up @@ -818,8 +818,8 @@ jobs:
- uses: actions/setup-java@v5
with:
distribution: temurin
# here we intentionally use an older version so that we also verify Java 17 compiles to it
java-version: 8
# Java 17 is the minimum supported version
java-version: 17
cache: "gradle"

- name: Install openssl and certificates (for SSL tests)
Expand Down
6 changes: 5 additions & 1 deletion CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,11 @@
### Java

- [THRIFT-5858](https://issues.apache.org/jira/browse/THRIFT-5858) - Introduce new type MESSAGE_SIZE_LIMIT in TTransportException
- Java 17 is now the minimum supported JDK for the Java library and build
- Java generator migration notes:
- Removed `org.apache.thrift.Option`; optional fields are now generated as `java.util.Optional`
- Removed `java:option_type=...`; use the default optional-field generation
- `jakarta.annotation.Generated` is now the default; use `java:javax_annotations` to generate legacy `javax.annotation.Generated`

### netstd

Expand Down Expand Up @@ -4378,4 +4383,3 @@ New Features and Bug Fixes:

Ruby:
- Support for TCompactProtocol [THRIFT-332]

Loading
Loading