Release Notes
API Changes
-
#991 Conversion into structs ignores unknown keys.
-
#1041 Exception wrapping behaviour for
value_to
is simplified.
-
#1040 Deprecated initilaizer list behavior was removed.
-
#1040 Deprecated type aliases were removed.
New Features
Fixes
-
#1057 Use correct 64bit full multiplication for MinGW on ARM64.
-
#1048 Fix parse_into handling of tuple of the wrong size.
-
#1047 Check for input size larger than allowed size of sequence.
-
#1034 Fix
value_ref
segfaulting
on GCC 14.
Deprecation
-
Support for GCC versions older than version 5.0 is deprecated and will stop in Boost 1.88.0.
API Changes
-
#941
source_location
parameter
was added to throwing accessor functions.
New Features
-
#940 Parse option to tolerate invalid UTF-16 surrogate pairs, and produce
WTF-8.
-
#941 Added accessor functions that return
system::result
.
Fixes
-
Handle missing error case in direct parsing.
New Dependencies
-
#915 Boost.Endian is now used to deal with endianness.
API Changes
-
#881 Aliases to Boost.System and Boost.Container components are deprecated
and will be completely removed in 1.87.0.
New Features
-
#979 Conversion of described classes supports private members
-
#979 Rvalue reference overload for
visit
.
-
#977 Add conversion support for path-like types.
Fixes
-
#988 Parsing into described classes correctly considers inherited members.
-
#975 Conversion of self-referential sequences is disabled.
-
#952 Fixed reference handling in visit.
API Changes
-
#925 Add a conversion category for variants.
-
#833 Add a conversion category for optionals.
-
#840 Relax iterator requirements for constructors from iterator pairs.
New Features
Fixes
-
#933 Fix reading beyond input buffer.
-
#920 Fix inconsistent choice of init list constructor.
-
Documentation improvements.
API Changes
-
#859 The library now only throws
system_error
, except for when
allocation failed, in which case std::bad_alloc
is thrown.
-
#884 Serialization behavior can now be changed by
serialize_options
.
New Features
Fixes
-
#901 Fix
object
member
functions that should provide strong guarantee.
-
#887 Fix ambiguity of
end
call when boost/range.hpp
is included.
-
#902 Fix ASan failures.
-
#904 Fix error message for
error::size_mismatch
.
-
Fix conversion into tuple with const elements.
New Features
Improvements
Fixes
-
#876 Fix parser suspend inside an escape character.
-
#814 Make sentinel() return a unique pointer.
API Changes
-
#686 Conversion traits were redesigned.
-
#756 Removed
condition::assign_error
.
-
#758 Removed
generic_category
alias.
New Features
-
#749
object::stable_erase
.
-
#778 Added error condition for generic library errors.
-
#619 Added
parse
overload
for std::istream
.
-
#619
operator>>
for value
.
Improvements
-
#686 Null-like type conversion support (including
std::nullptr_t
).
-
#736 Non-throwing conversion from
value
to user types.
-
#677
value_to/from
supports std::optional
and std::nullopt_t
.
-
#517
value_to/from
supports std::variant
and std::monotype
.
-
#626
value_to/from
supports supports described classes
and enums.
-
#757 Rvalue ref-qualified accessors for
value
.
Fixes
-
#745 Support for self-swap and self-move in
string
.
-
#747 Support for self-swap and self-move in
array
.
-
#735 Replaced C floating point constants with C++ equivalents.
-
Documentation improvements.
API Changes
-
#703 Add non-const
value::at
overloads.
-
#717 Add the ability to manually choose endianness of the platform.
-
Add
string::subview()
overload.
Fixes
-
#692 Fix segfault in
array::erase(it)
.
-
#697 Fix low performance of
serialize
on libc++.
-
#708 Fix ambiguous conversion to
std::string_view
on GCC 8.
-
#717 Fix parsing on big-endian platforms.
-
#726 Fix handling of comment after trailing comma.
-
Minor documentation fixes.
API Changes
-
#650 Standalone mode of the library is removed. Users who wish to continue
using standalone JSON can switch to the
C++ Alliance fork.
New Features
-
#480 Add support for JSON Pointer.
Improvements
-
Add
std::error_code
overloads.
-
#680 Add
boost::source_location
to error_codes
.
Fixes
-
#668 Naturally grow string during serialization.
API Changes
-
#628 Standalone mode of the library is removed.
API Changes
-
#628 Standalone mode of the library is deprecated.
New Features
Fixes
-
#608 #612 Fixed signed integer overflow in number parsing.
-
#620 Documentation fixes.
Improvements
-
#557 Add support for
/Zc:implicitNoexcept-
on MSVC.
New Features
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
Fixes
-
#481 Refactored
value_from
implementation; user
customizations are now always preferred over library-provided overloads.
-
#484 Fixed imprecise parsing for some floating point numbers.
-
#485 Fixed link errors in standalone mode, when used alongside Boost.
-
#497 Fix Boost.Build builds on GCC 4.8.