1. 09 6月, 2022 1 次提交
  2. 06 6月, 2022 2 次提交
  3. 04 6月, 2022 2 次提交
  4. 03 6月, 2022 2 次提交
  5. 29 5月, 2022 1 次提交
    • F
      Fix C++20/gcc-12 issues (Part 2) (#3446) · 6b97599a
      Florian Albrechtskirchinger 提交于
      * Add C++20 3-way comparison operator and fix broken comparisons
      
      Fixes #3207.
      Fixes #3409.
      
      * Fix iterators to meet (more) std::ranges requirements
      
      Fixes #3130.
      Related discussion: #3408
      
      * Add note about CMake standard version selection to unit tests
      
      Document how CMake chooses which C++ standard version to use when
      building tests.
      
      * Update documentation
      
      * CI: add legacy discarded value comparison
      
      * Fix internal linkage errors when building a module
      6b97599a
  6. 23 5月, 2022 1 次提交
  7. 20 5月, 2022 2 次提交
  8. 19 5月, 2022 1 次提交
  9. 17 5月, 2022 1 次提交
    • N
      Complete documentation for 3.11.0 (#3464) · 6a739205
      Niels Lohmann 提交于
      * 👥 update contributor and sponsor list
      
      * 🚧 document BJData format
      
      * 🚧 document BJData format
      
      * 📝 clarified documentation of [json.exception.parse_error.112]
      
      *  adjust titles
      
      * 📝 add more examples
      
      * 🚨 adjust warnings for index.md files
      
      * 📝 add more examples
      
      * 🔥 remove example for deprecated code
      
      * 📝 add missing enum entry
      
      * 📝 overwork table for binary formats
      
      *  add test to create table for binary formats
      
      * 📝 fix wording in example
      
      * 📝 add more examples
      
      * Update iterators.md (#3481)
      
      *  add check for overloads to linter #3455
      
      * 👥 update contributor list
      
      * 📝 add more examples
      
      * 📝 fix documentation
      
      * 📝 add more examples
      
      * 🎨 fix indentation
      
      * 🔥 remove example for destructor
      
      * 📝 overwork documentation
      
      * Updated BJData documentation, #3464 (#3493)
      
      * update bjdata.md for #3464
      
      * Minor edit
      
      * Fix URL typo
      
      * Add info on demoting ND array to a 1-D optimized array when singleton dimension
      Co-authored-by: NChaoqi Zhang <prncoprs@163.com>
      Co-authored-by: NQianqian Fang <fangqq@gmail.com>
      6a739205
  10. 11 5月, 2022 1 次提交
  11. 09 5月, 2022 1 次提交
  12. 02 5月, 2022 2 次提交
    • Q
      Handle invalid BJData optimized type, fix #3461 (#3463) · b205361d
      Qianqian Fang 提交于
      * Handle invalid BJData optimized type, fix #3461
      
      * Update unit test to handle bjdata optimized array type error
      b205361d
    • F
      Add build step for ICPC (with fixes) (#3465) · bdc21ad1
      Florian Albrechtskirchinger 提交于
      *  Doctest 2.4.7
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      *  downgrade to Doctest 2.4.6
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      * 👷 add CI step for ICPC
      
      * 🔇 suppress warning #2196: routine is both "inline" and "noinline"
      
      * Re-enable <filesystem> detection on ICPC
      
      * Limit regression test for #3070 to Clang and GCC >=8.4
      
      * Disable deprecation warnings on ICPC
      
      * Disable regression test for #1647 on ICPC (C++20)
      
      * Fix compilation failure of regression test for #3077 on ICPC
      
      * Disable wstring unit test on ICPC
      
      Fixes:
        error 913: invalid multibyte character sequence
      
      * Add ICPC to README
      Co-authored-by: NNiels Lohmann <mail@nlohmann.me>
      bdc21ad1
  13. 01 5月, 2022 2 次提交
  14. 30 4月, 2022 2 次提交
    • F
      Implement support for string_view (attempt no. 3) (#3423) · 5352856f
      Florian Albrechtskirchinger 提交于
      * Add key_compare member to ordered_map
      
      * Replace == with key_compare in ordered_map
      
      * Expose the actual comparison function used by object_t
      
      nlohmann::ordered_map uses a different comparison function than the one
      provided via template parameter.
      * Introduce a type trait to detect if object_t has a key_compare member.
      * Rename object_comparator_t to default_object_comparator_t.
      * Add object_comparator_t to be conditionally defined as
        object_t::key_compare, if available, or default_object_comparator_t
        otherwise.
      * Update the documentation accordingly.
      Co-authored-by: NNiels Lohmann <niels.lohmann@gmail.com>
      
      * Add type traits to check if a type is usable as object key
      
      Add type trait to check:
      * if a type is a specialization of a template.
      * if a type is a json_pointer.
      * if a type is a basic_json::{const_,}iterator.
      * if two types are comparable using a given comparison functor.
      * if a type is comparable to basic_json::object_t::key_type.
      * if a type has a member type is_transparent.
      * if a type is usable as object key.
      * if a type has an erase() function accepting a given KeyType.
      Co-authored-by: NNiels Lohmann <niels.lohmann@gmail.com>
      
      * Rework basic_json element access to accept more key types
      
      Rework basic_json element access member functions and operators to
      accept any type that meets the requirements defined by type trait
      detail::is_usable_as_key_type.
      
      Member functions and operators:
      * at()
      * operator[]
      * value()
      * erase()
      * find()
      * count()
      * contains()
      
      Update documentation to reflect these changes.
      
      Add unit tests to excercise the new functions using std::string_view.
      Co-authored-by: NNiels Lohmann <niels.lohmann@gmail.com>
      Co-authored-by: NNiels Lohmann <niels.lohmann@gmail.com>
      5352856f
    • Q
      Support UBJSON-derived Binary JData (BJData) format (#3336) · ee516614
      Qianqian Fang 提交于
      * support UBJSON-derived Binary JData (BJData) format
      
      * fix Codacy warning
      
      * partially fix VS compilation errors
      
      * fix additional VS errors
      
      * fix more VS compilation errors
      
      * fix additional warnings and errors for clang and msvc
      
      * add more tests to cover the new bjdata types
      
      * add tests for optimized ndarray, improve coverage, fix clang/gcc warnings
      
      * gcc warn useless conversion but msvc gives an error
      
      * fix ci_test errors
      
      * complete test coverage, fix ci_test errors
      
      * add half precision error test
      
      * fix No newline at end of file error by clang
      
      * simplify endian condition, format unit-bjdata
      
      * remove broken test due to alloc limit
      
      * full coverage, I hope
      
      * move bjdata new markers from default to the same level as ubjson markers
      
      * fix ci errors, add tests for new bjdata switch structure
      
      * make is_bjdata const after using initializer list
      
      * remove the unwanted assert
      
      * move is_bjdata to an optional param to write_ubjson
      
      * pass use_bjdata via output adapter
      
      * revert order to avoid msvc 2015 unreferenced formal param error
      
      * update BJData Spect V1 Draft-2 URL after spec release
      
      * amalgamate code
      
      * code polishing following @gregmarr's feedback
      
      * make use_bjdata a non-default parameter
      
      * fix ci error, remove unwanted param comment
      
      * encode and decode bjdata ndarray in jdata annotations, enable roundtrip tests
      
      * partially fix ci errors, add tests to improve coverage
      
      * polish patch to remove ci errors
      
      * fix a ndarray dim vector condition
      
      * fix clang tidy error
      
      * add sax test cases for ndarray
      
      * add additional sax event tests
      
      * adjust sax event numbering
      
      * fix sax tests
      
      * ndarray can only be used with array containers, discard if used in object
      
      * complete test coverage
      
      * disable [{SHTFNZ in optimized type due to security risks in #2793 and hampered readability
      
      * fix ci error
      
      * move OutputIsLittleEndian from tparam to param to replace use_bjdata
      
      * fix ci clang gcc error
      
      * fix ci static analysis error
      
      * update json_test_data to 3.1.0, enable file-based bjdata unit tests
      
      * fix stack overflow error on msvc 2019 and 2022
      
      * use https link, update sax_parse_error after rebase
      
      * make input_format const and use initializer
      
      * return bool for write_bjdata_ndarray
      
      * test write_bjdata_ndarray return value as boolean
      
      * fix ci error
      ee516614
  15. 26 4月, 2022 1 次提交
    • N
      Overwork documentation (#3444) · a6ee8bf9
      Niels Lohmann 提交于
      * 📝 overwork macro documentation
      
      * 📝 address review comments
      
      * 🔧 add style check to Makefile
      
      * 🙈 overwork .gitignore
      
      * 📌 Pygments 2.12.0 is broken
      
      *  fix links
      
      * 🚸 adjust output to cppcheck
      
      * 📝 add titles to more admonitions
      
      *  fix typos
      
      * 📝 document future behavior change
      a6ee8bf9
  16. 24 4月, 2022 1 次提交
  17. 22 4月, 2022 1 次提交
  18. 12 4月, 2022 3 次提交
    • J
      Fix typo in basic_json documentation (#3439) · a9443061
      JungHoon Lee 提交于
      a9443061
    • F
      Re-template json_pointer on string type (#3415) · 616caea2
      Florian Albrechtskirchinger 提交于
      * Make exception context optional
      
      Change exception context parameter to pointer and replace context with
      nullptr where appropriate.
      
      * Support escaping other string types
      
      * Add string concatenation function
      
      Add variadic concat() function for concatenating char *, char, and
      string types.
      
      * Replace string concatenations using + with concat()
      
      * Template json_pointer on string type
      
      Change json_pointer from being templated on basic_json to being
      templated on string type.
      
      * Add unit test for #3388
      
      Closes #3388.
      
      * Fix regression test for #2958
      
      * Add backwards compatibility with json_pointer<basic_json>
      
      * Update json_pointer docs
      
      * Allow comparing different json_pointers
      
      * Update version numbers
      616caea2
    • F
      Exclude std::any from implicit conversion (fixes #3428) (#3437) · 1deeb434
      Florian Albrechtskirchinger 提交于
      * Exclude std::any from implicit conversion
      
      Fixes #3428 (MSVC) and silences compiler warning on GCC (-Wconversion).
      
      * Exclude std::any from implicit conversion
      1deeb434
  19. 10 4月, 2022 1 次提交
  20. 08 4月, 2022 1 次提交
  21. 06 4月, 2022 5 次提交
    • M
      at.md: fix typo (#3426) · 15fa6a34
      Michael Nosthoff 提交于
      15fa6a34
    • N
      Update CI image (#3420) · 448b173c
      Niels Lohmann 提交于
      *  use new CI image
      
      *  use new CI image
      
      * 🚨 suppress Clang-Tidy warnings
      
      * 💚 use proper scan-build version
      
      * 🚨 suppress Clang-Tidy warnings
      
      *  use more recent GitHub actions
      
      * 💚 add missing compiler
      
      * 📝 update used compilers
      
      * 🚨 fix duplicate inclusion
      448b173c
    • N
    • F
      CI: speedup AppVeyor builds by ~30% (#3422) · fa91409a
      Florian Albrechtskirchinger 提交于
      AppVeyor build VMs should provide at least two cores. Parallelize builds
      and tests.
      In addition, enable output on failure and disable verbose test output.
      fa91409a
    • F
      Restore disabled check for #3070 (except on MSVC) (#3421) · c2054b96
      Florian Albrechtskirchinger 提交于
      Restore the previously disabled check for regression #3070 on all
      compilers but MSVC.
      
      To summarize the issue:
      Given namespace fs = std::filesystem.
      On MSVC attempting to construct an fs::path from json results in an
      ambiguous overload resolution because fs::path can be constructed from
      both a std::string as well as another fs::path.
      To the best of my knowledge there is no way to fix an ambiguous overload
      situation involving a type we do not control and with json implicitly
      converting to both std::string and fs::path.
      
      Re-enabling the check where it compiles and keeping it disabled for MSVC
      is the best we can do.
      
      Closes #3377 and #3382.
      c2054b96
  22. 05 4月, 2022 1 次提交
  23. 04 4月, 2022 2 次提交
  24. 01 4月, 2022 1 次提交
  25. 25 3月, 2022 2 次提交