Releases: configcat/java-sdk
Releases · configcat/java-sdk
v9.4.1
v9.4.0
Improvements
- Optimize log message formatting.
Breaking Changes
- Changed
LogFilterFunction.apply()
methodmessage
parameter type toObject
. The formatted messageString
can be obtained by callingtoString
. (It is guaranteed that the message string is built only once even iftoString
called multiple times.)
v9.3.0
Improvements
- Refine SDK locking mechanism
- Add new
logFilter(LogFilterFunction)
to the client customization options. TheLogFilterFunction
interface allows a custom log filtering implementation.
v9.2.0
Improvements / Changes
- Deprecated
addOnClientReady(Runnable callback)
hook and added a new versionaddOnClientReady(Consumer<ClientCacheState> callback)
ConfigCatHooks
synchronization replaced with ReentrantReadWriteLock- Added
waitForReadyAsync
method to client - ConfigCat
User
object methods visibility fixed.
v9.1.2
v9.1.1
Fixed
- getKeyAndValue possible NPE
v9.1.0
Breaking Changes
- Rename
SettingsValue
to correctSettingValue
Improvements/fixes
- Fix hashed starts/ends with comparator trimming
userAttributeToString
method handlesFloat
- Fix
getKeyAndValue
missing exception - Improve prerequisite flag evaluation type checks
- Typo fixes and more test cases added
v9.0.1
Improvements/Fixes:
- Add target rule percentage options to
getKeyAndValue
andgetKeyAndValueAsync
results. - Improve double user attribute convert to String
- Json file override handle unicode characters
- Added extra config v6 evaluation tests
- Error message and java doc improvements
v9.0.0
New features and improvements:
- Add support for the new Config JSON v6 format: update the config model and implement new features in setting evaluation logic.
- Overhaul setting evaluation-related logging and make it consistent across SDKs.
- Performance improvements to setting evaluation when info level logging is turned off.
Breaking changes:
- Change the type of the
User
custom attribute map fromMap<String, String>
toMap<String, Object>
to allow other values thanString
. - The config JSON v5 format is no longer accepted by flag overrides. If you use this feature, you will need to convert your override JSON file(s) to the v6 format. You can do this using the
config-json convert v5-to-v6
command of the ConfigCat CLI tool. - Rename the
matchedEvaluationRule
property tomatchedTargetingRule
and thematchedEvaluationPercentageRule
property tomatchedPercentageOption
inEvaluationDetails
. - Change config model (
Config
and related interfaces/enums). - Throw
IllegalArgumentException
when the SDK key passed toConfigCatClient.get
is in an invalid format (unless the client is set up to use local-only flag override behaviour).