Changelog History
Page 1
-
v3.11.2 Changes
August 12, 2022- MSVC natvis visualizer does not work after introduction of inline ABI namespace #3696
- The use of parenthesis gives compilation errors in some situations #3682
- extern from/to_json result in linker error #3657
- json_fwd.hpp no longer standalone #3656
- regression:
.value<size_t>
is compilation error. #3655 - Regression: no match for 'operator!=' comparing json_pointer and const char */string_t #3654
- Regression: call to member function 'value' is ambiguous #3652
π macOS 10.15 Actions runner image deprecation #3612
generate_natvis.py: validate version number; cleanup #3698 (falbrechtskirchinger)
β Add Python script for generating Natvis file and update file for 3.11.2 #3697 (falbrechtskirchinger)
β Add amalgamated json-fwd.hpp to release #3687 (nlohmann)
π Documentation updates for 3.11.2 #3686 (falbrechtskirchinger)
π Make json_pointer usable as map key (again) #3685 (falbrechtskirchinger)
Deprecate json_pointer/string_t comparisons #3684 (falbrechtskirchinger)
Restructure inline namespace and allow version component to be disabled #3683 (falbrechtskirchinger)
Properly constrain non-string json_pointer overloads #3681 (falbrechtskirchinger)
Amalgamate the forward declaration header #3679 (falbrechtskirchinger)
π Fix 'const' qualifier on bool& has no effect #3678 (falbrechtskirchinger)
Attempt to fix labeler permissions #3674 (falbrechtskirchinger)
π Refine 'Publish documentation' workflow #3673 (falbrechtskirchinger)
Add json_pointer/string_t equality comparison operators #3664 (falbrechtskirchinger)
Reimplement value() access functions #3663 (falbrechtskirchinger)
π Publish documentation on push to develop branch #3660 (nlohmann)
β Add Discord badge to README #3651 (falbrechtskirchinger)
π Miscellaneous small fixes #3643 (falbrechtskirchinger)
π Minor BJData fixes #3637 (falbrechtskirchinger)
β‘οΈ Update CI #3626 (falbrechtskirchinger)
-
v3.11.1 Changes
August 01, 2022- Regression: no matching literal operator for call to 'operator""_json' #3645
_json operator""() #3644
π Fix global UDLs #3646 (falbrechtskirchinger)
-
v3.11.0 Changes
August 01, 2022- β ICPC: warning #1098: the qualifier on this friend declaration is ignored #3632
- Starting with 3.10.4, just adding
\#include json.hpp
causes compile error: `overload resolution selected deleted operator '=' #3620 - xwidgets doesn't compile with version >3.10.3 #3602
- json_pointer__pop_back.cpp example does not compile #3600
- nlohmann::json::array 'push_back' is ambiguous #3589
- Multiple versions causing conflict #3588
- ERROR: ThreadSanitizer: SEGV on unknown address #3584
- β unicode4 test consistently fails on RISC-V hardware #3579
- π sax_parse(iterator, json_sax_t *) string callback clobbers spaces #3574
- π Nlohmann JSON Parse crash with raylib-cpp #3570
- ordered_json doesn't accept keys of types other than string_t (e.g., string_view) #3558
- turning an object into an array #3547
- json:parse_bjdata_fuzzer: ASSERT: ref_stack.back()->is_array() #3541
- β Warning about potential null dereference in GCC 12.1 (Fedora 36) #3525
- π· Enable 32bit unit test in CI #3524
- Error when roundtripping BJData #3519
- π ASSERT error while parsing BJData #3513
- π» An exception occurred when sending a string with double quotes #3504
- Binary reader for BJData creates incorrect SAX events #3503
- π It can't support "nan", "inf", "-inf" for float type #3494
- π ASAN error while parsing BJData (Heap-buffer-overflow READ 1) #3492
- π UBSAN error while parsing BJData (Null-dereference) #3491
- π UBSAN error while parsing BJData (Invalid-bool-value) #3490
- json:parse_bjdata_fuzzer reaches assertion #3475
- Compilation with -fmodules-ts and use inside of a module #3472
- π json.exception.parse_error.101 only occurs outside of IDE #3467
- json:parse_bjdata_fuzzer reaches assertion #3461
- NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT can not parse { "key" : null} #3458
- Unable to compile when using Microsoft's _CRTDBG #3457
- Compilation errors when including
<filesystem>
and using--std=c++17
or above (MinGW/Win10) #3449 - Weird things on for statement #3447
- π Parsing error when there is a json string within a Json #3445
- ordered_json vs json types comparison #3443
- Error occurred when converting nlohmann::json to std::any #3428
- I was forced to report an assertion error when copying an array of strings #3419
- About Serialization Error invalid UTF-8 byte at index #3414
- Comparison of NaN differs between json and float #3409
- when i use it in C++ sserver,it it constantly show that fatal error: adl_serializer.hpp: No such file or directory #3404
- π parse error #3403
- CMake script MAIN_PROJECT always OFF #3390
- π Parser unable to handle large floating point numbers #3389
- Compilation error if json_pointer is used with alternative string type #3388
- π Unit tests conversions & items fail to build (Clang <4.0/C++14 only) #3384
- β Regression test for #3070 is not being run and fails when enabled #3377
- π¨ Refactor unit tests to use more convenient doctest assertion macros #3365
- An json.h issue reported in a static code analyzer #3361
- Mixing different JSON_DIAGNOSTICS settings in separately compiled units leads to core #3360
- json::out_of_range exception matches against lot of others while testing #3352
- π§ use mipsel-openwrt-linux-g++ -std=c++11 to compile, it has some errors "error: 'snprintf' is not a member of 'std'" #3349
- β Add proper issue templates #3348
- switch from json to ordered_json #3343
- Json dump use to compilation errors #3339
- Ambiguous conversion from nlohmann::basic_json<> to custom class. #3333
- Iterator doesn't satisfy std::incrementable because post-increment may change constness #3331
- π Inconsistent handling of floating point numbers after parse() #3329
- π Documentation for
ordered_json
should show proper use of theparse()
function. #3325 - "type must be boolean, but is object" error thrown on non-boolean object #3319
- Incomplete Type in request parms #3318
- ε°η±³ MIX4 MIUI13 bug #3316
- π json.exception.parse_error.101 when parsing data received over a socket #3313
- π Parse to custom class from unordered_json breaks on G++11.2.0 with C++20 #3312
- try to assign dumped string to a class member varible #3300
- includedir in pkgconfig is error if install_headers() has subdir argument. #3284
- SHA-256 sum of json-3.10.5.tar.xz changes over time (but not the content itself) #3281
- items() method does not follow order of json message #3278
- Perplexing template deduction failure serialising a 3rd party type using base class #3267
- π¨ json.hpp 'isfinite' is not a member of 'std' also isinf; snprintf; stoull and to_string members of std #3263
- π JSON build fails for C++ cmake #3256
- Unexpected implicit conversion #3254
- β Add a function that checks for valid json in a C++ string #3245
- Replace use of standard IO from error handling #3239
- β Use Catch for unit tests #3232
- π» Exception thrown during initialization causes a memory leak #3215
- β Tests failing when compiling with c++20 #3207
- ambiguous regression #3204
- Deserialization: if class is_constructible from std::string wrong from_json overload is being selected, compilation failed #3171
- 'clang++ ./json.hpp' with no usage: Compiler syntax problem in clang 3.7.0 (tizen :/ ) #3153
- π build failure on upcoming gcc-12: test/src/unit-regression1.cpp:392:22: error: ambiguous overload for 'operator=' #3138
- Applying JSON patch creates parent object #3134
- Iterators cannot be used with range-v3 #3130
- π std::shared_ptr<T> == nlohmann::json compiles, which seem undesirable #3026
- β Error in test\download_test_data.vcxproj custom build step when compiling with Visual Studio 2019 16.7.7 msbuild on Windows 10 #2593
- Consider putting the user-defined literals in a namespace #1682
- Using versioned namespaces #1539
- How can I use std::string_view as the json_key to "operator []" ? #1529
serialize std::variant<...> #1261
β Add a unit test including windows.h #3631 (falbrechtskirchinger)
β Add regression tests for #3204 and #3333 #3629 (falbrechtskirchinger)
π Fix patch::add creating nonexistent parents #3628 (falbrechtskirchinger)
Disable exceptions on ICPC #3621 (falbrechtskirchinger)
π build: install .pc and .cmake files to share/ #3619 (Tachi107)
π Fix MinGW CI failures #3618 (falbrechtskirchinger)
π Fix Unicode test timeout (for real this time!) #3614 (falbrechtskirchinger)
π Use 'concurrency' in GitHub workflows #3610 (falbrechtskirchinger)
π Use swap() by ADL #3609 (falbrechtskirchinger)
π Move UDLs out of the global namespace #3605 (falbrechtskirchinger)
Re-add value_type detection to distinguish string types #3604 (falbrechtskirchinger)
β Add operator<<(json_pointer) #3601 (falbrechtskirchinger)
β Add documentation for comparing json and ordered_json #3599 (nlohmann)
β Add assertion if nullptr is passed to parse function #3593 (nlohmann)
β Add versioned, ABI-tagged inline namespace and namespace macros #3590 (falbrechtskirchinger)
β Add badge for https://repology.org/project/nlohmann-json/versions #3586 (nlohmann)
β Add error message if test suite cannot be found #3585 (nlohmann)
β Enable overriding test properties and set Unicode test timeouts #3580 (falbrechtskirchinger)
β‘οΈ Optimize output vector adapter write #3569 (romainreignier)
Add overloads for more key types to ordered_map and fix ordered_map::erase(first, last) with first == last #3564 (falbrechtskirchinger)
π Make certain usage patterns more prominent in the README #3557 (jez)
CI: fix "JSON_MultipleHeaders" option spelling #3555 (karzhenkov)
π More documentation updates for 3.11.0 #3553 (falbrechtskirchinger)
Use DOCTEST_* compiler macros and suppress pragmas warning #3550 (falbrechtskirchinger)
Add unit test to make sure iterator_input_adapter advances iterators correctly #3548 (falbrechtskirchinger)
Use
std::iterator_traits
to extractiterator_category
#3544 (Mike-Leo-Smith)BJData dimension length can not be string_t::npos, fix #3541 #3543 (fangq)
β Add to_json() for std::vector<bool>::reference #3534 (falbrechtskirchinger)
β CI: Enable 32bit unit test (3) #3532 (falbrechtskirchinger)
π Fix ndarray dimension signedness, fix ndarray length overflow (2); add 32bit unit test #3523 (falbrechtskirchinger)
β Add assertion to converting constructor #3517 (falbrechtskirchinger)
π CI: Remove -Wstrict-overflow #3516 (falbrechtskirchinger)
π Fix nlohmann/json#3513, explain is_ndarray flag #3514 (fangq)
Prevent ndarray size vector from recursive use, fix nlohmann/json#3503 #3505 (fangq)
prevent ndarray dimension vector from recusive array, nlohmann/json#3500 #3502 (fangq)
β‘οΈ Discard optimized containers with negative counts in UBJSON/BJData (#3491,#3492,#3490) #3500 (fangq)
β Add assertion for invariant in SAX-DOM parser #3498 (nlohmann)
π change bjdata ndarray flag to detect negative size, as part of #3475 #3479 (fangq)
β Add build step for ICPC (with fixes) #3465 (falbrechtskirchinger)
β‘οΈ Handle invalid BJData optimized type, fix #3461 #3463 (fangq)
β Enable rapid testing and development on Compiler Explorer #3456 (falbrechtskirchinger)
β Disable regression test for #3070 on GCC <8.4 #3451 (falbrechtskirchinger)
π Fix C++20/gcc-12 issues (Part 2) #3446 (falbrechtskirchinger)
π Exclude std::any from implicit conversion (fixes #3428) #3437 (falbrechtskirchinger)
Document which version introduced the macros #3431 (nlohmann)
π Fix constraints on from_json() for strings (fixes #3171, #3267, #3312, #3384) #3427 (falbrechtskirchinger)
π Implement support for string_view (attempt no. 3) #3423 (falbrechtskirchinger)
π CI: speedup AppVeyor builds by ~30% #3422 (falbrechtskirchinger)
βͺ Restore disabled check for #3070 (except on MSVC) #3421 (falbrechtskirchinger)
β Add check if different version is also included #3418 (nlohmann)
Report the right __cplusplus value for MSVC in basic_json meta() #3417 (flagarde)
π CI: windows-2016 has been deprecated; remove jobs #3416 (falbrechtskirchinger)
Re-template json_pointer on string type #3415 (falbrechtskirchinger)
π¨ Refactor unit tests to use more convenient doctest assertion macros (Part 2) #3405 (kkarbowiak)
π¨ Refactor unit tests to use more convenient doctest assertion macros #3393 (kkarbowiak)
π Improve unit testing (Part 1) #3380 (falbrechtskirchinger)
π Fix C++20/gcc-12 issues (Part 1) #3379 (falbrechtskirchinger)
β Add clarification to avoid misunderstanding that cause #3360 #3378 (puffetto)
Fix ordered_map ctor with initializer_list (fixes #3343) #3370 (falbrechtskirchinger)
π Fix and update CI #3368 (falbrechtskirchinger)
π Support UBJSON-derived Binary JData (BJData) format #3336 (fangq)
π Make iterator operator++/--(int) equality-preserving #3332 (falbrechtskirchinger)
π Fix CITATION.cff and add automatic validation of your citation metadata #3320 (fdiblen)
π .github/workflows/windows.yml: Add support for Visual Studio 2022 #3295 (t-b)
β Add maintainer targets to create source archive #3289 (nlohmann)
π Improve documentation InputType and IteratorType #3246 (nlohmann)
fix _MSC_VER version to check for std::filesystem #3240 (gcerretani)
Add macros NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and ..._NON_INTRUSIVE_WITH_DEFAULT #3143 (pketelsen)
-
v3.10.5 Changes
January 02, 2022- #include <filesystem> doesn't work with gcc-7 when
-std=c++17
is specified. #3203 - Not able to use nlohmann json with c++ code built using emscripten to wasm #3200
- β Warning for shadowed variables #3188
- Accessing missing keys on const json object leads to assert #3183
- Data member is available, but null is reported, and program throws error #3173
- serialization problem, from_json need construct new object #3169
- π std::filesystem unavailable on macOS lower deployment targets #3156
- π» [json.exception.type_error.305] cannot use operator[] with a string argument with string #3151
- json::dump() is not compatible with C++ standards #3147
- π Issue with json::parse decoding codepoints #3142
- π Simple parse of json object thinks it should be an array #3136
- How to properly read a Json string that may be null in some cases? #3135
- π Deadlock on create json - windows only #3129
- π Wrong parsing of int64 values nearest of limit #3126
- π ordered_json doesn't support range based erase #3108
- π Apple build failed with json/single_include/nlohmann/json.hpp:4384:57: 'path' is unavailable #3097
- GCC 7.5.0 with --std=c++17: filesystem: No such file or directory #3090
- β¬οΈ Drop Travis CI #3087
- ordered_json::reset() compile error with nvcc #3013
- Support for unordered_map as object_t #2932
- β Compiler warning with Intel compiler, same as #755 #2712
- β Compiler warnings with NVCC 11.2 #2676
- β some static analysis warning at line 11317 #1390
Compiling with icpc #755
β Add build step for NVCC and fix a warning #3227 (nlohmann)
π Fix: Warning for shadowed variables (#3188) #3193 (kernie)
π Fix FAQ hyperlink typo in readme #3148 (Prince-Mendiratta)
Docs: Update
skip_comments
toignore_comments
#3145 (daniel-kun)β Add missing erase(first, last) function to ordered_map #3109 (nlohmann)
β Add examples for parsing from iterator pair #3100 (nlohmann)
π Allow to use get with explicit constructor #3079 (nlohmann)
π fix std::filesystem::path regression #3073 (theodelrieu)
π Fix assertion failure for JSON_DIAGNOSTICS #3037 (carlsmedstad)
meta: fix is_compatible/constructible traits #3020 (theodelrieu)
β‘οΈ Set parent pointers for values inserted via update() (fixes #3007). #3008 (AnthonyVH)
π Fix -Wunused warnings on JSON_DIAGNOSTICS #2976 (gcerretani)
- #include <filesystem> doesn't work with gcc-7 when
-
v3.10.4 Changes
October 16, 2021- Compiler error in output serializer due to 'incompatible initializer' #3081
- Strange behaviour when using std::sort on std::vector<json> #3080
- π Unhandled exception: nlohmann::detail::parse_error #3078
- 0οΈβ£ explicit constructor with default does not compile #3077
- π Parse an object but get an array using GCC #3076
- π Version 3.10.3 breaks backward-compatibility with 3.10.2 #3070
- Feature request, Add to_json/from_json to align with other to/from binary api. #3067
vcpkg is out of date #3066
π Allow to use get with explicit constructor #3079 (nlohmann)
π fix std::filesystem::path regression #3073 (theodelrieu)
π Fix assertion failure for JSON_DIAGNOSTICS #3037 (carlsmedstad)
meta: fix is_compatible/constructible traits #3020 (theodelrieu)
β‘οΈ Set parent pointers for values inserted via update() (fixes #3007). #3008 (AnthonyVH)
π Fix -Wunused warnings on JSON_DIAGNOSTICS #2976 (gcerretani)
-
v3.10.3 Changes
October 08, 2021- π Parsing an emtpy string returns a string with size 1 instead of expected 0 #3057
- π Linking error "duplicate symbol: std::type_info::operator==" on static build with MinGW #3042
- Yet another assertion failure when inserting into arrays with JSON_DIAGNOSTICS set #3032
- π accept and parse function not work well with a pure number string #3029
- push_back doesn't work for serializing containers #3027
- Strange behaviour when creating array with single element #3025
- Input ordered_json doesn't work #3023
- Issue iterating through 'items' #3021
- Cannot spell the namespace right #3015
- π JSON Parse error when reading json object from file #3011
- β‘οΈ Parent pointer not properly set when using update() #3007
- Overwriting terminated null character #3001
- 'operator =' is ambiguous on VS2017 #2997
- JSON Patch for Array Elements #2994
- π JSON Parse throwing error #2983
- to_{binary format} does not provide a mechanism for specifying a custom allocator for the returned type. #2982
- 3.10.1 zip json.hpp has version number 3.10.0 instead of 3.10.1 #2973
Assertion failure when serializing array with JSON_DIAGNOSTICS set #2926
π Fix assertion failure for JSON_DIAGNOSTICS #3037 (carlsmedstad)
meta: fix is_compatible/constructible traits #3020 (theodelrieu)
β‘οΈ Set parent pointers for values inserted via update() (fixes #3007). #3008 (AnthonyVH)
-
v3.10.2 Changes
August 26, 2021- Annoying -Wundef on new JSON_DIAGNOSTICS macro #2975
- += issue with multiple redirection. #2970
"incomplete type βnlohmann::detail::wide_string_input_helper" compilation error #2969
π Fix -Wunused warnings on JSON_DIAGNOSTICS #2976 (gcerretani)
-
v3.10.1 Changes
August 24, 2021- JSON_DIAGNOSTICS assertion for ordered_json #2962
- Inserting in unordered json using a pointer retains the leading slash #2958
- β Test #9: test-cbor test case sample.json fails in debug mode - Stack overflow #2955
- 3.10.0 broke at least the Bear project #2953
- 2 tests fail in 3.10.0: cmake_fetch_content_configure, cmake_fetch_content_build #2951
- ctest (58+60,/67 cmake_import_configure) fails when build with -D JSON_Install:BOOL=OFF because of missing nlohmann_jsonTargets.cmake #2946
- Document vcpkg usage #2944
- π Linker error LNK2005 when compiling (x64) json-3.10.0.zip with Visual Studio 2019 16.11.1 #2941
π Move Travis jobs to travis-ci.com #2938
π Fixed typo in docs/api/basic_json/parse.md #2968 (mbadhan)
π Fix parent update for diagnostics with ordered_json #2963 (nlohmann)
β Set stack size for some unit tests when using MSVC #2961 (nlohmann)
β Add documentation for integration via vcpkg #2954 (nlohmann)
π¨ fix gdb_pretty_printer failure on basic types #2950 (senyai)
β Skip some tests if JSON_Install is not set #2947 (nlohmann)
β‘οΈ Updating the Homebrew Command #2943 (amirmasoudabdol)
-
v3.10.0 Changes
August 17, 2021- β Latest version 3.9.1 uses throw instead of JSON_THROW in the amalgamated json.hpp file #2934
- Copy to a variable inside a Structure #2933
- β warning C4068: unknown pragma 'GCC' on MSVC/cl #2924
- β Errors during ninja test #2918
- β compiler warning: "not return a value" #2917
- β Comparison floating points causes warning #2909
- β Why can't I have std::vector<json&> testList? #2900
- π [json.hpp] from releases doesnt work #2897
- β g++ (11) -Wuseless-cast gives lots of warnings #2893
- Cannot serialize and immediatly deserialize json to/from bson #2892
- Floating-point precision conversion error #2876
- How to avoid escaping for an already escaped string in .dump() #2870
- π can't parse std::vector<std::byte> #2869
- ASAN detects memory leaks #2865
- Binary subtype field cannot represent all CBOR tags #2863
- π string literals possibly being parsed as another type due to the presence of only digits and full-stops #2852
- π json::parse() works only with absolute paths #2851
- β Compiler Warnings on Raspberry Pi OS #2850
- Braced initialization and aggregate initialization behavior is different for
json::array()
function call. #2848 - β 3.9.1: test suite is failing #2845
- Documentation for macro JSON_NO_IO is missing #2842
- Assertion failure when inserting into arrays with JSON_DIAGNOSTICS set #2838
- HELP! There is a memory leak in the code?! #2837
- Elegant conversion of a 2-D-json array to a standard C++ array #2805
- π¦ Swift Package Manager support #2802
- Referencing a subkey which doesn't exist gives crash #2797
- Failed benchmark due to renamed branch #2796
- π Build Errors with VS 2019 and json Version 3.9.1 when attempting to replicate SAX Example #2782
- π Value with spaces cannot be parsed #2781
- π [Question] CBOR rfc support. #2779
- Using JSON.hpp header file in Visual Studio 2013 (C++ Project) #2775
- compilation error on clang-8 + C++17 #2759
- Undefined symbol EOF #2755
- π Parsing a string into json object behaves differently under g++ and MinGW compilers. #2746
- big git history size #2742
- How to get reference of std::vector<T> #2735
- CMake failure in VS2019 Community #2734
- Possibility to use with custom c++ version to use in intel sgx enclaves #2730
- Possibility to use without the dependency to file io and streams to use in intel sgx enclaves #2728
- error C2784& error C2839... in my visual studio 2015 compiler #2726
-fno-expection
not respected anymore in 3.9.1 #2725- When exceptions disabled with JSON_NOEXCEPTION, lib just aborts without any message #2724
- π Critical error detected c0000374 on windows10 msvc 2019 16.8.5 #2710
- β unused parameter error/warning #2706
- How to store data into a Map from json file #2691
- π Tests do not compile with pre-release glibc #2686
- π compile errors .... chromium-style #2680
- .dump() not allowing compact form #2678
- error: no matching function for call to βnlohmann::basic_json<>::value(int, std::set<int>&)β #2671
- β Compiler warning: unused parameter #2668
- Deserializing to a struct as shown on the project homepage throws compile time errors #2665
- Unable to compile on MSVC 2019 with SDL checking enabled: This function or variable may be unsafe #2664
- π» terminating with uncaught exception of type nlohmann::detail::type_error: [json.exception.type_error.302] type must be array, but is object #2661
- unused-parameter on OSX when Diagnostics is off #2658
- std::pair wrong serialization #2655
- The result of json is_number_integer() function is wrong when read a json file #2653
- 2 backslash cause problem #2652
- π No support for using an external/system copy of Hedley #2651
- error: incomplete type 'qfloat16' used in type trait expression #2650
- π» Unused variable in exception class when not using improved diagnostics #2646
- I am trying to do this - converting from wstring works incorrectly! #2642
- π Exception 207 On ARM Processor During Literal String Parsing #2634
- π double free or corruption (!prev) error on Json push_back and write #2632
- π nlohmann::detail::parse_error: syntax error while parsing CBOR string: expected length specification (0x60-0x7B) or indefinite string type (0x7F) #2629
- please allow disabling implicit conversions in non-single-file use #2621
- Preserve decimal formatting #2618
- Visual Studio Visual Assist code issues reported by VA code inspection of file json.hpp #2615
- Missing get function and no viable overloaded '=' on mac #2610
- π corruption when parse from string #2603
- π Parse from byte-vector results in compile error #2602
- π§ Memory leak when working on ARM Linux #2601
- β Unhandled exception in test-cbor.exe Stack overflow when debugging project with Visual Studio 2019 16.7.7 compiled with c++17 or c++latest #2598
- β Error in download_test_data.vcxproj when compiling with Visual Studio 2019 16.7.7 Professional msbuild on Windows 10 2004 Professional #2594
- π Warnings C4715 and C4127 when building json-3.9.1 with Visual Studio 2019 16.7.7 #2592
- I tried some change to dump() for [1,2,3...] #2584
- π try/catch block does not catch parsing error #2579
- Serializing uint64_t is broken for large values #2578
- deserializing arrays should be part of the library #2575
- 0οΈβ£ Deserialization to std::array with non-default constructable types fails #2574
- Compilation error when trying to use same type for number_integer_t and number_unsigned_t in basic_json template specification. #2573
- compiler error: directive output may be truncated writing between 2 and 8 bytes #2572
- Incorrect convert map to json when key cannot construct an string i.e. int #2564
- no matching function for call to βnlohmann::basic_json<>::basic_json(<brace-enclosed initializer list>)β #2559
- type_error factory creates a dangling pointer (in VisualStudio 2019) #2535
- Cannot assign from ordered_json vector<CustomStruct> to value in not ordered json #2528
- Qt6: Break changes #2519
- π valgrind memcheck Illegal instruction when use nlohmann::json::parse #2518
- Buffer overflow #2515
- π Including CTest in the top-level CMakeLists.txt sets BUILD_TESTING=ON for parent projects #2513
- Compilation error when using NLOHMANN_JSON_SERIALIZE_ENUM ordered_json on libc++ #2491
- Missing "void insert( InputIt first, InputIt last );" overload in nlohmann::ordered_map #2490
- π§ Could not find a package configuration file provided by "nlohmann_json" #2482
- json becomes empty for unknown reason #2470
- Using std::wstring as StringType fails compiling #2459
- Sample code in GIF slide outdated (cannot use emplace() with array) #2457
- β from_json<std::wstring> is treated as an array on latest MSVC #2453
- MemorySanitizer: use-of-uninitialized-value #2449
- I need help #2441
- type conversion failing with clang ext_vector_type #2436
- π json::parse() can't be resolved under specific circumstances #2427
- from_*(ptr, len) deprecation #2426
- π Error ONLY in release mode #2425
- "Custom data source" exemple make no sense #2423
- Compile errors #2421
- Refuses to compile in project #2419
- β Compilation failure of tests with C++20 standard (caused by change of u8 literals) #2413
- No matching function for call to 'input_adapter' under Xcode of with nlohmann version 3.9.1 #2412
- Git tags are not valid semvers #2409
- after dump, stderr output disappear #2403
- Using custom string. #2398
- π» value() throws unhandled exception for partially specified json object #2393
- assertion on runtime causes program to stop when accessing const json with missing key #2392
- Usage with -fno-elide-constructors causes dump() output to be array of
null
s #2387 - Build fails with clang-cl due to override of CMAKE_CXX_COMPILER(?) #2384
- std::optional not working with primitive types #2383
- Unexpected array when initializing a json const& on gcc 4.8.5 using uniform syntax #2370
- π setprecision support #2362
- π json::parse(allow_exceptions = false) documentation is misleading. #2360
- std::begin and std::end usage without specifying std namespace #2359
- Custom object conversion to json hangs in background thread #2358
- Add support of nullable fields to NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE and NLOHMANN_DEFINE_TYPE_INTRUSIVE #2356
- the portfile for the vcpkg is not working. #2351
- Compiler warns of implicit fallthrough when defining preprocessor macro NDEBUG #2348
- π Compile error on Intel compiler running in Windows #2346
- Build error caused by overwriting CMAKE_CXX_COMPILER #2343
- Error: an attribute list cannot appear here JSON_HEDLEY_DEPRECATED_FOR #2342
- β compiler warning #2341
- π 3.9.0: tests make build non-reproducible #2324
- π Initialization different between gcc/clang #2311
- Attempt to
get()
a numeric value as a type which cannot represent it should throw #2310 - Surprising behaviour with overloaded operators #2256
- ADL issue in input_adapter #2248
- Output adapters should be templated. #2172
- error when using nlohmann::json, std::function and std::bind #2147
- β Remove undefined behavior for const operator[] #2111
- json({}) gives null instead of empty object with GCC and -std=c++17 #2046
- π¨ GDB pretty printing support #1952
- β Always compile tests with all warnings enabled and error out on warnings #1798
- π Fixes Cppcheck warnings #1759
- π How to get position info or parser context with custom from_json() that may throw exceptions? #1508
- π Suggestion to improve value() accessors with respect to move semantics #1275
β Add Key name to Exception #932
β All: fix warnings when compiling with -Wswitch-enum #2927 (fhuberts)
Supress -Wfloat-equal on intended float comparisions #2911 (Finkman)
β Suppress C4127 warning in unit-json_pointer.cpp #2875 (nlohmann)
Consistency with
using
in README.md #2826 (justanotheranonymoususer)Properly constrain the basic_json conversion operator #2825 (ldionne)
β Specified git branch for google benchmark fetch in benchmark test #2795 (grafail)
β‘οΈ Update URLs to HTTPS #2789 (TotalCaesar659)
Add a cmake option to use SYSTEM in target_include_directories #2762 (jpl-mac)
replace EOF with std::char_traits<char>::eof() #2756 (nlohmann)
π Fix typo in README #2754 (mortenfyhn)
Possibility to use without the dependency to file io and streams to use in intel sgx enclaves #2729 (theShmoo)
pkg-config.pc.in: Don't concatenate paths #2690 (doronbehar)
β‘οΈ Update doctest from 2.4.4 to 2.4.6 (fixes #2686) #2687 (musicinmybrain)
π Update parse_exceptions.md - correct
json::exception::parse_error
#2679 (frasermarlow)β Remove HEDLEY annotation from exception::what() #2673 (remyjette)
π Fix amount of entries in the json object #2659 (abbaswasim)
π Fix missing 1.78 in example in README.md #2625 (wawiesel)
β Add support for deserialization of STL containers of non-default constructable types (fixes #2574). #2576 (AnthonyVH)
β Add switch to skip non-reproducible tests. #2560 (nlohmann)
π Fix compilation of input_adapter(container) in edge cases #2553 (jasujm)
π Allow parsing from std::byte containers #2550 (nlohmann)
β Travis doesn't run any tests in C++17 mode #2540 (karzhenkov)
Clarify license of is_complete_type implementation #2534 (nlohmann)
Do not unconditionally redefine C++14 constructs #2533 (nlohmann)
β Add MAIN_PROJECT check for test and install options #2514 (globberwops)
β Ranged insert test section is added in unit-ordered_json.cpp #2512 (YarikTH)
Change argument name "subtype" in byte_container_with_subtype #2444 (linev)
π Fix move constructor of json_ref #2405 (karzhenkov)
π Properly select "Release" build for Travis #2375 (karzhenkov)
π Fix and extend documentation of discarded values #2363 (nlohmann)
β Remove "#define private public" from tests #2352 (nlohmann)
π fix cmake script overwriting compiler path #2344 (ongjunjie)
-
v3.9.1 Changes
August 06, 2020π Release date: 2020-08-06
SHA-256: 7804b38146921d03374549c9e2a5e3acda097814c43caf2b96a0278e58df26e0 (json.hpp), 6bea5877b1541d353bd77bdfbdb2696333ae5ed8f9e8cc22df657192218cad91 (include.zip)Summary
This release fixes two bugs in the features introduced in release 3.9.0. The lexer did not accept consecutive comments , and
ordered_json
lacked some functions fromjson
. All changes are backward-compatible.π π° Note you can support this project via GitHub sponsors or PayPal.
π± π Bug Fixes
- The lexer did not accept input with two or more consecutive comments (e.g.
/* one */ /* two */ []
). #2330 #2332 - The newly introduced
ordered_json
container did not implement the complete interface ofbasic_json
which broke existing code whenjson
was replaced byordered_json
, in particular when trying to callordered_json::parse
. #2315 #2319 #2331
π± π¨ Further Changes
- Install pkg-config file to
CMAKE_CURRENT_BINARY_DIR
instead ofCMAKE_BINARY_DIR
#2318 - Make installation directory of pkg-config file depend on
CMAKE_INSTALL_LIBDIR
. #2314 - π Fix
-Wimplicit-fallthrough
warning. #2333 - π Fix name of Homebrew formula in documentation. #2326 #2327
- π Fix typo in documentation. #2320
π± π₯ Deprecated functions
π The following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0):
- Function
iterator_wrapper
are deprecated. Please use the member functionitems()
instead. - Functions
friend std::istream& operator<<(basic_json&, std::istream&)
andfriend std::ostream& operator>>(const basic_json&, std::ostream&)
are deprecated. Please usefriend std::istream& operator>>(std::istream&, basic_json&)
andfriend operator<<(std::ostream&, const basic_json&)
instead. - π Passing iterator pairs or pointer/length pairs to parsing functions (
basic_json::parse
,basic_json::accept
,basic_json::sax_parse
,basic_json::from_cbor
,basic_json::from_msgpack
,basic_json::from_ubjson
,basic_json::from_bson
) via initializer lists is deprecated. Instead, pass the elements individually without braces.
π All deprecations are annotated with
HEDLEY_DEPRECATED_FOR
to report which function to use instead. - The lexer did not accept input with two or more consecutive comments (e.g.