circe v0.12.0-M1 Release Notes
Release Date: 2019-04-27 // about 5 years ago-
๐ This release updates the Cats version from 1.6.0 to 2.0.0-M1 and introduces support for Scala 2.13.0-RC1 (2.13.0-M5 is no longer supported). It includes breaking updates to several other dependencies, including ScalaTest (from 3.0.5 to 3.1.0-SNAP9), ScalaCheck (from 1.13.5 to 1.14.0), and Discipline (from 0.9.0 to 0.11.2-M1). These breaking updates only affect the testing modules, and in fact all other modules are likely to work fine with Cats 1.x releases (but you should update anyway).
๐ This release also includes an experimental new circe-rs (for "recursion schemes") module, with a
JsonF
pattern functor that can be used with libraries like Droste (thanks to Olivier Mรฉlois for contributing this in #1092). Theio.circe.rs
package (or something equivalent) may be included in circe-core in future releases.๐ This release also brings the
java.time
decoders in circe-core on Scala 2.12+ back into sync with the ones in circe-java8 (for exampleMonthDay
instances had only been available in circe-java8 in 0.11; see #1060 and #1061 for the details).It includes a couple of API additions:
dropNullValues
forJson
by Diogo Sousa in #983.- ๐ Support for sorting JSON objects by key in printing by Alexey Kotlyarov in #1048.
โฆand a bug fix for circe-generic-extras:
- ๐ง
withDefaults
inConfiguration
no longer ignores values that failed to decode as expected (reported by Laszlo Bende in #1024 and fixed by Frederick Roth in #1109).
๐ Please note that this is a milestone release (that depends on other milestone releases). Any use, testing, feedback, etc. is much appreciated, but be forewarned that there may be bugs or differences from the final 0.12.0 release. In particular 0.12.0 will not be released until a non-milestone Cats release is available (although it won't wait for 2.13.0), and the testing modules will probably change substantially before 0.12.0 (they will no longer depend on ScalaTest).