Releases: open-source-parsers/jsoncpp
Fix compilation error for `snprintf()` for some compilers.
(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
- 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.
- If you are trapping
- 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
(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.
- If you are trapping
- 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 with0.6.0-rc2
, the very old release in common use.)
Full UTF-8 support
- 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).
- If you use c-string methods, or
- 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 ofstd::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 returningtrue
). - Fix UTF-8 zeroes bugs in previous patch-versions.
Full UTF-8 support
(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).
- If you use c-string methods, or
- 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 ofstd::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 returningtrue
). - Fix UTF-8 zeroes bugs in previous patch-versions.
Fixed allowDroppedNullPlaceholders in Readers.
(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.
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
- Turn on exceptions for
JSON_ASSERT
ifJSON_USE_EXCEPTION
. - Make
amalgamate.py
more helpful.
Exceptions from JSON_ASSERT
- Turn on exceptions for
JSON_ASSERT
ifJSON_USE_EXCEPTION
. - Make
amalgamate.py
more helpful.
Minor bug-fix
- Bug-fix for
ValueIterator::operator-()
(issue #169)