1.9.0:
It's been ~2 years since the last release, so this has quite a few changes. Some highlights:
Build optimizations and updates. Now needs at least Meson 0.50.0, bot support for VS 2013 dropped in favor of VS 2017
Lots of bug fixes
Lots of enhancements
Lots of cleanup
1.8.4:
Functional changes
* Serialize UTF-8 string with Unicode escapes
* Un-deprecate removeMember overloads, return void
* Allow Json::Value to be used in a boolean context
* Use move ctor in append()
* Add value_type to improve integration with boost
Meta-changes
* Fix meson.build to allow using jsoncpp as a subproject
* Fix some compiler warnings
Update docs
* Update for TravisCI
---------------------------------------
- Require cmake>=3.1
- @cdunn2001 cdunn2001 released this on 15 Dec 2016 21 commits to
master since this release
- Plus some other build-related changes. I don't think there is
anything functionally different from 1.7.7, or even any binary
incompatibilities, but the cmake change is significant.
Changes in 1.7.7:
At the suggestion of Peter Spiess-Knafl, we will bump the
SOVERSION independent of the MAJOR.MINOR.MICRO version, in case
we break binary compatibility.
Changes in 1.7.6:
Prevent possible SEGV. (Thanks to @ngg.)
Add RPATH for OSX libs. (Please let us know if this causes a problem.)
Changes in 1.7.5:
Fix locale for decimal points
Plus a fix for Android
int64_t for 64-bit integers
Optionally suppress space after comma
Avoid null for empty stringValue
Fix null ctor/dtor, using a "Meyers Singleton"
Thanks to @marklakata and @BillyDonahue in #488 in #490.
1.7.4
Fix pkg-config
1.7.3
Fix static initialization of null with Myers Singleton. (Thanks @marklakata )
Fix other minor compiler and installation problems and warnings.
Fix amalgamated header.
1.7.2
Fix clang warning.
1.7.1
GCC-6 compatibility
New precision setting in StreamBuilder
Move-semantics for some ctors
Added details to exception messages
Clarified when exceptions are thrown
Support isinfinite()
Secure memory-wiping allocator (via compilation flag, settable via cmake)
For this, we changed all STL datatypes to macros, but all unchanged by default.
Lots of minor build-related improvements
Notably, cmake support for ccache
More supported systems
gcc-6
musl
MinGW
Cygwin
QNX
VS2010 (for now, but you can always use old versions of JsonCpp)
Note: 1.7.0 was recalled b/c it accidentally included SecureAlloc by default.
1.6.5
Expose Exception classes
Other changes are just comments.
1.6.2
Fix UTF-8 for old (deprecated) Writers
Do not truncate output at embedded zeroes.
This was already fixed the new StreamWriter, which is used by the default stream inserter. This fix will not break anything that wasn't already broken.
1.6.1
Fix compilation error for `snprintf()` for some compilers.
Fix compilation error for snprintf() for some compilers.
1.6
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.
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.)
Problems found locating distfiles:
Package cabocha: missing distfile cabocha-0.68.tar.bz2
Package convertlit: missing distfile clit18src.zip
Package php-enchant: missing distfile php-enchant/enchant-1.1.0.tgz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
JSON (JavaScript Object Notation) is a lightweight data-interchange
format. It can represent integer, real number, string, an ordered
sequence of value, and a collection of name/value pairs.
JsonCpp is a simple API to manipulate JSON value, handle serialization
and unserialization to string.
It can also preserve existing comment in unserialization/serialization
steps, making it a convenient format to store user input files.
Unserialization parsing is user friendly and provides precise error
reports.