[/ Copyright (c) 2021 Dmitry Arkhipov (grisumbras@gmail.com) Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Official repository: https://github.com/boostorg/beast ] [section Release Notes] [/-----------------------------------------------------------------------------] [heading Boost 1.85.0] [*New Dependencies] * [issue 915] Boost.Endian is now used to deal with endianness. [*API Changes] * [issue 881] Aliases to Boost.System and Boost.Container components are deprecated and [*will be completely removed in 1.87.0]. [*New Features] * [issue 979] Conversion of described classes supports private members * [issue 979] Rvalue reference overload for `visit`. * [issue 977] Add conversion support for path-like types. [*Fixes] * [issue 988] Parsing into described classes correctly considers inherited members. * [issue 975] Conversion of self-referential sequences is disabled. * [issue 952] Fixed reference handling in visit. [heading Boost 1.84.0] [*API Changes] * [issue 925] Add a conversion category for variants. * [issue 833] Add a conversion category for optionals. * [issue 840] Relax iterator requirements for constructors from iterator pairs. [*New Features] * [issue 627] Parsing directly into user types. See [link json.conversion.direct_parsing Direct Parsing]. [*Fixes] * [issue 933] Fix reading beyond input buffer. * [issue 920] Fix inconsistent choice of init list constructor. * Documentation improvements. [heading Boost 1.83.0] [*API Changes] * [issue 859] The library now only throws __system_error__, except for when allocation failed, in which case `std::bad_alloc` is thrown. * [issue 884] Serialization behavior can now be changed by [link json.ref.boost__json__serialize_options `serialize_options`]. [*New Features] * [issue 819] [link json.conversion.contextual_conversions Contextual conversions]. * [issue 599] [link json.ref.boost__json__number_precision Parser option] for more precise number parsing. * [issue 885] Support [link json.ref.boost__json__parse_options `parse_options`] in stream `operator<<`. * [issue 397] [link json.ref.boost__json__parse_options Parser option] to allow `Infinity` and `NaN` JSON literals. * [issue 901] [link json.ref.boost__json__number_precision Parser mode] that only validates numbers rather than parsing them. * [issue 892] Numbers with exponent larger than `INT_MAX` are accepted by the parser and treated as infinity. [*Fixes] * [issue 901] Fix `object` member functions that should provide strong guarantee. * [issue 887] Fix ambiguity of `end` call when `boost/range.hpp` is included. * [issue 902] Fix ASan failures. * [issue 904] Fix error message for `error::size_mismatch`. * Fix conversion into tuple with const elements. [heading Boost 1.82.0] [*New Features] * [issue 800] [link json.ref.boost__json__value.set_at_pointer `set_at_pointer`]. * [issue 570] [link json.ref.boost__json__value.hash_value `boost::hash` support]. [*Improvements] * [issue 848] [link json.ref.boost__json__serializer.serializer.overload3 Caller-provided serializer storage]. * [issue 807] `value_to` supports missing elements for `std::optional`. * Documentation improvements. [*Fixes] * [issue 876] Fix parser suspend inside an escape character. * [issue 814] Make sentinel() return a unique pointer. [heading Boost 1.81.0] [*API Changes] * [issue 686] Conversion traits were redesigned. * [issue 756] Removed `condition::assign_error`. * [issue 758] Removed `generic_category` alias. [*New Features] * [issue 749] `object::stable_erase`. * [issue 778] Added error condition for generic library errors. * [issue 619] Added `parse` overload for `std::istream`. * [issue 619] `operator>>` for `value`. [*Improvements] * [issue 686] Null-like type conversion support (including `std::nullptr_t`). * [issue 736] Non-throwing conversion from `value` to user types. * [issue 677] `value_to/from` supports `std::optional` and `std::nullopt_t`. * [issue 517] `value_to/from` supports `std::variant` and `std::monotype`. * [issue 626] `value_to/from` supports supports described classes and enums. * [issue 757] Rvalue ref-qualified accessors for `value`. [*Fixes] * [issue 745] Support for self-swap and self-move in `string`. * [issue 747] Support for self-swap and self-move in `array`. * [issue 735] Replaced C floating point constants with C++ equivalents. * Documentation improvements. [heading Boost 1.80.0] [*API Changes] * [issue 703] Add non-const `value::at` overloads. * [issue 717] Add the ability to manually choose endianness of the platform. * Add `string::subview()` overload. [*Fixes] * [issue 692] Fix segfault in `array::erase(it)`. * [issue 697] Fix low performance of `serialize` on libc++. * [issue 708] Fix ambiguous conversion to `std::string_view` on GCC 8. * [issue 717] Fix parsing on big-endian platforms. * [issue 726] Fix handling of comment after trailing comma. * Minor documentation fixes. [heading Boost 1.79.0] [*API Changes] * [issue 650] Standalone mode of the library is removed. Users who wish to continue using standalone JSON can switch to [@https://github.com/CPPAlliance/standalone-json.git the C++ Alliance fork]. [*New Features] * [issue 480] Add support for JSON Pointer. [*Improvements] * Add `std::error_code` overloads. * [issue 680] Add `boost::source_location` to `error_codes`. [*Fixes] * [issue 668] Naturally grow string during serialization. [heading Boost 1.78.0] [*API Changes] * [issue 628] Standalone mode of the library is removed. [heading Boost 1.78.0] [*API Changes] * [issue 628] Standalone mode of the library is deprecated. [*New Features] * [issue 549] [issue 550] Allow external libraries to forward declare __value_to__ and __value_from__. [*Fixes] * [issue 608] [issue 612] Fixed signed integer overflow in number parsing. * [issue 620] Documentation fixes. [*Improvements] * [issue 557] Add support for `/Zc:implicitNoexcept-` on MSVC. [heading Boost 1.77.0] [*New Features] * [issue 538] [link json.ref.boost__json__string.operator_std__string_view Implicit conversion operator from `string` to `std::string_view`]. * [issue 521] __std_hash__ specializations for json types. [*Fixes] * __object__ deallocates the correct size. * Fixed crash when constructing __array__ from a pair of iterators that form an empty range. * __key_value_pair__ allocates with the correct alignment. [*Improvements] * __value_to__ supports `TupleLike` types. * __value_to__ and __value_from__ support __std_array__ and similar types. [heading Boost 1.76.0] [*Fixes] * [issue 481] Refactored __value_from__ implementation; user customizations are now always preferred over library-provided overloads. * [issue 484] Fixed imprecise parsing for some floating point numbers. * [issue 485] Fixed link errors in standalone mode, when used alongside Boost. * [issue 497] Fix Boost.Build builds on GCC 4.8. [heading Boost 1.75.0] * Initial release. [endsect]