Skip to content

Releases: hjson/hjson-cpp

2.6

20 Apr 15:29
d59e049
Compare
Choose a tag to compare

In order to avoid stack overflows for deep value trees, internal recursive calls have been replaced with loops, including for the destructor on Hjson::Value. As a side effect the Hjson::Value desctructor will now allocate memory on the heap if the Hjson::Value is a tree with a depth greater than two levels.

1.7

09 Sep 12:06
Compare
Choose a tag to compare
1.7

Backported fix for gcc 13 requiring cstdint to be included in hjson.h.

2.5

10 Sep 13:42
c82fccc
Compare
Choose a tag to compare
2.5
  • Added override specifier in hjson.h to avoid possible compiler warning
  • Fix for warnings about name collision during link time optimization

2.4.1

23 Oct 15:55
3c34b59
Compare
Choose a tag to compare

Any control chars in map keys are now escaped in Hjson and JSON output.

2.4

04 Jun 20:56
3a15f15
Compare
Choose a tag to compare
2.4

Now includes <cstdint> in the file hjson.h which is required by GCC 13.

2.3

12 Jan 17:35
d553e65
Compare
Choose a tag to compare
2.3

Fixes problems with values and/or closing brackets ending up inside comments, even when the tree was unmarshalled from a document.

It is still possible to get this problem when programmatically setting comments.

If DecoderOptions::whitespaceAsComments is set to true, comments now also include trailing whitespace after quoteless strings.

2.2

14 Apr 16:44
Compare
Choose a tag to compare
2.2

Changed behavior:

  • UnmarshalFromFile() will now ignore the last line feed in a file if the file ends with a comment. Before this change, a read-write cycle of a file with comments would always add one more line feed at the end of the file if the file ended with a comment.
  • The output from Merge() of two maps now uses the key order from the second Hjson::Value argument because the second argument is typically from an input file written by a user, and we don't want to keep changing the order that the user had decided.

Bug fixes:

  • Lower (second level or deeper) level maps now keep their comments in the output from Merge().
  • Value::clone() now keep all comments.

2.1

17 Nov 19:48
Compare
Choose a tag to compare
2.1

Added Hjson::Value bracket operators for non-const char* to avoid overload ambiguity.

2.0

14 Nov 14:34
e4b0547
Compare
Choose a tag to compare
2.0

Major release containing several breaking changes.

Biggest change: can now read and write comments.

  • enum class for Hjson::Value types
  • changed default options
  • assignment and arithmetic operators for all primitive C++ types
  • read and write comments
  • convenience file functions
  • MarshalWithOptions() replaced by Marshal() overload
  • DefaultOptions() replaced by brace-or-equal-initializers in EncoderOptions

1.6.1

16 Sep 15:37
Compare
Choose a tag to compare

All links changed from hjson.org to hjson.github.io.