Skip to content

Releases: open-source-parsers/jsoncpp

Fix compilation error for `snprintf()` for some compilers.

31 Mar 20:12
Compare
Choose a tag to compare

(Based on 1.6.1. Binary-compatible with the old 0.6.0-rc2 from sourceforge.)

  • Fix compilation error for snprintf() for some compilers.

Json::Exception

15 Mar 18:52
Compare
Choose a tag to compare
  • Added Json::Exception, plus derived types:
    • Json::RuntimeError
    • Json::LogicError
  • Clarified when exceptions are thrown.
    • If you are trapping std::exception, nothing will change for you.
  • Fixed deprecation macro. (Thx to @Dani-Hub.)
  • Fixed compilation error for gcc-4.8. (Thx to @connormanning.)
  • Fixed CharReader::Factory base. (Thx to Tengiz Sharafiev.) (Technically, this is not a binary-compatible change, but it is a pretty serious bug. So we have deprecated 1.4 and 1.5.)

Json::Exception

15 Mar 19:28
Compare
Choose a tag to compare

(Based on 1.6.0. Binary-compatible with the old 0.6.0-rc2 from sourceforge.)

  • Added Json::Exception, plus derived types:
    • Json::RuntimeError
    • Json::LogicError
  • Clarified when exceptions are thrown.
    • If you are trapping std::exception, nothing will change for you.
  • Fixed deprecation macro. (Thx to @Dani-Hub.)
  • Fixed compilation error for gcc-4.8. (Thx to @connormanning.)
  • Fixed CharReader::Factory base. (Thx to Tengiz Sharafiev.) (Technically, this is not a binary-compatible change, but it is a pretty serious bug. So we have deprecated 0.8 and 0.9, which are quite recent. This version is fully binary-compatible with 0.6.0-rc2, the very old release in common use.)

Full UTF-8 support

07 Mar 21:50
Compare
Choose a tag to compare
Full UTF-8 support Pre-release
Pre-release
  • Support embedded 0s in strings (since UTF-8 allows them).
    • If you use c-string methods, or std::string::c_str(), you can still have problems.
    • Note that this support has a price: keys are now limited to 1 billion characters (2^30).
  • Add feature to allow single-quotes in input JSON (since JavaScript allows them).
  • Propagate rarely-used StaticString thru copy-ctor.
  • Let JSON_ASSERT throw std::logic_error instead of std::runtime_error.
  • Skip Python tests by default, and run C++ unit-tests only for changes.
  • Ignore cmake-generated files for in-source builds.
  • Add tests. Fix other tests.
  • Remove unused code (JSON_VALUE_USE_INTERNAL_MAP).
  • Add rejectDupKeys feature.
    • Now part of strictMode.
  • Fix minor build issues for VisualStudio.
  • Fix compile error for VS2013, plus warnings.
  • Add operator[] to Builders.
  • In Builders, fix ::validate() (which was always returning true).
  • Fix UTF-8 zeroes bugs in previous patch-versions.

Full UTF-8 support

07 Mar 21:50
Compare
Choose a tag to compare
Full UTF-8 support Pre-release
Pre-release

(Based on 1.5.4.)

  • Support embedded 0s in strings (since UTF-8 allows them).
    • If you use c-string methods, or std::string::c_str(), you can still have problems.
    • Note that this support has a price: keys are now limited to 1 billion characters (2^30).
  • Add feature to allow single-quotes in input JSON (since JavaScript allows them).
  • Propagate rarely-used StaticString thru copy-ctor.
  • Let JSON_ASSERT throw std::logic_error instead of std::runtime_error.
  • Skip Python tests by default, and run C++ unit-tests only for changes.
  • Ignore cmake-generated files for in-source builds.
  • Add tests. Fix other tests.
  • Remove unused code (JSON_VALUE_USE_INTERNAL_MAP).
  • Add rejectDupKeys feature.
    • Now part of strictMode.
  • Fix minor build issues for VisualStudio.
  • Fix compile error for VS2013, plus warnings.
  • Add operator[] to Builders.
  • In Builders, fix ::validate() (which was always returning true).
  • Fix UTF-8 zeroes bugs in previous patch-versions.

Fixed allowDroppedNullPlaceholders in Readers.

03 Mar 15:09
Compare
Choose a tag to compare

(Based on 1.4.4)

The odd allowDroppedNullPlaceholders feature of Readers (corresponding to dropNullPlaceholders in Writers) can be helpful when parsing javascript as JSON, when null elements have been discarded.

This release fixes the Reader for several cases of the missing null. However, we do not guarantee that all corner cases are covered.

Also, re-add Json::Value::null for binary-compatibility.

Fixed allowDroppedNullPlaceholders in Readers.

19 Feb 21:44
Compare
Choose a tag to compare

The odd allowDroppedNullPlaceholders feature of Readers (corresponding to dropNullPlaceholders in Writers) can be helpful when parsing javascript as JSON, when null elements have been discarded.

This release fixes the Reader for several cases of the missing null. However, we do not guarantee that all corner cases are covered.

Exceptions from JSON_ASSERT

18 Feb 15:25
Compare
Choose a tag to compare
Pre-release
  • Turn on exceptions for JSON_ASSERT if JSON_USE_EXCEPTION.
  • Make amalgamate.py more helpful.

Exceptions from JSON_ASSERT

18 Feb 15:27
Compare
Choose a tag to compare
Pre-release
  • Turn on exceptions for JSON_ASSERT if JSON_USE_EXCEPTION.
  • Make amalgamate.py more helpful.

Minor bug-fix

15 Feb 09:08
Compare
Choose a tag to compare
Minor bug-fix Pre-release
Pre-release
  • Bug-fix for ValueIterator::operator-() (issue #169)