Files
json/home/releases/v3.11.0.md
T
2026-10-24 17:31:11 +00:00

28 lines
1.5 KiB
Markdown

# v3.11.0
Released on 2022-08-01.
One of the largest releases ever. All changes are backward-compatible.
- Allows `std::string_view` as object keys in [`at`](../../api/basic_json/at.md),
[`operator[]`](../../api/basic_json/operator%5B%5D.md), [`value`](../../api/basic_json/value.md),
[`erase`](../../api/basic_json/erase.md), [`find`](../../api/basic_json/find.md),
[`contains`](../../api/basic_json/contains.md), and [`count`](../../api/basic_json/count.md).
- Adds the [BJData](../../features/binary_formats/bjdata.md) binary format (the fifth supported format).
- Improves C++20 support, including [`operator<=>`](../../api/basic_json/operator_spaceship.md) and
`<ranges>`-compatible iterators.
- Adds a versioned, ABI-tagged inline [namespace](../../features/namespace.md)
([`NLOHMANN_JSON_NAMESPACE`](../../api/macros/nlohmann_json_namespace.md)) and the option to move the
UDLs out of the global namespace ([`JSON_USE_GLOBAL_UDLS`](../../api/macros/json_use_global_udls.md)).
- Adds [`patch_inplace`](../../api/basic_json/patch_inplace.md), default values for the
[conversion macros](../../features/arbitrary_types.md#simplify-your-life-with-macros), and an option to
disable enum serialization ([`JSON_DISABLE_ENUM_SERIALIZATION`](../../api/macros/json_disable_enum_serialization.md)).
This release introduced a UDL regression that was fixed in
[3.11.1](https://github.com/nlohmann/json/releases/tag/v3.11.1).
[Full release notes](https://github.com/nlohmann/json/releases/tag/v3.11.0).
## API changes
<!-- api-changes -->