Skip to content

1.3.0-RC1: Capitalizing on maturity while preparing for version 2.0

Latest

Choose a tag to compare

@A248 A248 released this 16 Jun 23:07
· 2 commits to master since this release
1.3.0-RC1
ab028f8

This series, 1.3.0, will be the last DazzleConf release track before API 2.0. At this point, DazzleConf 1.x is largely stable and has seen plenty of usage. However, it suffers architectually from a number of flaws, which is why version 2.0 is in development. This release, 1.3.0-RC1, stabilizes the changes in 1.3.0-M1 and 1.3.0-M2 and adds some changes of its own.

The features deprecated by this release -- dotted key paths, value validators, and @ConfSerialisers -- will be removed without replacement in version 2.0.

Bug fixes:

  • Tell Gson to give us accurate long values. Affects using very big longs with dazzleconf-ext-gson (#44)

Deprecations:

  • Dotted key paths in @ConfKey. This is a strange way of specifying sub-paths, that I hope no one uses - #24
  • ValueValidator and @ConfValidator
  • @ConfSerialisers

Migration

Dotted key paths in @ConfKey are now disabled by default. Using them will throw an exception. To re-enable them, you have to set a flag in ConfigurationOptions. This can be done like so:

ConfigurationOptions configOptions = new ConfigurationOptions.Builder().setDottedPathInConfKey(true).build();

Migration checklist from 1.2.x:

  • Dotted key paths are now disabled by default. To re-enable them, see above.
  • Since 1.3.0-M1: Null collection elements are now (correctly) prohibited. If you were accidentally relying on the presence of null collection elements in your ValueSerialiser implementation, your code's behavior may be affected.
  • Since 1.3.0-M1: MissingValueException is now correctly thrown in the case where it should be thrown (MissingKeyException used to be thrown instead).