Releases: harness/ff-java-server-sdk
1.9.0
Allow building the SDK with Java 25 LTS and updates various transitive dependencies for fixing CVE-2025-48924, CVE-2024-12798, CVE-2024-12801 & CVE-2025-53864
What's Changed
- techdebt: [FFM-12512]: Fix build for JDK 24 by @andybharness in #207
- fix: [FFM-12578]: Fixes various CVEs by @andybharness in #208
- feat: [FFM-12612]: Fix build to work with Java 25 by @andybharness in #209
- fix: [FFM-12612]: Update Gradle version to build with JDK 25 LTS by @andybharness in #210
- techdebt: [FFM-12612]: Bump version by @andybharness in #211
Full Changelog: 1.8.3...1.9.0
1.8.3
What's Changed
- feat: [FFM-12489]: Adding experimental support for HTTP web proxy properties by @andybharness in #205
Full Changelog: 1.8.2...1.8.3
1.8.2
What's Changed
- fix: [FFM-12506]: Avoid logging endpoint errors if SDK is shutting down by @andybharness in #206
Full Changelog: 1.8.1...1.8.2
1.8.1
This is a minor release with no actual bug fixes or features. It updates the build files to migrate away from OSSRH to use Maven Central Repository instead.
What's Changed
- feat: [FFM-12481]: Migrate to Maven Central Portal by @andybharness in #204
Full Changelog: 1.8.0...1.8.1
1.8.0
What's Changed
Enhancements:
- FFM-12087 New
HarnessConfig
options:maxRequestRetry
: Defines the maximum number of retry attempts for the following request: authentication, polling, metrics, and reacting to stream eventsflushAnalyticsOnClose
: Indicates whether to flush analytics data when the SDK is closed.flushAnalyticsOnCloseTimeout
: The timeout for flushing analytics on SDK close.
For full details see associated Java docs
For sample usage see ConfigExample
Bug Fixes:
- FFM-12087:
- Fixed an issue where initial connection attempts to the stream, as well as reconnection attempts after disconnection, were limited to 5 tries. Now, reconnection attempts have no limit and use exponential backoff, with a 60-second cap on retry intervals reached after several attempts.
- Fixed a memory leak caused when the SDK was closed but the stream’s
ScheduledExecutorService
remained active. All SDK resources are now properly shut down whenclose()
is called. - Fixed an issue where, after calling
close()
and shutting down the stream, the SDK would still make a poll request, resulting in error logs due to evicted network resources. Now, no polling requests are made afterclose()
is invoked.
by @erdirowlands in #203
Full Changelog: 1.7.0...1.8.0
1.7.0
What’s Changed
Enhancements:
Introduced the ability to store and retrieve FeatureSnapshot (previous and current feature config).
For more details: examples/src/main/java/io/harness/ff/examples/EventExampleWithFeatureSnapshot.java
Full Changelog: 1.6.1...1.7.0
1.6.1
What's Changed
- FFM-11654 Sort AND/OR rules when caching group instead of during an evaluation call, which could result in latency if a group is large by @erdirowlands in #192
New Contributors
- @erdirowlands made their first contribution in #192
Full Changelog: 1.6.0...1.6.1
1.6.0
What's Changed
- [FFM-10981] - Update Java SDK example to include a delay by @andybharness in #185
- [FFM-11193] - Target v2: Adding support for AND/OR in clauses by @andybharness in #186
- [FFM-10861] - Target v2: Return false when no clauses exist by @andybharness in #187
- [FFM-11356] - Add new query parameter to target-segments by @andybharness in #188
- [FFM-11425] - Add config option to supress SDK code 6001 by @andybharness in #189
- [FFM-11502] - Update BC to 1.78.1 by @andybharness in #190
- [FFM-11459] - Downgrade OpenAPI plugin to allow broader range of SpringBoot compatibility by @andybharness in #191
Full Changelog: 1.5.2...1.6.0
1.5.2
What's Changed
- [FFM-10816] - Remove metrics flush on map overflow by @andybharness in #183
- [FFM-10821] - Add Retry-After HTTP header support by @andybharness in #184
Known issues
On startup java.lang.NoSuchMethodError: kotlin.*
or similar is thrown.
This is caused by conflicting kotlin-stdlib
JARs on the classpath brought in by okhttp
.
- Make sure no other dependency brings in
kotlin-stdlib
earlier than1.4.10
- If you're using SpringBoot, it's recommend that you upgrade to at least
2.7.x
Full Changelog: 1.5.1...1.5.2
1.5.1
What's Changed
- [FFM-10377] - Update logback to remove CVE-2023-6481 by @andybharness in #180
- [FFM-10760] - Use a single ExecutorService for UpdateProcessor by @andybharness in #182
Known issues
On startup java.lang.NoSuchMethodError: kotlin.*
or similar is thrown.
This is caused by conflicting kotlin-stdlib
JARs on the classpath brought in by okhttp
.
- Make sure no other dependency brings in
kotlin-stdlib
earlier than1.4.10
- If you're using SpringBoot, it's recommend that you upgrade to at least
2.7.x
Full Changelog: 1.5.0...1.5.1