Commit Graph

1463 Commits (b5364faf9d732052506cefc933d3f4e4f04513a5)

Author SHA1 Message Date
Niels Lohmann f4716a0d42
🚨 fix useless-cast warnings 2021-07-30 21:12:55 +02:00
Niels Lohmann c7822840eb
add regression test #2824 2021-07-30 15:00:54 +02:00
Niels Lohmann 2c030bac2c
add regression test #2824 2021-07-30 14:41:06 +02:00
Niels Lohmann 1c030cccf1
add regression test #2824 2021-07-29 15:23:21 +02:00
Niels Lohmann a563338039
Merge pull request #2825 from ldionne/ldionne-lazy
Properly constrain the basic_json conversion operator
2021-07-22 12:24:56 +02:00
Niels Lohmann 19a5e12136
CMake cleanup (#2885)
* 🔥 clean CMake files and Makefile
* 💡 update documentation
2021-07-22 09:25:55 +02:00
Niels Lohmann eba82ecd62
Refactor Unicode tests (#2889)
* ♻️ split Unicode tests
2021-07-21 21:17:01 +02:00
Louis Dionne b0e5965d71 Properly constrain the basic_json conversion operator
Fixes #2491
2021-07-19 11:16:27 -04:00
Niels Lohmann f907f9502d
Merge pull request #2875 from nlohmann/issue2592
Suppress C4127 warning in unit-json_pointer.cpp
2021-07-16 10:11:29 +02:00
Niels Lohmann 92ec35735c
Merge branch 'develop' of https://github.com/nlohmann/json into issue2592 2021-07-15 22:28:03 +02:00
Niels Lohmann db98073930
add regression test 2021-07-15 09:02:24 +02:00
Niels Lohmann b0730f29cf
🐛 fix logics 2021-07-12 15:24:06 +02:00
Niels Lohmann d40e98ecef
🐛 fix assertion failure #2838 2021-07-12 13:38:28 +02:00
Niels Lohmann cdfe865486
📝 add documentation for numbers 2021-04-28 20:33:05 +02:00
Niels Lohmann a34e011e24
Merge pull request #2576 from AnthonyVH/non_default_constructable_stl_containers
Add support for deserialization of STL containers of non-default constructable types (fixes #2574).
2021-04-25 15:22:37 +02:00
Niels Lohmann 1f1fa9f30e
🔥 remove some Travis builds 2021-03-27 14:44:39 +01:00
Benjamin A. Beasley ef826b6fba Update doctest from 2.4.4 to 2.4.6 (fixes #2686) 2021-03-25 13:16:04 -04:00
Anthony VH 2b865131d8 Fixing CI errors. 2021-03-24 23:33:21 +01:00
Anthony VH 8e79917d32 Fix clang-tidy complaints. 2021-03-24 13:27:59 +01:00
Anthony VH 333612ce35 Merge remote-tracking branch 'upstream/develop' into non_default_constructable_stl_containers 2021-03-24 12:33:57 +01:00
Niels Lohmann 6f551930e5
🚨 add new CI and fix warnings (#2561)
* ⚗️ move CI targets to CMake
* ♻️ add target for cpplint
* ♻️ add target for self-contained binaries
* ♻️ add targets for iwyu and infer
* 🔊 add version output
* ♻️ add target for oclint
* 🚨 fix warnings
* ♻️ rename targets
* ♻️ use iwyu properly
* 🚨 fix warnings
* ♻️ use iwyu properly
* ♻️ add target for benchmarks
* ♻️ add target for CMake flags
* 👷 use GitHub Actions
* ⚗️ try to install Clang 11
* ⚗️ try to install GCC 11
* ⚗️ try to install Clang 11
* ⚗️ try to install GCC 11
* ⚗️ add clang analyze target
* 🔥 remove Google Benchmark
* ⬆️ Google Benchmark 1.5.2
* 🔥 use fetchcontent
* 🐧 add target to download a Linux version of CMake
* 🔨 fix dependency
* 🚨 fix includes
* 🚨 fix comment
* 🔧 adjust flags for GCC 11.0.0 20210110 (experimental)
* 🐳 user Docker image to run CI
* 🔧 add target for Valgrind
* 👷 add target for Valgrind tests
* ⚗️ add Dart
*  remove Dart
* ⚗️ do not call ctest in test subdirectory
* ⚗️ download test data explicitly
* ⚗️ only execute Valgrind tests
* ⚗️ fix labels
* 🔥 remove unneeded jobs
* 🔨 cleanup
* 🐛 fix OCLint call
*  add targets for offline and git-independent tests
*  add targets for C++ language versions and reproducible tests
* 🔨 clean up
* 👷 add CI steps for cppcheck and cpplint
* 🚨 fix warnings from Clang-Tidy
* 👷 add CI steps for Clang-Tidy
* 🚨 fix warnings
* 🔧 select proper binary
* 🚨 fix warnings
* 🚨 suppress some unhelpful warnings
* 🚨 fix warnings
* 🎨 fix format
* 🚨 fix warnings
* 👷 add CI steps for Sanitizers
* 🚨 fix warnings
*  add optimization to sanitizer build
* 🚨 fix warnings
* 🚨 add missing header
* 🚨 fix warnings
* 👷 add CI step for coverage
* 👷 add CI steps for disabled exceptions and implicit conversions
* 🚨 fix warnings
* 👷 add CI steps for checking indentation
* 🐛 fix variable use
* 💚 fix build
*  remove CircleCI
* 👷 add CI step for diagnostics
* 🚨 fix warning
* 🔥 clean Travis
2021-03-24 07:15:18 +01:00
Niels Lohmann 4917e7c259
Merge branch 'develop' of https://github.com/nlohmann/json into diagnostics
 Conflicts:
	include/nlohmann/detail/input/parser.hpp
	single_include/nlohmann/json.hpp
2021-02-07 17:45:09 +01:00
Niels Lohmann 5b0c804630
🐛 properly assign two labels to one test case #2596 2021-01-27 14:22:58 +01:00
Niels Lohmann 3b63a47270
🚨 suppress warning 2021-01-26 20:53:02 +01:00
Niels Lohmann 74cc0ab470
♻️ remove diagnostics_t class 2021-01-25 13:47:50 +01:00
Niels Lohmann e8dba10f53
add test 2021-01-24 17:45:48 +01:00
Niels Lohmann 380a613f2b
🐛 fix bug in diagnostics_t 2021-01-23 20:58:59 +01:00
Anthony VH 848927ae90 Updated comments as requested. 2021-01-23 18:24:47 +01:00
Niels Lohmann 51ac6000d2
improve coverage 2021-01-21 13:36:23 +01:00
Niels Lohmann 33379684b4
improve coverage 2021-01-17 22:52:40 +01:00
Niels Lohmann 5ec0980514
💚 fix build 2021-01-17 16:51:14 +01:00
Niels Lohmann 65107f7c9d
💚 fix build 2021-01-17 13:32:36 +01:00
Niels Lohmann aeecc09ba1
add tests for diagnostics 2021-01-16 15:33:19 +01:00
Anthony VH 672e8bfc1d Fixed std::pair trying to deserialize via array functions. 2021-01-11 18:16:15 +01:00
Niels Lohmann a83404525e
🚨 fix warnings 2021-01-10 13:39:36 +01:00
Niels Lohmann e160749003
♻️ move diagnostic code in header 2021-01-09 19:21:18 +01:00
Anthony VH 1b113f73c2 Added extra tests to improve coverage. 2021-01-09 17:54:56 +01:00
Anthony VH 1e825e4f92 Add support for deserialization of STL containers of non-default constructable types (fixes #2574). 2021-01-09 00:08:27 +01:00
Niels Lohmann 7cdf34b21e
Merge branch 'develop' of https://github.com/nlohmann/json into diagnostics 2021-01-08 10:20:34 +01:00
Niels Lohmann 01f6b2e741
📄 update copyright year 2021-01-03 20:54:17 +01:00
Niels Lohmann 294fa343d5
🐛 fix bug in move constructor 2021-01-03 20:06:32 +01:00
Niels Lohmann ec0b1798bc
🚧 implement more parent relations 2021-01-02 21:36:11 +01:00
Niels Lohmann 7323a8eb4e
🚧 add tests 2021-01-02 16:13:04 +01:00
Niels Lohmann 581f92b601
Merge branch 'develop' of https://github.com/nlohmann/json into issue2324 2020-12-30 20:23:07 +01:00
Niels Lohmann fc7e181cbf
⚗️ fix string representation 2020-12-29 22:21:31 +01:00
Niels Lohmann bdb2469c31
🚨 fix warnings 2020-12-29 21:36:30 +01:00
Niels Lohmann c886646707
🚨 fix warning 2020-12-29 21:04:41 +01:00
Niels Lohmann 4402176df5
add regression test 2020-12-29 20:52:57 +01:00
Niels Lohmann e4fc598466
⚗️ add C++20 build 2020-12-29 20:45:56 +01:00
Niels Lohmann 433da31334
⚗️ try to use GCC 10 2020-12-29 20:16:51 +01:00
Niels Lohmann 7b98df515f
add regression test 2020-12-29 14:48:18 +01:00
Jaakko Moisio 467f622c65 Fix compilation of input_adapter(container) in edge cases
This fixes a compilation issue with the library if trying to use containers that
don't have non-member `begin()` and `end()` functions via ADL.

This patch extends the `using std::begin` and `using std::end` declarations to
also cover the return type deduction of the input_adapter() template
specialization for containers. The previous implementation only enabled the
detection of `std::begin()` and `std::end()` in the function body, making the
specialization unusable for container types that only have member `begin()` and
`end()` functions.

It is not typical to have `using` declarations in the namespace scope in a
header file. But a C++11 implementation can't rely on fully automatic return
type deduction, and needs to rely on ADL enabled helper templates. To prevent
the using declarations leaking, they are enclosed in another nested namespace.
2020-12-28 22:21:02 +01:00
Niels Lohmann f15d447522
🚨 fix warnings 2020-12-26 14:55:19 +01:00
Alexander Karzhenkov cd7acc1dc5 Include <string_view> in "nlohmann/json.hpp" when C++17 is used 2020-12-20 19:40:36 +05:00
Alexander Karzhenkov 39b8d6bd33 Restore intentionally disrupted C++17 tests 2020-12-20 12:43:35 +05:00
Alexander Karzhenkov 8247a217bb Disrupt all C++17 tests to check if they are executed 2020-12-19 18:58:49 +05:00
Krylov Yaroslav a1772743a1
Doctest is updated to v2.4.3 2020-12-18 07:27:22 +03:00
Niels Lohmann c026e1a475
🚨 fix warnings 2020-12-16 21:44:35 +01:00
Krylov Yaroslav 6390fca71a
Doctest is updated to v2.4.1 2020-12-12 05:27:03 +03:00
Krylov Yaroslav 972c15f26e
ordered_map::insert(InputIt first, InputIt last) is added 2020-12-07 20:15:41 +03:00
Krylov Yaroslav 5155cc2c48
Ranged insert test section is added in unit-ordered_json.cpp 2020-12-07 19:47:41 +03:00
Niels Lohmann 1047d09b2a
annotate non-reproducible tests #2324 2020-08-30 13:23:34 +02:00
Niels Lohmann 9d726c25d5
♻️ remove "#define private public" 2020-08-12 13:30:06 +02:00
Niels Lohmann 4080d0b1a4
add test to compile without exceptions 2020-08-10 09:48:11 +02:00
Niels Lohmann b3e5cb7f20
🔖 set version to 3.9.1 2020-08-06 13:45:29 +02:00
Niels Lohmann 3888b1642a
🐛 fix lexer to properly cope with repeated comments #2330 2020-07-31 18:59:22 +02:00
Niels Lohmann 2326abc547
♻️ split regression tests 2020-07-30 12:13:05 +02:00
Niels Lohmann f13af83a94
🐛 add more functions from std::map to nlohmann::ordered_map 2020-07-28 21:47:06 +02:00
Niels Lohmann e590604822
🐛 fix a bug due to missing overloads in ordered_map container 2020-07-28 14:20:31 +02:00
Niels Lohmann e110667d21
🔖 set version to 3.9.0 2020-07-27 15:48:09 +02:00
Niels Lohmann e22cbacc41
🚨 fix warning 2020-07-26 12:12:17 +02:00
Niels Lohmann 67ed63b196
Merge pull request #2312 from nlohmann/docs
Update documentation
2020-07-26 10:06:01 +02:00
Niels Lohmann a34070d36a
fix test for meta() function 2020-07-25 22:28:14 +02:00
Niels Lohmann 42f8708940
Merge branch 'develop' of https://github.com/nlohmann/json into issue2286
 Conflicts:
	single_include/nlohmann/json.hpp
2020-07-25 21:44:58 +02:00
Niels Lohmann 40b78d3847
Merge pull request #2308 from nlohmann/cbor_tags
Fix bug in CBOR tag handling
2020-07-25 19:43:11 +02:00
Niels Lohmann 448ceb2e12
Merge pull request #2303 from nlohmann/cleanup
Cleanup
2020-07-25 05:41:51 +02:00
Niels Lohmann 480ad529e3
🐛 fix bug in CBOR tag handling 2020-07-24 14:18:39 +02:00
Niels Lohmann 33662417c1
improve coverage 2020-07-24 09:32:03 +02:00
Niels Lohmann 0cd120f7e1
🚨 fix UBSAN warning 2020-07-23 14:06:09 +02:00
Niels Lohmann bba57cc4af
🚨 fix UBSAN warning 2020-07-23 14:02:49 +02:00
Niels Lohmann e571c67c0d
🚨 fix implicit conversion warning when opening binary file 2020-07-23 14:02:12 +02:00
Niels Lohmann 43e07bb92d
Merge pull request #2301 from nlohmann/regression2281
Add test with multiple translation units
2020-07-23 13:14:24 +02:00
Niels Lohmann 8159091d8f
🔀 rename variable to avoid shadowing 2020-07-23 12:58:09 +02:00
Niels Lohmann a33c3fdf25
Merge branch 'develop' of https://github.com/nlohmann/json into issue2286
 Conflicts:
	single_include/nlohmann/json.hpp
2020-07-23 12:30:07 +02:00
Niels Lohmann a048b72fe1
Merge pull request #1559 from theodelrieu/feat/explicit_conversion_operator
Feat/explicit conversion operator
2020-07-23 08:52:51 +02:00
Niels Lohmann a6d112ffbf
add regression test for #2281 2020-07-22 13:39:40 +02:00
Niels Lohmann 2301bd1177
add regression test for #2281 2020-07-22 13:24:07 +02:00
Niels Lohmann c4356c68e0
add regression test for #2281 2020-07-22 12:38:39 +02:00
Niels Lohmann 4d63252c6c
add regression test for #2281 2020-07-22 12:23:58 +02:00
Niels Lohmann a7c4c84d68
add regression test for #2281 2020-07-22 12:03:37 +02:00
Théo DELRIEU 74b446f5fd
add a switch to enable implicit conversions (defaults to true)
wrap implicit conversions tests around the JSON_USE_IMPLICIT_CONVERSIONS
macro
2020-07-22 10:49:01 +02:00
Niels Lohmann 8b14c9b305
🚨 fix warnings 2020-07-21 23:00:56 +02:00
Niels Lohmann 3249a4d821
Merge branch 'develop' of https://github.com/nlohmann/json into issue2286
 Conflicts:
	single_include/nlohmann/json.hpp
2020-07-21 22:01:32 +02:00
Niels Lohmann 96e9f66025
🔇 remove debug output 2020-07-21 22:01:15 +02:00
Niels Lohmann 8046754c15
🔊 add debug output to tests 2020-07-21 12:44:38 +02:00
Niels Lohmann a9117828e1
🚨 fix warnings 2020-07-20 22:38:00 +02:00
Niels Lohmann 8344857764
Merge pull request #2287 from pfeatherstone/develop
Serialisation macros: increase upper bound on number of member variables
2020-07-20 21:35:55 +02:00
Niels Lohmann 8aa6da61dc
🚧 support for UBJSON high-precision numbers #2286 2020-07-20 13:57:19 +02:00
Niels Lohmann 7360e09830
🚧 support for UBJSON high-precision numbers #2286 2020-07-20 13:12:20 +02:00
pf 35b899e988 [JSON] initialise all member variables. Maybe this will shut valgrind up. std::tie probably wasn't the problem initially 2020-07-20 10:51:43 +01:00