Commit graph

755 commits

Author SHA1 Message Date
Niels Lohmann 5c08a52fd6
♻️ overwork std specializations (#3121) 2021-11-04 16:38:40 +01:00
Niels Lohmann 5d87c4d409
Add recursive update function (#3069)
*  add recursive update function
2021-11-03 13:52:20 +01:00
Niels Lohmann 7440786b81
Update CI (#3088)
* 👷 prepare GitHub actions for new Docker image

* 👷 use experimental docker image

* 👷 use Clang-Analyzer 14

* 🔇 suppress readability-identifier-length

* 🔇 suppress more Clang-Tidy warnings

* ♻️ simplify code

* 🔇 suppress more Clang-Tidy warnings

* 🔇 suppress more Clang-Tidy warnings

* 🚨 fix warning

* 🚨 fix warning

* 🚨 fix warning

* 👷 use new Docker image
2021-10-29 21:27:34 +02:00
Niels Lohmann a09bfa5faa
🔖 set version to 3.10.4 2021-10-16 13:34:31 +02:00
Niels Lohmann 80cf9d7065
Revert invalid fix (#3082)
*  revert invalid fix
2021-10-16 13:27:28 +02:00
Niels Lohmann ba046e4ea4
Allow to use get with explicit constructor (#3079)
*  remove "fix" that caused #3077
2021-10-14 21:01:14 +02:00
Théo DELRIEU 0e694b4060
fix std::filesystem::path regression (#3073)
* meta: rework is_compatible/is_constructible_string_type

These type traits performed an incorrect and insufficient check.

Converting to a std::filesystem::path used to work by accident thanks to
these brittle constraints, but the clean-up performed in #3020 broke them.

* support std::filesystem::path

Fixes #3070
2021-10-14 19:19:46 +02:00
Niels Lohmann ab6a2c7425
🔖 set version to 3.10.3 2021-10-08 13:58:48 +02:00
Théo DELRIEU 80df5e8de6
meta: fix is_compatible/constructible traits (#3020)
The previous version relied on the existence of an 'iterator' type.

As mentioned in comments, this is not the proper way to do it and
causes issues with certain types (e.g. views from range-v3).

Add a 'is_range' trait that properly detects the return type of
'begin'/'end', and use it in instead.
2021-10-07 12:32:25 +02:00
Carl Smedstad 62f2997b79
Fix assertion failure for JSON_DIAGNOSTICS (#3037)
* Fix assertion failure #3032
2021-10-07 12:24:09 +02:00
Niels Lohmann 0b345b20c8
Allow allocators for output_vector_adapter (#2989)
* ♻️ allow allocators for vectors

*  add regression tests
2021-09-12 18:55:47 +02:00
Anthony VH 58b83b71dc
Set parent pointers for values inserted via update() (fixes #3007). (#3008)
* Set parent pointers for values inserted via update() (fixes #3007).

* Moved test for #3007 to proper file.

* Enable access to private members in diagnostics unit tests.

* Make style consistent with rest of code.

* Forced amalgamate rerun.

* Refactor test for #3007 so it doesn't use private members. Also extend to test both update() functions.

* Added fix for #3007 to update(const_iterator, const_iterator) as well.

* Added failing example code from #3007 as extra test.
2021-09-12 18:51:25 +02:00
Niels Lohmann 33b674b4b2
🔖 set version to 3.10.2 2021-08-26 08:13:04 +02:00
Giovanni Cerretani 28a169725e
Fix -Wunused warnings on JSON_DIAGNOSTICS (#2976)
* Fix #2975

Define JSON_DIAGNOSTICS to 0 if not defined to fix annoying Wundef warnings.

* amalgamated
2021-08-26 07:35:01 +02:00
Niels Lohmann 8ad66e9136
🔖 set version to 3.10.1 2021-08-24 20:19:55 +02:00
Niels Lohmann c753165db6
Fix parent update for diagnostics with ordered_json (#2963)
🐛 fix parent update for diagnostics with ordered_json
2021-08-22 20:30:20 +02:00
Pierre Hallot 433604843d
Fix extra ";" clang warnings 2021-08-19 17:04:34 +02:00
Niels Lohmann cfb71ad1bf
🐛 adding missing header 2021-08-18 13:33:35 +02:00
Niels Lohmann 1de378f580
🔖 set version to 3.10.0 2021-08-17 15:23:23 +02:00
Niels Lohmann 8cae9d7cd2
Overwork warning flags (#2936)
* ⚗️ update warning flags
2021-08-17 14:43:43 +02:00
Niels Lohmann 1aceeff3fc
🚨 fix C4244 warning 2021-08-14 13:40:52 +02:00
Niels Lohmann 0a0eb7a850
Merge branch 'develop' of https://github.com/nlohmann/json into issue2863
 Conflicts:
	.github/workflows/windows.yml
2021-08-14 11:19:48 +02:00
Ferry Huberts 364a21be6b Add coverage exclusion comments, as requested
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2021-08-13 15:30:55 +02:00
Ferry Huberts e7a69b8d31 Adjust more files after actually building like the CI
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2021-08-13 14:00:00 +02:00
Ferry Huberts 44d60f8d14 All: fix warnings when compiling with -Wswitch-enum
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2021-08-12 16:33:50 +02:00
Niels Lohmann e20f3f95eb
🚨 guard GCC pragmas #2924 2021-08-11 23:55:46 +02:00
Niels Lohmann 8ae31a56a5
Merge branch 'develop' of https://github.com/nlohmann/json into issue2824 2021-08-11 08:06:32 +02:00
Niels Lohmann 523f7c2c9d
💡 update documentation 2021-08-08 13:24:17 +02:00
Niels Lohmann 176e9bf0ab
add tests for CBOR 2021-08-07 13:14:08 +02:00
Niels Lohmann 89c98dfc20
add option to process binary subtypes in CBOR 2021-08-06 16:41:01 +02:00
Niels Lohmann b7db1d68d9
♻️ fix CBOR and BSON 2021-08-06 14:36:38 +02:00
Niels Lohmann 046df035fa
♻️ change type of binary subtype 2021-08-06 13:45:35 +02:00
Niels Lohmann 3eb1fb6be7
♻️ change type of binary subtype 2021-08-06 13:26:00 +02:00
Niels Lohmann 5c38e76c11
Merge branch 'develop' of https://github.com/nlohmann/json into issue2863 2021-08-06 13:23:26 +02:00
Sven Fink 353d59717e Add more suppressions on float comparisons 2021-08-04 08:34:53 +02:00
Sven Fink 095aae19fe Supress -Wfloat-equal on intended float comparisions 2021-08-03 08:58:38 +02:00
Niels Lohmann 7c19aa2210
♻️ overwork byte_container_with_subtype 2021-08-01 22:00:57 +02:00
Niels Lohmann c3df4ffd5a
🚨 fix warning 2021-08-01 14:08:14 +02:00
Niels Lohmann 9a459e1bd5
🚨 fix useless-cast warnings 2021-07-30 15:20:22 +02:00
Niels Lohmann 7feb2c20cf
🚨 fix useless-cast warnings 2021-07-30 14:48:25 +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
Louis Dionne b0e5965d71 Properly constrain the basic_json conversion operator
Fixes #2491
2021-07-19 11:16:27 -04:00
Niels Lohmann 7066ab128f
🎨 reindent code 2021-07-19 16:56:28 +02:00
Niels Lohmann b7cc47089f
avoid string in case of empty objects 2021-07-16 09:27:18 +02:00
Niels Lohmann c89e23c69b
Merge pull request #2874 from nlohmann/issue2572
Fix truncation warning
2021-07-16 07:54:48 +02:00
Niels Lohmann 996ac1c017
Merge branch 'develop' of https://github.com/nlohmann/json into issue2572
 Conflicts:
	include/nlohmann/detail/output/serializer.hpp
	single_include/nlohmann/json.hpp
2021-07-15 21:57:52 +02:00
Niels Lohmann 3e4723a49f
🔨 remove noexcept annotation 2021-07-15 21:49:09 +02:00
Niels Lohmann ecaac22656
💡 add comment to describe j.m_value.destroy(j.m_type) calls 2021-07-15 20:34:50 +02:00
Niels Lohmann f6863e062c
🐛 fix leak for all types 2021-07-15 20:32:37 +02:00
Niels Lohmann 0011cd1b72
🐛 fix leak for strings 2021-07-15 13:12:21 +02:00