Skip to content

Releases: grunka/json

Static field issue fix

28 Mar 14:43
aaf7317

Choose a tag to compare

Fixing issue where static fields in classes would be attempted to be read and written

Full Changelog: v1.9...v1.10

Convenience methods added

26 Mar 11:39
f94b0d8

Choose a tag to compare

Adding convenience methods for accessing fields in json values.

Full Changelog: v1.7...v1.9

Bugfix in objectifying

25 Mar 17:49
ce59e7e

Choose a tag to compare

  • Bugfix on issue where objectifying object that contained nulled JsonValues would fail when trying to cast values
  • Dependency updates

What's Changed

  • Bump maven-source-plugin from 3.2.1 to 3.3.0 by @dependabot in #5
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.6.0 by @dependabot in #7
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.0 to 3.6.2 by @dependabot in #8
  • Bump org.apache.maven.plugins:maven-compiler-plugin from 3.11.0 to 3.12.1 by @dependabot in #10
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.2 to 3.6.3 by @dependabot in #9
  • Bump org.apache.maven.plugins:maven-gpg-plugin from 3.1.0 to 3.2.0 by @dependabot in #11
  • Bump org.apache.maven.plugins:maven-compiler-plugin from 3.12.1 to 3.13.0 by @dependabot in #13
  • Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.0 to 3.2.1 by @dependabot in #12

Full Changelog: v1.6...v1.7

Better performance and pretty stringifying

11 May 14:14
edabc34

Choose a tag to compare

Found some performance bottlenecks for stringifying that we're fixed. Also added a prettyStringify method which outputs in a format similar to what Gson does when set to do pretty printing.

What's Changed

New Contributors

Full Changelog: v1.4...v1.6

Adding value mapper

27 Feb 21:32

Choose a tag to compare

Full Changelog: v1.3...v1.4

Other libraries usually have the functionality to map types to and from some kind of JSON representation. In this release I've added something similar, the Json.map function. It takes a JsonValue and one or several JsonValueMappers. It then iterates through the JsonValue and passes each value inside it and the path that it locates each value to the mappers supplied. With this you can change the values as needed. The changed value can then be passed to objectify or stringify depending on which direction you are going.

Structure cleanup and a small feature addition

22 Feb 14:45
3681941

Choose a tag to compare

Full Changelog: v1.2...v1.3

The JsonValue implementations now implement a couple more interfaces properly. The JsonString is not a CharSequence and Comparable. The JsonNumber is now a Number and it compares the actual value instead of the internal string representation.

It is now possible to objectify objects that contain any of the JsonValue types and they will be exposed correctly. This is handy to be able to do if you receive JSON that contains values in a structure that will not easily map into the objects you want to use. This lets ju just take the JSON value and manually convert that directly instead of building a complex object to capture it before converting it.

Better generics and common object instantiation

20 Feb 16:56

Choose a tag to compare

When adding record support in the previous release object instantiation and record instantiation diverged. Some things worked for objects and some for records. Now both create their contents using the same code paths.

Also now supports "complex" keys in maps. This basically means if you don't have a string as a key to a map it will now stringify the key object and use the string generated. When reading a complex key it assumes that this is what has been done and just parses it and converts it back to the key object.

Added a objectifySet in addition to the previously existing objectifyList and objectifyMap. objectifyMap now also supports passing in a type for the key while still defaulting it to being a String if it is not provided.

The Second Release

02 Dec 09:37

Choose a tag to compare

Added support for records

First Release

04 Nov 10:07

Choose a tag to compare

It now does all the basic things and it also seems to be quite quick so releasing an first version.

Full Changelog: https://github.com/grunka/json/commits/v1.0