Skip to content

Releases: BenWoodworth/knbt

knbt v0.9.2

13 Sep 23:12
Compare
Choose a tag to compare

Fixes

  • #8 Config option ignoreUnknownKeys breaks when there are unknown keys at the end

knbt v0.9.1

13 Sep 05:11
Compare
Choose a tag to compare

Changes

  • Removed APIs deprecated in v0.9.0

knbt v0.9.0

13 Sep 04:48
Compare
Choose a tag to compare

Changes

  • Added a StringifiedNbt format, and moved all SNBT-related APIs in Nbt to it
  • Added an NbtFormat interface that Nbt and StringifiedNbt both implement
  • Require Nbt to be configured, with variant and compression no longer being optional
    • Removed Nbt's companion object with default configuration

knbt v0.8.1

30 Aug 05:54
Compare
Choose a tag to compare

Changes

  • Removed APIs deprecated in v0.8.0

If you're updating from v0.7 or earlier, update to v0.8.0 and fix deprecations before using v0.8.1. See Upgrading knbt for details.

knbt v0.8.0

30 Aug 05:10
Compare
Choose a tag to compare

This release is the same as the v0.7.0 release, except with fixed deprecations to help with migration:

  • Made old API deprecations errors instead of warnings
  • Fixed some broken replacement refactorings

knbt v0.7.1

21 Aug 20:26
Compare
Choose a tag to compare

Changes

  • Removed APIs deprecated in v0.7.0

If you're updating from v0.6 or earlier, update to v0.7.0 and fix deprecations before using v0.7.1. See Upgrading knbt for details.

knbt v0.7.0

21 Aug 19:52
Compare
Choose a tag to compare

Changes

  • Change API to match conventions set by kotlinx.serialization
    • Move NbtTag classes/extensions from net.benwoodworth.knbt.tag to net.benwoodworth.knbt
    • Use NbtTag constructors and value properties instead of conversion functions
      • e.g. NbtInt(val value: Int) instead of Int.toNbtInt() and NbtInt.toInt()
    • Add convenience properties for casting NbtTag to a specific tag types
    • Rename Nbt.encodeTo(...) and .decodeFrom(...) to e.g. .encodeToStream(...)
    • NbtTag.toString() now returns Stringified NBT, instead of the backing Kotlin value's .toString()
      • e.g. NbtByte(1).toString() will return "1b" instead of just "1"
  • Nbt*Array types are now backed by arrays instead of lists
  • Add @BuilderInference to buildNbtList {} so the type parameter can be inferred

Fixes

  • Stringified NbtCompound entries with empty names ("") will now render their names with quotes

Breaking changes

  • Deprecated old API that's changed to match kotlinx.serialization's (see above)

knbt v0.6.1

01 Jul 13:55
Compare
Choose a tag to compare

Changes

  • Added NbtConfiguration.prettyPrint and .prettyPrintIndent for Stringified NBT

knbt v0.6.0

23 Jun 01:36
Compare
Choose a tag to compare

Changes

  • Made NbtTag polymorphic
  • Allow NbtTags to be serialized without passing NbtTag.serializer()

Breaking Changes

  • Removed generic type from NbtCompound

knbt v0.5.0

06 Jun 14:45
Compare
Choose a tag to compare

Changes

  • Remove deprecated @NbtFile annotation
  • Simplify the way compression level is configured

Fixes

  • Make NbtCompound.serializer() and NbtList.serializer() public

Breaking Changes

  • Changed compression level configuration:
    • From Nbt { compression = Gzip { level = # } }
    • To Nbt { compression = Gzip; compressionLevel = # }