Skip to content

Release Version 3

Compare
Choose a tag to compare
@beached beached released this 28 Jun 23:21
· 466 commits to release since this release
76ef0c7

This is the next significant release of DAW JSON Link with lots of goodies and help to make the job of mapping JSON to C++ data structures easier along with a much improved json_value that allows on demand parsing via a DOM like interface without the storage. Together they allow for parsing pretty much any JSON entity.

What's Changed

  • type deduction in mappings. This allows integration with Reflection and reflection like libraries(e.g. Boost.Describe)

  • Pretty printing/output formatting options

  • json_nullable/readable trait to separate nullability from mappers

  • json_raw/json_custom for things that don't fit

  • Json Schema generation via to_json_schema

  • Minimized symbol names

  • Using a single Options value for member mappings, serialization options, and parse options

  • Using better testing in CI

  • added json_type_alias mapping type to allow classes to be parsed as other types e.g json_string/json_number/...
    ... and more

  • Updated json_value to allow for better exploration by @beached in #284

  • Fixed some issues with path parsing by @beached in #285

  • Added JSON Lines Support by @beached in #286

  • Made json exception inherit from std::exception by @beached in #287

  • Added json lines partitioning helper by @beached in #288

  • Documentation and -fno-exceptions update by @beached in #292

  • Added WritableOuputType support by @beached in #293

  • to_json simplifications by @beached in #294

  • Fix wrong link in cookbook/readme.md by @jk-jeon in #296

  • Cleanup of from JSON, Container concept by @beached in #297

  • benchmark and json_value conversion enhancements by @beached in #298

  • Documentation updates by @beached in #301

  • Updated editorconfig by @beached in #302

  • documentation fixes by @beached in #303

  • Formatting cleanup by @beached in #304

  • clang-9 and clang-10 bugfix and renamed Readable concept to Nullable by @beached in #305

  • Fixed code that wasn't updated to new mapping by @beached in #306

  • excluding clang-9/Debug/cpp17 from CI due to compiler ICE by @beached in #307

  • Updated code links in documents and pined version of extern deps by @beached in #308

  • Fix: from_json of json_value dropped class bounds and allocator by @beached in #309

  • Updated version to 3_0_0 by @beached in #310

New Contributors

Full Changelog: v2.10.2...v3.0.0