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
Niels Lohmann
7cf2fe149c
🚧 support for UBJSON high-precision numbers #2286
2020-07-20 09:42:37 +02:00
pf
7660ea12f6
[JSON] drop use of std::tie and std::tupe for operator== overload. valgrind and clang < 4 complain
2020-07-20 08:31:56 +01:00
pf
678d310b85
[JSON] don't know why CHECK doesn't like "CHECK(obj1 == obj2)". So using a temporary bool.
2020-07-19 21:29:39 +01:00
pf
e83ddb185d
[JSON] use CHECK from doctest
2020-07-19 21:25:27 +01:00
pf
254f0e3cee
[JSON] CHECK in doctest only accepts std::string ? Use assert statement instead. Does the job
2020-07-19 18:22:16 +01:00
pf
578217eaa3
[JSON] doctest: need another section ?
2020-07-19 18:17:03 +01:00
pf
6d9b2040ab
[JSON] as per Nlohmann's suggestion, added unit tests for the (de)serialisation macros
2020-07-19 18:12:13 +01:00