Skip to content

Releases: Tinkoff/phobos

[v0.21.0] Support for enums

21 May 12:41
Compare
Choose a tag to compare

Key changes

  • Implemented support for enums and case objects in scala 3 (issues - #199 and #281, pr - #283).
    ⚠️ This is a breaking change! Codecs for sealed trait / enum children are now derived automatically, if codec is derived for parent.
  • Updated dependency versions.

What's Changed

Full Changelog: v0.20.0...v0.21.0

[v0.20.0] Safer errors

19 Feb 13:14
Compare
Choose a tag to compare

Key changes

  • Fixed some cases, where encoder and decoder could throw errors (#273).
    ⚠️ This is a breaking change! Return type of XmlEncoder methods was changed. Now those methods return Either, because encoding still may fail.
  • Added new codec instances for java.time (#274).
  • Updated dependency versions.

What's Changed

Full Changelog: v0.19.2...v0.20.0

[v0.19.2] Fixed higher-kinded data in scala 3

08 Jan 17:15
Compare
Choose a tag to compare

Key changes

  • Fixed higher kinded data in scala 3 (issue - #260, pr - #263).

What's Changed

Full Changelog: v0.19.1...v0.19.2

[v0.19.1] Fixed scope namespaces

21 Dec 14:18
Compare
Choose a tag to compare

Key changes

  • Fixed scope namespaces in list decoders (pr - #261).
  • Updated dependency versions.

What's Changed

Full Changelog: v0.19.0...v0.19.1

[v.0.19.0] Scope default namespaces

05 Dec 12:57
Compare
Choose a tag to compare

Key changes

  • Added capability to configure scope default namespcaces (pr - #256).
  • Added documentation for ElementCodecConfig (pr - #256).
  • Updated dependency versions.

What's Changed

Full Changelog: v0.18.0...v0.19.0

[v0.18.0] More beautiful encoding

21 Nov 07:45
Compare
Choose a tag to compare

Key changes

  • Added capability to configure namespace prefixes (issue - #230, pr - #252).
  • Added capability to pretty print XML (pr - #253).
  • Updated dependency versions.

What's Changed

Full Changelog: v0.17.0...v0.18.0

[v0.17.0] Better codec consistency

14 Nov 16:17
Compare
Choose a tag to compare

Key changes

  • Changed the behavior of decoder for options (issue - #222, pr - #227).
    ⚠️ This is a breaking change! Elements without children elements and attribures<bar/> were previously decoded as None, now they are decoded as Some[_].
  • Changed the behavior of encoders and decoders for Unit types (issue - #231, pr - #246).
    ⚠️ This is a breaking change!
    • Unit was previously ignored in encoder. Now it is encoded as empty element.
      Previously: Foo(bar: Unit)<foo/>. Now: Foo(bar: Unit)<foo><bar/></foo>.
    • Unit decoder was previously bugged, Unit could not be decoded successfully. Now Unit can be decoded from empty element.
      Previously: <foo><bar/></foo> as Foo(bar: Unit)Error: Element is already decoded. Now: <foo><bar/></foo> as Foo(bar: Unit)Foo(()).
  • Updated dependency versions.

What's Changed

New Contributors

Full Changelog: v0.16.0...v0.17.0

[v0.16.0] Better akka http instances

21 Aug 13:48
Compare
Choose a tag to compare
  • Replaced FromResponseUnmarshaller with FromEntityUnmarshaller in akka-http module (issue - #220, pr - #221)
  • Updated dependency versions

[v0.15.1] Decoder improvements

19 Jun 17:53
Compare
Choose a tag to compare
  • Fixed "match may not be exhaustive" warning in generated decoders for case classes when -Xlint:strict-unsealed-patmat compiler option is enabled (issue - #204, pr - #205)
  • Slightly improved performance of case class decoders in Scala 3 (#206)

[v0.15.0] Support for Scala 3

08 May 21:19
Compare
Choose a tag to compare
  • Added support for Scala 3 (#197)
  • Updated dependency versions