Skip to content

Releases: LaFriska/kompakt

v1.1.0

01 Dec 05:32
ce82df1
Compare
Choose a tag to compare

First Release - v1.1.0
The main addition to Kompakt in version v1.1.0 is that most serialisation configurations/settings are now in the form of annotations.
The old way to change these settings, which was overriding various methods from JSONSerialisable are still mostly present, and annotations had been designed in a way as a shorthand notational sugar which relies on the functionalities of these methods.

Added Annotations

  • @DeepSerialise, classes labeled with this annotation will have inherited fields serialised.
  • @SerialiseAsString, a stronger replacement of the old serialiseIterables option, which had now been deleted. This annotation forces a field to be serialised as a string by calling the toString method on that field.
  • @Ignored, a way to ignore fields from serialisation.

Removed Features

  • serialiseIterables() were completely redundant in the previous feature. We have however, decided that this feature is utterly useless when we introduced @SerialiseAsString, hence its deletion.

v1.0.1-alpha

30 Nov 01:34
9abebdd
Compare
Choose a tag to compare
v1.0.1-alpha Pre-release
Pre-release

This release composes of bug fixes and additional test cases.

The following bugs are fixed.

  • Escape laterals, quotations and control characters not properly sanitised in field names during serialisation.
  • JSONObject array equivalence break when array nesting takes place.
  • Duplicate fields are technically allowed in the JSON format, but breaks the parser. Duplicate fields are now detected and renamed using an integer suffix.

Test Cases

  • Added extra test class ensuring that serialisation composed with deserialisation results in the identity function.
  • Deleted some erroneous test cases after changing how duplicate fields are handled.

README.md

  • v1.0.1-alpha now includes the README.md file in the source files.

v1.0.0-alpha

29 Nov 09:29
Compare
Choose a tag to compare
v1.0.0-alpha Pre-release
Pre-release

First (alpha testing) release of Kompakt.

  • In general, all features are working.
  • This software may be buggy, smaller features which did not get the chance to be tested may not function properly.
  • We recommend against using this release for any softwares dealing with significantly complex JSONs, or any softwares dealing with important JSONs that could cause security risks.
  • We do however, encourage using this release for educational purposes, or small-scale and low-risk softwares.