|
6 | 6 | [](https://github.com/nlohmann/json/actions?query=workflow%3AWindows)
|
7 | 7 | [](https://coveralls.io/github/nlohmann/json?branch=develop)
|
8 | 8 | [](https://scan.coverity.com/projects/nlohmann-json)
|
9 |
| -[](https://www.codacy.com/gh/nlohmann/json/dashboard?utm_source=github.com&utm_medium=referral&utm_content=nlohmann/json&utm_campaign=Badge_Grade) |
| 9 | +[](https://app.codacy.com/gh/nlohmann/json/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade) |
10 | 10 | [](https://cirrus-ci.com/github/nlohmann/json)
|
11 | 11 | [](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:json)
|
12 | 12 | [](https://wandbox.org/permlink/1mp10JbaANo6FUc7)
|
@@ -61,7 +61,7 @@ There are myriads of [JSON](https://json.org) libraries out there, and each may
|
61 | 61 |
|
62 | 62 | - **Trivial integration**. Our whole code consists of a single header file [`json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp). That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings. The library is also included in all popular [package managers](https://json.nlohmann.me/integration/package_managers/).
|
63 | 63 |
|
64 |
| -- **Serious testing**. Our code is heavily [unit-tested](https://github.com/nlohmann/json/tree/develop/tests/src) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](https://valgrind.org) and the [Clang Sanitizers](https://clang.llvm.org/docs/index.html) that there are no memory leaks. [Google OSS-Fuzz](https://github.com/google/oss-fuzz/tree/master/projects/json) additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289). See the [quality assurance](https://json.nlohmann.me/integration/community/quality_assurance) overview documentation. |
| 64 | +- **Serious testing**. Our code is heavily [unit-tested](https://github.com/nlohmann/json/tree/develop/tests/src) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](https://valgrind.org) and the [Clang Sanitizers](https://clang.llvm.org/docs/index.html) that there are no memory leaks. [Google OSS-Fuzz](https://github.com/google/oss-fuzz/tree/master/projects/json) additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289). See the [quality assurance](https://json.nlohmann.me/community/quality_assurance) overview documentation. |
65 | 65 |
|
66 | 66 | Other aspects were not so important to us:
|
67 | 67 |
|
@@ -101,7 +101,7 @@ Thanks everyone!
|
101 | 101 |
|
102 | 102 | :question: If you have a **question**, please check if it is already answered in the [**FAQ**](https://json.nlohmann.me/home/faq/) or the [**Q&A**](https://github.com/nlohmann/json/discussions/categories/q-a) section. If not, please [**ask a new question**](https://github.com/nlohmann/json/discussions/new) there.
|
103 | 103 |
|
104 |
| -:books: If you want to **learn more** about how to use the library, check out the rest of the [**README**](#examples), have a look at [**code examples**](https://github.com/nlohmann/json/tree/develop/docs/examples), or browse through the [**help pages**](https://json.nlohmann.me). |
| 104 | +:books: If you want to **learn more** about how to use the library, check out the rest of the [**README**](#examples), have a look at [**code examples**](https://github.com/nlohmann/json/tree/develop/docs/mkdocs/docs/examples), or browse through the [**help pages**](https://json.nlohmann.me). |
105 | 105 |
|
106 | 106 | :construction: If you want to understand the **API** better, check out the [**API Reference**](https://json.nlohmann.me/api/basic_json/) or have a look at the [quick reference](#quick-reference) below.
|
107 | 107 |
|
@@ -139,7 +139,7 @@ Here are some examples to give you an idea how to use the class.
|
139 | 139 | Beside the examples below, you may want to:
|
140 | 140 |
|
141 | 141 | → Check the [documentation](https://json.nlohmann.me/)\
|
142 |
| -→ Browse the [standalone example files](https://github.com/nlohmann/json/tree/develop/docs/examples)\ |
| 142 | +→ Browse the [standalone example files](https://github.com/nlohmann/json/tree/develop/docs/mkdocs/docs/examples)\ |
143 | 143 | → Read the full [API Documentation](https://json.nlohmann.me/api/basic_json/) with self-contained examples for every function
|
144 | 144 |
|
145 | 145 | ### Read JSON from a file
|
@@ -1289,20 +1289,20 @@ endif()
|
1289 | 1289 |
|
1290 | 1290 | Use your favorite [**package manager**](https://json.nlohmann.me/integration/package_managers/) to use the library.
|
1291 | 1291 |
|
1292 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/homebrew.svg" height="20"> [**Homebrew**](https://json.nlohmann.me/integration/package_managers/#homebrew) `nlohmann-json` |
1293 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/meson.svg" height="20"> [**Meson**](https://json.nlohmann.me/integration/package_managers/#meson) `nlohmann_json` |
1294 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/bazel.svg" height="20"> [**Bazel**](https://json.nlohmann.me/integration/package_managers/#bazel) `nlohmann_json` |
1295 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/conan.svg" height="20"> [**Conan**](https://json.nlohmann.me/integration/package_managers/#conan) `nlohmann_json` |
1296 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/spack.svg" height="20"> [**Spack**](https://json.nlohmann.me/integration/package_managers/#spack) `nlohmann-json` |
| 1292 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/homebrew.svg" height="20"> [**Homebrew**](https://json.nlohmann.me/integration/package_managers/#homebrew) `nlohmann-json` |
| 1293 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/meson.svg" height="20"> [**Meson**](https://json.nlohmann.me/integration/package_managers/#meson) `nlohmann_json` |
| 1294 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/bazel.svg" height="20"> [**Bazel**](https://json.nlohmann.me/integration/package_managers/#bazel) `nlohmann_json` |
| 1295 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/conan.svg" height="20"> [**Conan**](https://json.nlohmann.me/integration/package_managers/#conan) `nlohmann_json` |
| 1296 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/spack.svg" height="20"> [**Spack**](https://json.nlohmann.me/integration/package_managers/#spack) `nlohmann-json` |
1297 | 1297 | - [**Hunter**](https://json.nlohmann.me/integration/package_managers/#hunter) `nlohmann_json`
|
1298 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/vcpkg.png" height="20"> [**vcpkg**](https://json.nlohmann.me/integration/package_managers/#vcpkg) `nlohmann-json` |
| 1298 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/vcpkg.png" height="20"> [**vcpkg**](https://json.nlohmann.me/integration/package_managers/#vcpkg) `nlohmann-json` |
1299 | 1299 | - [**cget**](https://json.nlohmann.me/integration/package_managers/#cget) `nlohmann/json`
|
1300 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/swift.svg" height="20"> [**Swift Package Manager**](https://json.nlohmann.me/integration/package_managers/#swift-package-manager) `nlohmann/json` |
1301 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/nuget.svg" height="20"> [**Nuget**](https://json.nlohmann.me/integration/package_managers/#nuget) `nlohmann.json` |
1302 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/conda.svg" height="20"> [**Conda**](https://json.nlohmann.me/integration/package_managers/#conda) `nlohmann_json` |
1303 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/macports.svg" height="20"> [**MacPorts**](https://json.nlohmann.me/integration/package_managers/#macports) `nlohmann-json` |
1304 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/CPM.png" height="20"> [**cpm.cmake**](https://json.nlohmann.me/integration/package_managers/#cpmcmake) `gh:nlohmann/json` |
1305 |
| -- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/cleanup/docs/mkdocs/docs/images/package_managers/xmake.svg" height="20"> [**xmake**](https://json.nlohmann.me/integration/package_managers/#xmake) `nlohmann_json` |
| 1300 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/swift.svg" height="20"> [**Swift Package Manager**](https://json.nlohmann.me/integration/package_managers/#swift-package-manager) `nlohmann/json` |
| 1301 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/nuget.svg" height="20"> [**Nuget**](https://json.nlohmann.me/integration/package_managers/#nuget) `nlohmann.json` |
| 1302 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/conda.svg" height="20"> [**Conda**](https://json.nlohmann.me/integration/package_managers/#conda) `nlohmann_json` |
| 1303 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/macports.svg" height="20"> [**MacPorts**](https://json.nlohmann.me/integration/package_managers/#macports) `nlohmann-json` |
| 1304 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/CPM.png" height="20"> [**cpm.cmake**](https://json.nlohmann.me/integration/package_managers/#cpmcmake) `gh:nlohmann/json` |
| 1305 | +- <img src="https://raw.githubusercontent.com/nlohmann/json/refs/heads/develop/docs/mkdocs/docs/images/package_managers/xmake.svg" height="20"> [**xmake**](https://json.nlohmann.me/integration/package_managers/#xmake) `nlohmann_json` |
1306 | 1306 |
|
1307 | 1307 | The library is part of many package managers. See the [**documentation**](https://json.nlohmann.me/integration/package_managers/) for detailed descriptions and examples.
|
1308 | 1308 |
|
@@ -1477,7 +1477,7 @@ I deeply appreciate the help of the following people.
|
1477 | 1477 | 115. [Matthias Möller](https://github.com/TinyTinni) removed the dependency from `std::stringstream`.
|
1478 | 1478 | 116. [agrianius](https://github.com/agrianius) added code to use alternative string implementations.
|
1479 | 1479 | 117. [Daniel599](https://github.com/Daniel599) allowed to use more algorithms with the `items()` function.
|
1480 |
| -118. [Julius Rakow](https://github.com/jrakow) fixed the Meson include directory and fixed the links to [cppreference.com](cppreference.com). |
| 1480 | +118. [Julius Rakow](https://github.com/jrakow) fixed the Meson include directory and fixed the links to [cppreference.com](https://cppreference.com). |
1481 | 1481 | 119. [Sonu Lohani](https://github.com/sonulohani) fixed the compilation with MSVC 2015 in debug mode.
|
1482 | 1482 | 120. [grembo](https://github.com/grembo) fixed the test suite and re-enabled several test cases.
|
1483 | 1483 | 121. [Hyeon Kim](https://github.com/simnalamburt) introduced the macro `JSON_INTERNAL_CATCH` to control the exception handling inside the library.
|
@@ -1719,15 +1719,15 @@ The library itself consists of a single header file licensed under the MIT licen
|
1719 | 1719 | - [**Artistic Style**](http://astyle.sourceforge.net) for automatic source code indentation
|
1720 | 1720 | - [**Clang**](https://clang.llvm.org) for compilation with code sanitizers
|
1721 | 1721 | - [**CMake**](https://cmake.org) for build automation
|
1722 |
| -- [**Codacy**](https://www.codacy.com) for further [code analysis](https://www.codacy.com/app/nlohmann/json) |
| 1722 | +- [**Codacy**](https://www.codacy.com) for further [code analysis](https://app.codacy.com/gh/nlohmann/json/dashboard) |
1723 | 1723 | - [**Coveralls**](https://coveralls.io) to measure [code coverage](https://coveralls.io/github/nlohmann/json)
|
1724 | 1724 | - [**Coverity Scan**](https://scan.coverity.com) for [static analysis](https://scan.coverity.com/projects/nlohmann-json)
|
1725 | 1725 | - [**cppcheck**](http://cppcheck.sourceforge.net) for static analysis
|
1726 | 1726 | - [**doctest**](https://github.com/onqtam/doctest) for the unit tests
|
1727 | 1727 | - [**GitHub Changelog Generator**](https://github.com/skywinder/github-changelog-generator) to generate the [ChangeLog](https://github.com/nlohmann/json/blob/develop/ChangeLog.md)
|
1728 | 1728 | - [**Google Benchmark**](https://github.com/google/benchmark) to implement the benchmarks
|
1729 | 1729 | - [**Hedley**](https://nemequ.github.io/hedley/) to avoid re-inventing several compiler-agnostic feature macros
|
1730 |
| -- [**lcov**](http://ltp.sourceforge.net/coverage/lcov.php) to process coverage information and create an HTML view |
| 1730 | +- [**lcov**](https://github.com/linux-test-project/lcov) to process coverage information and create an HTML view |
1731 | 1731 | - [**libFuzzer**](https://llvm.org/docs/LibFuzzer.html) to implement fuzz testing for OSS-Fuzz
|
1732 | 1732 | - [**Material for MkDocs**](https://squidfunk.github.io/mkdocs-material/) for the style of the documentation site
|
1733 | 1733 | - [**MkDocs**](https://www.mkdocs.org) for the documentation site
|
@@ -1825,4 +1825,4 @@ Some tests change the installed files and hence make the whole process not repro
|
1825 | 1825 |
|
1826 | 1826 | Note you need to call `cmake -LE "not_reproducible|git_required"` to exclude both labels. See [issue #2596](https://github.com/nlohmann/json/issues/2596) for more information.
|
1827 | 1827 |
|
1828 |
| -As Intel compilers use unsafe floating point optimization by default, the unit tests may fail. Use flag [`/fp:precise`](https://software.intel.com/content/www/us/en/develop/documentation/cpp-compiler-developer-guide-and-reference/top/compiler-reference/compiler-options/compiler-option-details/floating-point-options/fp-model-fp.html) then. |
| 1828 | +As Intel compilers use unsafe floating point optimization by default, the unit tests may fail. Use flag [`/fp:precise`](https://www.intel.com/content/www/us/en/docs/cpp-compiler/developer-guide-reference/2021-8/fp-model-fp.html) then. |
0 commit comments