Skip to content

Releases: orchestr7/ktoml

Release v0.7.1

Choose a tag to compare

@github-actions github-actions released this 22 Aug 19:50

What's Changed

Version updates

New Contributors

Full Changelog: v0.7.0...v0.7.1

Release v0.7.0

Choose a tag to compare

@github-actions github-actions released this 14 May 15:12
fa70586

Many thanks to an outstanding contribution made by Evgeny @BOOMeranGG. He is a full owner and a creator of this release.

Highlights

  • Decoding of array of tables was finally added
  • Breaking Changes: huge removal of deprecated methods and classes (including TOMLConfig)
  • Multiple critical fixes

What's Changed

New Contributors

Full Changelog: v0.6.0...v0.7.0

Release v0.6.0

Choose a tag to compare

@github-actions github-actions released this 29 Mar 17:48

Main changes

Technical updates

New Contributors

Many thanks to @BOOMeranGG for this release and significant contribution!

Full Changelog: v0.5.2...v0.6.0

Release v0.5.2

Choose a tag to compare

@github-actions github-actions released this 16 Jun 17:19

Main

  • K2 and 1.7.0 serialization support
  • a new target: linux arm64

What's Changed

  • Fix Serialization in readme to use encodeToString instead of wrong decodeFromString by @vlsi in #253
  • Update dependency gradle to v8.6 by @renovate in #233
  • Adding new Kotlin DefaultHierarchyTemplate by @orchestr7 in #257
  • Enhancing publishing mechanism and adding snapshot releases by @orchestr7 in #258
  • Primitive Char should be encoded with a single quote by @orchestr7 in #261
  • Bump the github_actions group across 1 directory with 1 update by @dependabot in #262
  • Update Kotlin core dependencies to v1.9.23 by @renovate in #263
  • Update dependency gradle to v8.7 by @renovate in #265
  • Update Kotlin core dependencies to v1.9.24 by @renovate in #268
  • Update Kotlin core dependencies to v2 (major) by @renovate in #269
  • Enable linux arm64 compilation by @zt64 in #270
  • Update dependency io.github.gradle-nexus:publish-plugin to v2 by @renovate in #267
  • Update dependency gradle to v8.8 by @renovate in #271
  • Update all github actions (major) by @renovate in #247

New Contributors

Full Changelog: v0.5.1...v0.5.2

Release v0.5.1

Choose a tag to compare

@github-actions github-actions released this 07 Jan 18:30
1edd2a6

Important

  • Updated Kotlin to version 1.9.22 in #250

  • A bunch of bug fixes, infra and logging enhancements.

  • Enhanced Map decoding: Now, you can decode key-value pairs and tables to Map without prior knowledge of their names.

@Serializable
data class MyClass(
    val a: Map<String, Map<String, String>>
)
[a]
    [a.innerTable]
        d = 5
    [a.otherInnerTable]
        d = "String"
@Serializable
@JvmInline
value class Test(val myTest: Info)
ACTIVITY_COMPOSE = {}

Enhancements

  • Levenshtein distance calculation for the enhancement of the 'invalid enum' error by @akuleshov7 in #232
  • Add trimming of the closing quote delimiter of multiline string by @akuleshov7 in #223
  • Unify array of tables and primitive table by @NightEule5 in #215
  • Initial Support for Simple Map decoding with unnamed toml keys by @akuleshov7 in #246
  • Support for nested and inlined maps (inside other maps) by @akuleshov7 in #252
  • Postrelease: updating readme and deprecating legacy methods by @akuleshov7 in #222

Bugfixes

Infra

New Contributors

Full Changelog: v0.5.0...v0.5.1

Release v0.5.0

Choose a tag to compare

@github-actions github-actions released this 10 May 21:58

Breaking changes

  • In this release, we have made some changes to the library's API and removed old deprecated methods;
  • For instance, we removed methods that used the deprecated TomlConfig and left only those that use TomlInputConfig or TomlOutputConfig;
  • Additionally, we have started to stream data during decoding and parsing, which should improve performance;
  • However, this may affect the way you use some ktoml methods.

Changes that deserve your attention

  • A significant change for streaming data and a new module, ktoml-source, for custom data sources (via okio Source) by @bishiboosh in #117;
  • We have finally added support for multiline strings, including both literal and basic strings and multiline arrays, by @BOOMeranGG and @NightEule5 (#184, #183);
  • Support for Kotlin 1.8.21, Kotlinx.serialization 1.5.0, and Gradle 8;
  • Backward compatibility support for Java 8 by @akuleshov7 in #202;

❗ Now toml-file is only one of the example for reading the data from source. For your particular case you can implement your own source provider based on okio.Source. For this purpose we have prepared toml-source module and implemented an example with java streams for JVM target.

// add com.akuleshov7:ktoml-source to your project
import com.akuleshov7.ktoml.source

val resultFromString = TomlFileReader.decodeFromSource<MyClass>(serializer(), /* your source */)
val resultFromList = TomlFileReader.partiallyDecodeFromSource<MyClass>(serializer(),  /* your source */, /* table name */)

What else is new

  • We have added iosSimulatorArm64 target by @akuleshov7 in #186;
  • Regexes have been replaced with functions to enhance performance and prevent input-related issues by @NightEule5 in #19;
  • Extra information has been added to errors and exceptions by @akuleshov7 in #212;

Infrastructure changes

Full Changelog: v0.4.1...v0.5.0

Release v0.4.1 (Minor to support JVM 1.8)

Choose a tag to compare

@github-actions github-actions released this 27 Jan 11:52
9b9ce8c

What's Changed

New Contributors

Full Changelog: v0.4.0...v0.4.1

Release v0.4.0

Choose a tag to compare

@github-actions github-actions released this 07 Jan 22:24
60f1697

Functional changes

Fixes

Internals

  • Add README encoding examples by @NightEule5 in #159
  • Classes that inherit sealed class should not be in a one file anymore by @akuleshov7 in #162
  • Separate parsing from writing in node constructors by @NightEule5 in #165
  • Quick POC at non-Long numerics (encoding and decoding) by @aSemy in #164

New Contributors

Full Changelog: v0.3.0...v0.4.0

Release v0.3.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 19:09
9aa530f

Awesome release with serialization, finally! 🤞 ❤️
Ktoml now supports it!

What's Changed

New Contributors

Full Changelog: v0.2.13...v0.3.0

Release v0.2.13

Choose a tag to compare

@github-actions github-actions released this 12 Jul 18:16
c3e44bb

Minor release to add new targets and support new Kotlin version

What's Changed

New Contributors

Full Changelog: v0.2.12...v0.2.13