Bump nlohmann_json from 3.11.3 to 3.12.0.bcr.1
Type: Pull Request
State: Open
Association: Unknown
Comments: 1
(4 months ago)
(about 2 months ago)
dependencies bazel
Bumps nlohmann_json from 3.11.3 to 3.12.0.bcr.1.
Release notes
Sourced from nlohmann_json's releases.
JSON for Modern C++ version 3.12.0
Release date: 2025-04-11 SHA-256: aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63 (json.hpp), b8cb0ef2dd7f57f18933997c9934bb1fa962594f701cd5a8d3c2c80541559372 (include.zip), 42f6e95cad6ec532fd372391373363b62a14af6d771056dbfc86160e6dfff7aa (json.tar.xz)
Summary
This release fixes some bugs found in the 3.11.3 release and adds some new features.
All changes are backward-compatible.
:moneybag: Note you can support this project via GitHub sponsors or PayPal.
Key updates and enhancements
- Diagnostic byte positions: A new macro,
JSON_DIAGNOSTIC_POSITIONS, introduces member functions to query the byte positions of values in the input they were parsed from. When enabled, this information is also included in exceptions to help pinpoint errors. #4517 #4455 #4570 #4569 #4572 #4571 #4579 #4585 #4561- Enhanced conversion macros: The conversion macros for arbitrary types now include several upgrades:
- Support for
std::optional: The library now supports conversions from/tostd::optionaltypes when compiled with C++17. #1749 #4036- Flexible string compatibility: Functions
patch,diff, andflattennow work with arbitrary string types. #4536 #4134 #4613 #4019- Binary format enhancements:
- The BJData mapping now supports draft 3, including optimized binary array types. #4513 #4588
- The BSON mapping has added support for unsigned 64-bit integers. #4590 #4535 #3894
- The
get_numberfunction used in the binary format implementations has been optimized to read multiple bytes at once. #4391- Multidimensional array conversion: Multidimensional C-style arrays can now be directly converted to JSON. #4262 #4248
- Filesystem paths in UTF-8: The conversions from/to
std::filesystem::pathare now encoded to UTF-8 strings by default on all operating systems. #4271 #4631- CMake 4.0 support. By adjusting the CMake minimal version to 3.5, CMake 4.0 can be used without warning or error. #4709
Changes and fixes
- The
iteration_proxyis now astd::forward_iteratorinstead of just anstd::input_iterator. This allows more use cases whenitems()is fed into C++20std::views. The iterator always satisfied all requirements for a forward iterator, but was exposed as only an input iterator by the used iterator tag. #4371 #4372- Fix the conversion from enums with unsigned underlying type to JSON. #4236 #4237
- Fix GDB pretty printer which was broken since
m_dataadded. #4343 #4309- Update natvis to reflect 3.11.3 and the current structure of
basic_json. #4451 #4438 #4438- Fix crash when passing
nullptrtoparsefunction expectingFILE*. Instead, now an exception is thrown. #4485 #4487- Fix number parsing such that integers are not parsed to float when
EINTRset inerrno. #4506- Fix SAX output of
number_floatto be locale-independent. #4505 #4084- Fix iterators to allow comparing default-initialized iterators. #4512 #4493
- Fix return value of
get_ptrfor unsigned integers. #4525 #4475- Fix regression of #2755 and replace
EOFwithchar_traits. #4532- Fix extended diagnostics to not trigger an assertion. #4537 #3915
- Fix
NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULTthrow an exception with an empty json #4507 #4508- Modernize integer comparison. #4577 #4559
- Serialize empty tuple into
[]instead ofnull. #4594 #4530Warnings
The quality assurance page gives an overview of the warning flags used during the tests.
Compiler warnings
... (truncated)
Changelog
Sourced from nlohmann_json's changelog.
Changelog
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
unreleased (2024-12-22)
- Impossible de read json file create with nlohmann::ordered_json::dump #4556
- Error C2039 : 'json_sax_dom_callback_parser': is not a member of 'nlohmann::json_abi_v3_11_3::detail' #4529
json_fwd.hppdon't define default template arguments for ordered_map #4518- new repo version seems stop create any the ingress-nginx controller with opentelemetry-cpp.git #4515
- Error converting to/from scoped enumerations #4499
- Default initialized iterators are not comparable #4493
- Bug json.exception.type_error.302 #4492
- tests fail to build with clang-19 and libc++ due to unsupported
std::char_traits#4490- Brace-Initialization Fails with json::parse and Key Access on Linux #4488
- Crash when parsing nullptr #4485
- Namespace macros are not respected in many instances #4484
- ohos model to json string garbage characters #4481
- Missing newlines in deserialized string #4479
- Latest tag not available on NuGet #4478
- Invalid union access for get_ref/get_ptr with unsigned integer #4475
- /accesswallet #4469
- struct reflect json with error C2440 #4467
- Compiler error when using macro NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE #4463
- Issue when dumping a vector of derived classes #4462
- whit std::wstring compile error #4460
- Inconsisten operator[] #4458
- json parse enclosing json object with [] #4457
- [bug] nlohmann::json constructor behaves improperly #4450
- parse OOM #4449
- Library Cannot Parse JSON File It Wrote #4448
- Unexpected Integer Conversion of JSON Values on ARM64 #4447
- Structure declared in natvis file template doesn't seem to match current structure of
basic_json<>#4438- A lot of EOT in json file #4436
- CVE-2024-34062 #4429
- CVE-2024-39689 #4428
- CVE-2024-5569 #4427
- CVE-2024-37891 #4426
- Tornado vulnerabilities #4425
- CVE-2024-35195 #4424
- CVE-2024-22195, CVE-2024-34064 #4423
- CVE-2024-3651 #4422
- CVE-2024-22190 #4421
- CVE-2024-39705 #4420
- Failing to read complex Unicode string embedded in JSON #4417
- Unable to parse JSON string from snake case to camel case #4399
- Crashes when I try to use ‘json::at()’ on a properly structured, non null, and correctly constructed ‘.json’ file #4387
- JSON_BuildTests fail when JSON_DisableEnumSerialization is set to ON #4384
- JSON can't parse a simple data #4383
... (truncated)
Commits
- See full diff in compare view
Package Dependencies
Security Advisories
tqdm CLI arguments injection attack
Internationalized Domain Names in Applications (IDNA) vulnerable to denial of service from specially crafted inputs to idna.encode
Requests `Session` object does not verify requests after making first request with verify=False
zipp Denial of Service vulnerability
Jinja vulnerable to HTML attribute injection when passing user input as keys to xmlattr filter
ntlk unsafe deserialization vulnerability
Jinja vulnerable to HTML attribute injection when passing user input as keys to xmlattr filter
Untrusted search path under some conditions on Windows allows arbitrary code execution
Certifi removes GLOBALTRUST root certificate
urllib3's Proxy-Authorization request header isn't stripped during cross-origin redirects
Technical Details
| ID: | 15932895 |
| UUID: | 4019430147 |
| Node ID: | PR_kwDOP8RVKM7Hv3ue |
| Host: | GitHub |
| Repository: | RunEdgeAI/agents-cpp-sdk |