- 12 4月, 2022 3 次提交
-
-
由 JungHoon Lee 提交于
-
* Make exception context optional Change exception context parameter to pointer and replace context with nullptr where appropriate. * Support escaping other string types * Add string concatenation function Add variadic concat() function for concatenating char *, char, and string types. * Replace string concatenations using + with concat() * Template json_pointer on string type Change json_pointer from being templated on basic_json to being templated on string type. * Add unit test for #3388 Closes #3388. * Fix regression test for #2958 * Add backwards compatibility with json_pointer<basic_json> * Update json_pointer docs * Allow comparing different json_pointers * Update version numbers
-
* Exclude std::any from implicit conversion Fixes #3428 (MSVC) and silences compiler warning on GCC (-Wconversion). * Exclude std::any from implicit conversion
-
- 10 4月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 08 4月, 2022 1 次提交
-
-
Constrain from_json() overload for StringType to not accept json_ref and require it to be assignable, instead of constructible, from basic_json::string_t. Re-enable C++14 tests on Clang <4.0. Fixes #3171. Fixes #3267. Fixes #3312. Fixes #3384.
-
- 06 4月, 2022 5 次提交
-
-
由 Michael Nosthoff 提交于
-
由 Niels Lohmann 提交于
*
⬆ use new CI image *⬆ use new CI image *🚨 suppress Clang-Tidy warnings *💚 use proper scan-build version *🚨 suppress Clang-Tidy warnings *⬆ use more recent GitHub actions *💚 add missing compiler *📝 update used compilers *🚨 fix duplicate inclusion -
由 Niels Lohmann 提交于
-
AppVeyor build VMs should provide at least two cores. Parallelize builds and tests. In addition, enable output on failure and disable verbose test output.
-
Restore the previously disabled check for regression #3070 on all compilers but MSVC. To summarize the issue: Given namespace fs = std::filesystem. On MSVC attempting to construct an fs::path from json results in an ambiguous overload resolution because fs::path can be constructed from both a std::string as well as another fs::path. To the best of my knowledge there is no way to fix an ambiguous overload situation involving a type we do not control and with json implicitly converting to both std::string and fs::path. Re-enabling the check where it compiles and keeping it disabled for MSVC is the best we can do. Closes #3377 and #3382.
-
- 05 4月, 2022 1 次提交
-
-
由 flagarde 提交于
* Report the right __cplusplus value for MSVC in basic_json meta() * Run amalgamate
-
- 04 4月, 2022 2 次提交
-
-
-
由 DarkZeros 提交于
* Avoid clash with Arduino defines * Arduino defines B0/B1 in "binary.h" #define B0 0 #define B1 1 This clashes with names of the template variables in conjuction * Renaming them to "B" rather than "B1" Now it can be used as-is in Arduino projects * Apply suggestions from code review * Apply suggestions from code review Co-authored-by: NDaniel Ansorregui <d.ansorregui@samsung.com> Co-authored-by: NNiels Lohmann <niels.lohmann@gmail.com>
-
- 01 4月, 2022 1 次提交
-
-
由 Krzysiek Karbowiak 提交于
* Refactor assertion and adjust expected error message * Refactor assertion and adjust expected error message * Refactor assertion and remove redundant local variable * Refactor assertion and remove redundant local variable * Rename local variable * Apply formatting
-
- 25 3月, 2022 3 次提交
-
-
由 Niels Lohmann 提交于
-
由 Niels Lohmann 提交于
-
由 Niels Lohmann 提交于
-
- 24 3月, 2022 2 次提交
-
-
由 Krzysiek Karbowiak 提交于
* Add missing check * Refactor assertions in unit-algorithms.cpp * Refactor assertions in unit-bson.cpp * Refactor assertions in unit-cbor.cpp * Refactor assertions in unit-class_const_iterator.cpp * Refactor assertions in unit-class_iterator.cpp * Refactor assertions in unit-class_parser.cpp * Refactor assertions in unit-constructor1.cpp * Refactor assertions in unit-convenience.cpp * Refactor assertions in unit-conversions.cpp * Refactor assertions in unit-deserialization.cpp * Refactor assertions in unit-element_access1.cpp * Refactor assertions in unit-element_access2.cpp * Refactor assertions in unit-iterators1.cpp * Refactor assertions in unit-iterators2.cpp * Refactor assertions in unit-json_patch.cpp * Refactor assertions in unit-json_pointer.cpp * Refactor assertions in unit-modifiers.cpp * Refactor assertions in unit-msgpack.cpp * Refactor assertions in unit-reference_access.cpp * Refactor assertions in unit-regression1.cpp * Refactor assertions in unit-serialization.cpp * Refactor assertions in unit-ubjson.cpp * Refactor assertions in unit-unicode1.cpp * Apply formatting
-
* Refactor unit test creation Add functions for creating tests and to supply test- and standard-specific build settings. Raises minimum CMake version to 3.13 in test directory. json_test_add_test_for( <file> MAIN <main> [CXX_STANDARDS <version_number>...] [FORCE]) Given a <file> unit-foo.cpp, produces test-foo_cpp<version_number> if C++ standard <version_number> is supported by the compiler and thesource file contains JSON_HAS_CPP_<version_number>. Use FORCE to create the test regardless of the file containing JSON_HAS_CPP_<version_number>. Test targets are linked against <main>. CXX_STANDARDS defaults to "11". json_test_set_test_options( all|<tests> [CXX_STANDARDS all|<args>...] [COMPILE_DEFINITIONS <args>...] [COMPILE_FEATURES <args>...] [COMPILE_OPTIONS <args>...] [LINK_LIBRARIES <args>...] [LINK_OPTIONS <args>...]) Supply test- and standard-specific build settings. Specify multiple tests using a list e.g., "test-foo;test-bar". Must be called BEFORE the test is created. * Use CMAKE_MODULE_PATH * Don't undef some macros if JSON_TEST_KEEP_MACROS is defined * Use JSON_TEST_KEEP_MACROS Incidentally enables the regression tests for #2546 and #3070. A CHECK_THROWS_WITH_AS in #3070 was disabled which is tracked in #3377 and a line in from_json(..., std_fs::path&) was marked with LCOV_EXCL_LINE. * Add three-way comparison feature test macro * Disable broken comparison if JSON_HAS_THREE_WAY_COMPARISON * Fix redefinition of inline constexpr statics Redelcaration of inline constexpr static data members in namespace scope was deprecated in C++17. Fixes -Werror=deprecated compilation failures. * Fix more test build failures due to missing noexcept * CI: update cmake_flags test to use CMake 3.13 in test directory Also change default for JSON_BuildTests option to depend on CMake version. * CI: turn *_CXXFLAGS into CMake lists * CI: use JSON_TestStandards to set CXX_STANDARD * CI: pass extra CXXFLAGS to standards tests
-
- 08 3月, 2022 2 次提交
-
-
Commit f28fc226 introduced const qualifiers on post-(inc-/dec-)rement operators of iterators. These qualifiers prevent the use of basic_json in place of std::ranges::range, which requires the post-increment operator to be equality-preserving. These changes appear to be the result of ICC compiler suggestions, and no further explanation is discernible from the PR discussion (#858). Further testing revealed, that clang-tidy also suggests adding const to prevent "accidental mutation of a temporary object". As an alternative, this commit partially reverts f28fc226, removing all added const qualifiers from return types and adds lvalue reference qualifiers to the operator member functions instead. Unit tests ensure the operators remain equality-preserving and accidental mutation of temporaries following post-(inc-/dec-)rement is prohibited. Fixes #3331.
-
*
🔧 use proper GCC binary *🔧 add more GCC warning flags *⚗ try fix from https://github.com/nlohmann/json/issues/3138#issuecomment-1015562666 * Fix custom allocator test build failures (C++20) Allocator tests fail to compile in C++20 mode with clang+MS STL due to missing copy constructors. * Fix test build failures due to missing noexcept (gcc-12) * alt_string has multiple member functions that should be marked noexcept. * nlohmann::ordered_map constructors can be noexcept. Compilation failures result from the warning flag -Werror=noexcept and gcc-12. * Disable broken comparison tests in C++20 mode Co-authored-by: NNiels Lohmann <mail@nlohmann.me>
-
- 07 3月, 2022 3 次提交
-
-
由 Niels Lohmann 提交于
-
由 Andrea Cocito 提交于
* Update macros.md Typos, typos
-
One of the ordered_map constructors was incorrectly accepting a std::initializer_list<T> instead of std::initializer_list<value_type>. Add regression test. Fixes #3343.
-
- 06 3月, 2022 2 次提交
-
-
由 Niels Lohmann 提交于
*
🔧 use FetchContent_MakeAvailable *💚 fix test names -
* CI: add workflow_dispatch trigger * CI: change msvc2019*/clang* runners to windows-2019 GitHub updated their runners. windows-latest is now based on Windows Server 2022 and comes with different tool versions. MSVC 2019 is still available via the windows-2019 runner.
-
- 19 2月, 2022 1 次提交
-
-
由 Faruk D 提交于
* Update CITATION.cff cffversion to 1.2.0 * Fix CITATION.cff date-released Co-authored-by: NAbel Soares Siqueira <abel.s.siqueira@gmail.com>
-
- 12 2月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 09 2月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 31 1月, 2022 1 次提交
-
-
由 pketelsen 提交于
* Added new macros NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT. * Updated docs for NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT accordingly * Rephrased docs for NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT * Updated docs for NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT * Renamed default_obj in to avoid name clashes * Added test for serialization of default constructed object * Add const to getters for macro tests Co-authored-by: NChaoya Li <harry75369@gmail.com>
-
- 30 1月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 26 1月, 2022 2 次提交
-
-
由 Thomas Braun 提交于
* .github/workflows/windows.yml: Add support for Visual Studio 2022 This is available in github actions since some time now [1]. [1]: https://github.com/actions/virtual-environments/issues/3949 * README.md: Add VS 2022 [skip ci] The version and the build engine version (aka MSBuild version) were taken from [1]. [1]: https://github.com/actions/virtual-environments/blob/win22/20220116.1/images/win/Windows2022-Readme.md
-
由 Niels Lohmann 提交于
*
🔨 add script to create xz archive
-
- 13 1月, 2022 1 次提交
-
-
由 Ferry Huberts 提交于
-
- 12 1月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 09 1月, 2022 1 次提交
-
-
由 Niels Lohmann 提交于
-
- 06 1月, 2022 2 次提交
-
-
由 Niels Lohmann 提交于
-
由 Niels Lohmann 提交于
-
- 05 1月, 2022 2 次提交
-
-
由 Dimitris Apostolou 提交于
-
由 Niels Lohmann 提交于
-