Skip to content

Releases: TheElectronWill/night-config

NightConfig v3.4.0 - nicer with primitives

25 Jul 12:32
Compare
Choose a tag to compare

In almost all cases, this release is backward-compatible with previous 3.x.x code. However, there are some changes related to the conversion of null values and Scala methods. They could, in very specific cases, force you to modify your code.

New

  • Primitive getters getInt, getLong, etc. in UnmodifiableConfig and UnmodifiableConfig.Entry
  • Optional getters in UnmodifiableConfig.Entry
  • Better handling of null values stored as NULL_OBJECT with the methods getRaw(path) and isNull(path)
  • The conversion function of ConversionTable now receives NULL_OBJECT instead of null if the value exist but "is null".

Fixed

  • Issue #43: FileConfig.autosave() works again
  • Issue #44: NightConfig is now available on Maven Central
  • Issue #45: you can now get a long from an Integer value or vice-versa

Removed

  • $minus$eq and $plus$eq methods which couldn't be called nicely from Scala

NightConfig v3.3.0 - support TOML v0.5

11 Jul 10:12
Compare
Choose a tag to compare
  • Fixes multiple bugs like #42
  • Supports TOML v0.5.0
  • Improved error messages

NightConfig v3.2.0 - support Java NIO Path

28 Jun 12:24
Compare
Choose a tag to compare

New

  • All the operations on File now work on java.nio.file.Path too!
  • New parameter emptyDataAccepted for the JSON parser

Fixes

  • Fix String parsing which was completely broken because FastStringReader was incorrectly implemented
  • When possible, JsonParser now returns an int value instead of a long
  • Fix json parsing of empty objects and empty arrays
  • Fix json parsing of deeply nested structures

NightConfig v3.1.1 - Json bugfixes

26 Jun 11:59
Compare
Choose a tag to compare

NightConfig v3.1.0 - better, simpler, faster!

05 May 21:38
Compare
Choose a tag to compare

Fixes

  • Fix null values unsupported by concurrent configurations. This is done by replacing null by NULL_OBJECT in the config's underlying HashMap. These NULL_OBJECTs aren't visible when getting/setting the configuration's values, but they are visible when using the underlying map.
  • Fix bugs in TOML and YAML parsers
  • Fix thread-safety issue that shows up whan using autoreload and autosave together

Improvements

  • Implement the last TOML updates:
    • Compound (aka "dotted") keys
    • Hexadecimal, octal and binary integers
  • Improve the performance of autoreloaded and autosaved FileConfigs by avoiding useless operations
  • New method: getOrElse which is a getter with a default value, see #34
  • Simplify ConfigFormat and the generics everywhere! Moving from ConfigFormat<C extends D, D extends Config, W extends UnmodifiableConfig> to ConfigFormat<C extends Config>.
  • More unit tests
  • More documentation, and a new wiki!

NightConfig v3.0.4 - TOML bugfixes

06 Mar 18:26
Compare
Choose a tag to compare

NightConfig v3.0.3 - bugfixes and dependencies update

19 Nov 18:43
Compare
Choose a tag to compare
  • Updated JUnit to 5.0.2 stable
  • Updated TypesafeConfig to 1.3.2 stable
  • Fixed parsing of TOML inline tables

NightConfig v3.0.2 - more bugfixes

12 Sep 20:18
Compare
Choose a tag to compare
  • Fixed a NullPointerException when building non-concurrent CommentedFileConfigs (non-commented FileConfig were note affected).

NightConfig v3.0.1 - small but interesting improvements

04 Aug 14:34
Compare
Choose a tag to compare

Changes from version 3.0:

  • Moved scala apply(path) from Config to UnmodifiableConfig - which is what should have been done in v3.0, since the method get is in UnmodifiableConfig.
  • Added scala methods += and -= to ConversionTable
  • New annotation: @SpecValidator, which allows you to define a custom validator class for a field. There is an example of this feature here.

NightConfig v3.0 stable

03 Aug 16:57
Compare
Choose a tag to compare

Changes from the beta version:

  • Fixed the javadoc so that the gradle build works
  • FileConfig.close() now ensures that the pending writing operations complete
  • ConversionTable now traverses the class hierarchy to find an appropriate conversion function
  • Added convenient methods for Scala in the Config interface: apply calls get, update calls set, and += calls add
  • Added more code examples