Releases: charleskorn/kaml
0.58.0
-
Changed: kaml now uses snakeyaml-engine-kmp for all targets, rather than using SnakeYAML for the JVM and snakeyaml-engine-kmp for JS. (#507 - thanks to @krzema12 and @aSemy for the PR)
As snakeyaml-engine-kmp is a port of SnakeYAML to multiplatform Kotlin, there should be no major behaviour differences.
⚠️ Breaking change:Yaml.decodeFromStream()
no longer supports anything other than UTF-8 streams, as this is not supported by Okio. If this is a problem for you, please open an issue to discuss your use case. -
Updated: use Okio 3.8.0
-
Updated: use kotlinx.serialization 1.6.3
-
Updated: use Kotlin 1.9.23
-
Updated: use snakeyaml-engine-kmp 2.7.3
0.57.0
- New: Kaml now supports serializing polymorphic types without serializing any type information (ie. without a type property or tag). Set
polymorphismStyle
toPolymorphismStyle.None
to use this feature. (#494 - thanks to @ZacSweers for the PR) - Updated: use Okio 3.7.0
- Updated: use Kotlin 1.9.22
0.56.0
- Updated: use SnakeYAML 2.7
- Updated: use Okio 3.6.0
- Updated: use kotlinx.serialization 1.6.2
- Updated: use Kotlin 1.9.21
- Updated: use snakeyaml-engine-kmp 2.7.1
0.55.0
-
New: add experimental support for Kotlin/JS (thanks to @krzema12 and @russellbanks for the PRs)
-
Updated: build with Kotlin 1.9.0
-
Updated: use Okio 3.4.0
0.54.0
-
New: add support for naming strategies, similar to the feature in kotlinx.serialization's JSON support (#400 - thanks to @russellbanks for the PR)
This makes it easy to use different field naming schemes such as snake_case, kebab-case, PascalCase, and camelCase without needing to modify the corresponding Kotlin property names or annotate properties with
@SerialName
. -
Updated: build with Kotlin 1.8.21
-
Changed: remove unnecessary stdlib dependency (#421 - thanks to @russellbanks for the PR)
0.53.0
-
Changed (
⚠️ potentially breaking change): default to not parsing anchors and aliases to prevent billion laughs attacks (GHSA-c24f-2j3g-rg48 - thanks to @gdude2002 for reporting this offline)If your application needs to support anchors and aliases, enable them by setting
YamlConfiguration.allowAnchorsAndAliases
totrue
.
0.52.0
- Updated: use Kotlin 1.8.10
- Updated: use kotlinx.serialization 1.5.0
0.51.0
- New: added
SingleLineStringStyle.PlainExceptAmbiguous
to automatically quote strings that may be interpreted as numeric or boolean values (#371 - thanks to @russellbanks for the PR)
0.50.0
0.49.0
- Updated: use snakeyaml-engine 2.5.