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
Remy Jette
0a9ec38f44
Remove HEDLEY annotation from exception::what()
...
The latest MSVC compiler throws the following warning on
nlohmann::detail::exception::what() if /analyze is enabled:
```
vcruntime_exception.h(93) : warning C28204: 'what' has an override at
`nlohmann\json\develop\single_include\nlohmann\json.hpp(2644)`
and only the override is annotated for return: when an override is
annotated, the base (this function) should be similarly annotated.
```
See https://godbolt.org/z/r331h4
2021-03-15 17:45:40 -07:00
Niels Lohmann
176d8e261a
Merge pull request #2562 from nlohmann/diagnostics
...
Better diagnostics
2021-02-10 07:20:54 +01:00
Niels Lohmann
bb90e34d22
⬆️ Hedley v15
2021-02-07 17:47:08 +01:00
Niels Lohmann
56a6dec0de
🔀 merge develop branch
2021-02-07 17:46:11 +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
6d4eed5aeb
🚨 fix warning
2021-01-30 12:51:54 +01:00
Niels Lohmann
ffdeb77468
🚨 fix warnings #2615
2021-01-27 12:54:46 +01:00
Niels Lohmann
524eea5887
👌 remove unused template parameter
2021-01-26 17:49:15 +01:00
Niels Lohmann
74cc0ab470
♻️ remove diagnostics_t class
2021-01-25 13:47:50 +01:00
Niels Lohmann
c190a72f3d
👌 apply suggestion
...
Co-authored-by: Alexander Karzhenkov <karzhenkov@mail.ru>
2021-01-24 17:45:08 +01:00
Niels Lohmann
380a613f2b
🐛 fix bug in diagnostics_t
2021-01-23 20:58:59 +01:00
Niels Lohmann
d6ff059a90
👌 addressed review comments
2021-01-20 15:05:07 +01:00
Niels Lohmann
33379684b4
✅ improve coverage
2021-01-17 22:52:40 +01:00
Niels Lohmann
e23af7434d
🚨 fix warnings
2021-01-17 13:32:26 +01:00
Niels Lohmann
e9d641130d
🐛 proper JSON Pointer escape in diagnostic messages
2021-01-16 15:33:05 +01:00
Niels Lohmann
7633a21e6c
💚 fix build
2021-01-15 16:58:05 +01:00
Niels Lohmann
b0d8628c49
👌 address comments
2021-01-15 16:54:00 +01:00
Niels Lohmann
f8037660d0
♻️ add iterator set_parent function
2021-01-14 22:43:52 +01:00
Niels Lohmann
0d1fb383b7
👌 address comment
2021-01-14 22:05:08 +01:00
Niels Lohmann
a77621687a
📝 fix comment
2021-01-14 21:56:19 +01:00
Niels Lohmann
b9d3aa4067
♻️ split set_parent function
2021-01-14 21:55:49 +01:00
Niels Lohmann
ff57bdcc8b
🐛 fix invariants
2021-01-10 22:40:50 +01:00
Niels Lohmann
9d0150c234
♻️ simplify code
2021-01-10 15:04:14 +01:00
Niels Lohmann
1d6ba22f15
♻️ simplify code
2021-01-10 14:10:59 +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
Niels Lohmann
43cd5c8a4d
👌 fix constructor
2021-01-08 18:00:23 +01:00
Niels Lohmann
d4a91b7445
👌 clean operator[]
2021-01-08 11:29:28 +01:00
Niels Lohmann
e4af1ddb18
👌 fix operator[]
2021-01-08 11:21:41 +01:00
Niels Lohmann
04a0a07159
👌 fix move constructor and move assignment
2021-01-08 11:21:03 +01:00
Niels Lohmann
0617bd248d
👌 fix operator[]
2021-01-08 11:10:24 +01:00
Niels Lohmann
ddc3bb1992
👌 remove unnecessary assignment from destructor
2021-01-08 11:09:58 +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
085d497bf7
📄 update copyright year
2021-01-03 20:28:06 +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
c6e7fa21ed
🚧 fix preprocessor check
2021-01-02 13:58:05 +01:00
Niels Lohmann
7b047861b0
🚧 add diagnostics to exceptions
2021-01-02 13:44:41 +01:00
Niels Lohmann
a4d491e22d
🚧 better diagnostics
2021-01-01 17:23:10 +01:00
Niels Lohmann
bdb2469c31
🚨 fix warnings
2020-12-29 21:36:30 +01:00
Niels Lohmann
433da31334
⚗️ try to use GCC 10
2020-12-29 20:16:51 +01:00
Niels Lohmann
98b2152452
Merge branch 'develop' of https://github.com/nlohmann/json into std_bytes
2020-12-29 14:37:46 +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
5dd06714b1
🐛 allow parsing from std::byte containers #2546
2020-12-28 11:31:21 +01:00
Niels Lohmann
dfedefb993
🚨 fix warnings
2020-12-26 17:56:16 +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
Niels Lohmann
af8c6e7aa9
Merge pull request #2533 from nlohmann/c++_future
...
Do not unconditionally redefine C++14 constructs
2020-12-16 20:54:09 +01:00