1
0
mirror of https://github.com/nlohmann/json synced 2024-11-23 12:30:06 +00:00
nlohmannjson/ChangeLog.md
2018-02-12 22:59:36 +01:00

95 KiB
Raw Blame History

Change Log

All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.

v3.1.1 (2018-02-12)

Full Changelog

  • Updation of child object isn't reflected in parent Object #968

  • How to add user defined C++ path to sublime text #966

  • fast number parsing #965

  • With non-unique keys, later stored entries are not taken into account anymore #963

  • Timeout OSS-Fuzz 6034 #962

  • Incorrect parsing of indefinite length CBOR strings. #961

  • Reload a json file at runtime without emptying my std::ifstream #959

  • Split headers should be part of the release #956

  • Coveralls shows no coverage data #953

  • Feature request: Implicit conversion to bool #951

  • converting json to vector of type with templated constructor #924

  • No structured bindings support? #901

  • Request
  • basic_json::value throws exception instead of returning default value #871

  • Fix constraints on from_json(CompatibleArrayType) #969 (theodelrieu)

  • Make coveralls watch the include folder #957 (theodelrieu)

  • Fix links in README.md #955 (patrikhuber)

  • Add a note about installing the library with cget #954 (pfultz2)

v3.1.0 (2018-02-01)

Full Changelog

  • Order of the elements in JSON object #952

  • I have a proposal #949

  • VERSION define(s) #948

  • v3.0.1 compile error in icc 16.0.4 #947

  • Use in VS2017 15.5.5 #946

  • Process for reporting Security Bugs? #945

  • Please expose a NLOHMANN_JSON_VERSION macro #943

  • Change header include directory to nlohmann/json #942

  • string_type in binary_reader #941

  • compile error with clang 5.0 -std=c++1z and no string_view #939

  • Allow overriding JSON_THROW to something else than abort() #938

  • Handle invalid string in Json file #937

  • Unused variable 'kMinExp' #935

  • yytext is already defined #933

  • Equality operator fails #931

  • use in visual studio 2015 #929

  • Relative includes of json_fwd.hpp in detail/meta.hpp. [Develop branch] #928

  • GCC 7.x issue #926

  • json_fwd.hpp not installed #923

  • Use Google Benchmarks #921

  • Move class json_pointer to separate file #920

  • Unable to locate 'to_json()' and 'from_json()' methods in the same namespace #917

  • answered
  • Don't use define private public in test files #913

  • value() template argument type deduction #912

  • Installation path is incorrect #910

  • H #909

  • Build failure using clang 5 #908

  • Amalgate #907

  • Update documentation and tests wrt. split headers #906

  • Lib not working on ubuntu 16.04 #905

  • Problem when writing to file. #904

  • C2864 error when compiling with VS2015 and VS 2017 #903

  • json.exception.type\_error.304
  • How do I forward nlohmann::json declaration? #899

  • How to effectively store binary data? #898

  • How to get the length of a JSON string without retrieving its std::string? #897

  • Regression Tests Failure using "ctest" #887

  • Discuss: add JSON Merge Patch RFC 7396? #877

  • Discuss: replace static "iterator_wrapper" function with "items" member function #874

  • Make optional user-data available in from_json #864

  • Casting to std::string not working in VS2015 #861

  • Sequential reading of JSON arrays #851

  • Idea: Handle Multimaps Better #816

  • Floating point rounding #777

  • Loss of precision when serializing <double> #360

  • Templatize std::string in binary_reader #941 #950 (kaidokert)

  • fix cmake install directory for real this time #944 (theodelrieu)

  • Allow overriding THROW/CATCH/TRY macros with no-exceptions #938 #940 (kaidokert)

  • Removed compiler warning about unused variable 'kMinExp' #936 (zerodefect)

  • Fix a typo in README.md #930 (Pipeliner)

  • Howto installation of json_fwd.hpp fixes \#923 #925 (zerodefect)

  • fix sfinae on basic_json UDT constructor #919 (theodelrieu)

  • Floating-point formatting #915 (abolz)

  • Fix/cmake install #911 (theodelrieu)

  • fix link to the documentation of the emplace function #900 (Dobiasd)

  • JSON Merge Patch RFC 7396 #876 (nlohmann)

  • Refactor/split it #700 (theodelrieu)

v3.0.1 (2017-12-29)

Full Changelog

  • Problem parsing array to global vector #896

  • Invalid RFC6902 copy operation succeeds #894

  • How to rename a key during looping? #893

  • clang++-6.0 6.0.0-svn321357-1 warning #892

  • Make json.hpp aware of the modules TS? #891

  • All enum values not handled in switch cases. -Wswitch-enum #889

  • JSON Pointer resolve failure resulting in incorrect exception code #888

  • Unexpected nested arrays from std::vector #886

  • erase multiple elements from a json object #884

  • Container function overview in Doxygen is not updated #883

  • How to use this for binary file uploads #881

  • Allow setting JSON_BuildTests=OFF from parent CMakeLists.txt #846

  • Unit test fails for local-independent str-to-num #845

  • Another idea about type support #774

  • Includes CTest module/adds BUILD_TESTING option #885 (TinyTinni)

  • Fix MSVC warning C4819 #882 (erengy)

  • Merge branch 'develop' into coverity_scan #880 (nlohmann)

  • 🔧 Fix up a few more effc++ items #858 (mattismyname)

v3.0.0 (2017-12-17)

Full Changelog

  • unicode strings #878

  • Visual Studio 2017 15.5 C++17 std::allocator deprecations #872

  • Typo "excpetion" #869

  • Explicit array example in README.md incorrect #867

  • why don't you release this from Feb. ? #865

  • json::parse throws std::invalid_argument when processing string generated by json::dump() #863

  • code analysis: potential bug? #859

  • MSVC2017, 15.5 new issues. #857

  • very basic: fetching string value/content without quotes #853

  • Ambiguous function call to get with pointer type and constant json object in VS2015 15.4.4 #852

  • How to put object in the array as a member? #850

  • misclick, please ignore #849

  • Make XML great again. #847

  • Converting to array not working #843

  • Iteration weirdness #842

  • Use reference or pointer as Object value #841

  • Ambiguity in parsing nested maps #840

  • could not find from_json() method in T's namespace #839

  • Incorrect parse error with binary data in keys? #838

  • using dump() when std::wstring is StringType with VS2017 #836

  • Show the path of the currently parsed value when an error occurs #835

  • Repetitive data type while reading #833

  • Storing multiple types inside map #831

  • Application terminating #830

  • Missing CMake hunter package? #828

  • std::map<std::string, std::string> from json object yields C2665: 'std::pair<const _Kty,_Ty>::pair': none of the 2 overloads could convert all the argument types #827

  • object.dump gives quoted string, want to use .dump() to generate javascripts. #826

  • Assertion failed on ["NoExistKey"] of an not existing key of const json& #825

  • vs2015 error : static member will remain uninitialized at runtime but use in constant-expressions is supported #824

  • Code Checking Warnings from json.hpp on VS2017 Community #821

  • Missing iostream in try online #820

  • Floating point value loses decimal point during dump #818

  • Conan package for the library #817

  • stream error #815

  • Link error when using find() on the latest commit #814

  • ABI issue with json object between 2 shared libraries #813

  • scan_string() return token_type::parse_error; when parse ansi file #812

  • segfault when using fifo_map with json #810

  • This shit is shit #809

  • _finite and _isnan are no members of "std" #808

  • how to print out the line which causing exception? #806

  • {} uses copy constructor, while = does not #805

  • json.hpp:8955: multiple definition of function that is not defined twice or more. #804

  • question
  • Misleading error message - unexpected '"' - on incorrect utf-8 symbol #802

  • json data = std::string_view("hi"); doesn't work? #801

  • Thread safety of parse() #800

  • Numbers as strings #799

  • Tests failing on arm #797

  • Using your library without modification in another library #796

  • Iterating over sub-object #794

  • how to get the json object again from which printed by the method of dump() #792

  • ppa to include source #791

  • Different include paths in macOS and Ubuntu #790

  • Missing break after line 12886 in switch/case #789

  • All unit tests fail? #787

  • More use of move semantics in deserialization #786

  • warning C4706 - Visual Studio 2017 /W4 #784

  • Compile error in clang 5.0 #782

  • Error Installing appium_lib with Ruby v2.4.2 Due to JSON #781

  • ::get<int> fails in new(er) release [MSVC] #780

  • Type Conversion #779

  • Segfault on nested parsing #778

  • Build warnings: shadowing exception id #776

  • multi-level JSON support. #775

  • SIGABRT on dump() #773

  • Question
  • constexpr ALL the Things! #771

  • error: BasicJsonType in namespace :: does not name a type #770

  • Program calls abort function #769

  • Question
  • make check - no test ran #767

  • The library cannot work properly with custom allocator based containers #766

  • Documentation or feature request. #763

  • warnings in msvc about mix/max macro while windows.h is used in the project #762

  • std::signbit ambiguous #761

  • How to use value for std::experimental::optional type? #760

  • Cannot load json file properly #759

  • Compilation error with unordered_map< int, int > #758

  • CBOR string #757

  • Proposal: out_of_range should be a subclass of std::out_of_range #756

  • Compiling with icpc #755

  • Getter is setting the value to null if the key does not exist #754

  • parsing works sometimes and crashes others #752

  • Static_assert failed "incompatible pointer type" with Xcode #751

  • user-defined literal operator not found #750

  • getting clean string from it.key() #748

  • Best method for exploring and obtaining values of nested json objects when the names are not known beforehand? #747

  • null char at the end of string #746

  • Incorrect sample for operator >> in docs #745

  • User-friendly documentation #744

  • Retrieve all values that match a json path #743

  • Compilation issue with gcc 7.2 #742

  • CMake target nlohmann_json does not have src into its interface includes #741

  • Error when serializing empty json: type must be string, but is object #740

  • Conversion error for std::map<int, std::string> #739

  • Dumping Json to file as array #738

  • nesting json objects #737

  • where to find general help? #736

  • Compilation Error on Clang 5.0 Upgrade #735

  • Compilation error with std::map<std::string, std::string> on vs 2015 #734

  • Benchmarks for Binary formats #733

  • Move test blobs to a submodule? #732

  • Support \n symbols in json string. #731

  • Project's name is too generic and hard to search for #730

  • Visual Studio 2015 IntelliTrace problems #729

  • How to erase nested objects inside other objects? #728

  • How to prevent alphabetical sorting of data? #727

  • Serialization for CBOR #726

  • Using json Object as value in a map #725

  • std::regex and nlohmann::json value #724

  • Warnings when compiling with VisualStudio 2015 #723

  • Has this lib the unicode wstring support? #722

  • When will be 3.0 in master? #721

  • Determine the type from error message. #720

  • Compile-Error C2100 MS VS2015 in line 887 json.hpp #719

  • from_json not working for boost::optional example #718

  • about from_json and to_json function #717

  • How to deserialize array with derived objects #716

  • How to detect parse failure? #715

  • Parse throw std::ios_base::failure exception when failbit set to true #714

  • Is there a way of format just making a pretty print without changing the key's orders ? #713

  • Serialization of array of not same model items #712

  • pointer to json parse vector #711

  • Gtest SEH Exception #709

  • broken from_json implementation for pair and tuple #707

  • Unevaluated lambda in assert breaks gcc 7 build #705

  • Issues when adding values to firebase database #704

  • Floating point equality - revisited #703

  • Conversion from valarray<double> to json fails to build #702

  • internal compiler error gcc7 #701

  • One build system to rule them all #698

  • Generated nlohmann_jsonConfig.cmake does not set JSON_INCLUDE_DIR #695

  • support the Chinese language in json string #694

  • NaN problem within develop branch #693

  • Please post example of specialization for boost::filesystem #692

  • Impossible to do an array of composite objects #691

  • How to save json to file? #690

  • my simple json parser #689

  • problem with new struct parsing syntax #688

  • Parse error while parse the json string contains UTF 8 encoded document bytes string #684

  • question
  • create json object from string variable #681

  • adl_serializer and CRTP #680

  • Is there a way to control the precision of serialized floating point numbers? #677

  • Is there a way to get the path of a value? #676

  • Could the parser locate errors to line? #675

  • There is performance inefficiency found by coverity tool json2.1.1/include/nlohmann/json.hpp #673

  • include problem, when cmake on osx #672

  • Operator= ambiguous in C++1z and GCC 7.1.1 #670

  • should't the cmake install target be to nlohman/json.hpp #668

  • deserialise from std::vector #667

  • How to iterate? #665

  • could this json lib work on windows? #664

  • How does from_json work? #662

  • insert(or merge) object should replace same key , not ignore #661

  • Why is an object ordering values by Alphabetical Order? #660

  • Parse method doesn't handle newlines. #659

  • Compilation "note" on GCC 6 ARM #658

  • Adding additional push_back/operator+= rvalue overloads for JSON object #657

  • dump's parameter "ensure_ascii" creates too long sequences #656

  • Question: parsing void \* #655

  • how should I check a string is valid JSON string ? #653

  • Question: thread safety of read only accesses #651

  • Eclipse: Method 'size' could not be resolved #649

  • Update/Add object fields #648

  • No exception raised for Out Of Range input of numbers #647

  • Package Name #646

  • What is the meaning of operator[]T\* key #645

  • Which is the correct way to json objects as parameters to functions? #644

  • Method to get string representations of values #642

  • CBOR serialization of a given JSON value does not serialize #641

  • Are we forced to use "-fexceptions" flag in android ndk project #640

  • Comparison of objects containing floats #639

  • 'localeconv' is not supported by NDK for SDK <=20 #638

  • Question
  • How to construct an iteratable usage in nlohmann json? #636

  • Question
  • Get size without .dump() #634

  • Segmentation fault when parsing invalid json file #633

  • How to serialize from json to vector<customType>? #632

  • no member named 'thousands_sep' in 'lconv' #631

  • Question
  • Dependency injection in serializer #627

  • from_json for std::array #625

  • Discussion: How to structure the parsing function families #623

  • Question: How to erase subtree #622

  • Insertion into nested json field #621

  • Question
  • Question: return static json object from function #618

  • icc16 error #617

  • -Wdeprecated-declarations
  • to_json for pairs, tuples #614

  • Using uninitialized memory 'buf' in line 11173 v2.1.1? #613

  • How to parse multiple same Keys of JSON and save them? #612

  • "Multiple declarations" error when using types defined with typedef #611

  • 2.1.1+ breaks compilation of shared_ptr<json> == 0 #610

  • a bug of inheritance ? #608

  • std::map key conversion with to_json #607

  • json.hpp:6384:62: error: wrong number of template arguments 1, should be 2 #606

  • Incremental parsing: Where's the push version? #605

  • Is there a way to validate the structure of a json object ? #604

  • Question
  • BOM not skipped when using json:parse(iterator) #602

  • Use of the binary type in CBOR and Message Pack #601

  • Newbie issue: how does one convert a map in Json back to std::map? #600

  • Plugin system #599

  • Feature request: Comments #597

  • Using custom types for scalars? #596

  • Issues with the arithmetic in iterator and reverse iterator #593

  • not enough examples #592

  • in-class initialization for type 'const T' is not yet implemented #591

  • compiling with gcc 7 -> error on bool operator < #590

  • Parsing from stream leads to an array #589

  • Buggy support for binary string data #587

  • C++17's ambiguous conversion #586

  • How does the messagepack encoding/decoding compare to msgpack-cpp in terms of performance? #585

  • is it possible to check existence of a value deep in hierarchy? #584

  • loading from a stream and exceptions #582

  • Visual Studio seems not to have all min() function versions #581

  • Supporting of the json schema #580

  • Stack-overflow OSS-Fuzz 1444 #577

  • Heap-buffer-overflow OSS-Fuzz 1400 #575

  • JSON escape quotes #574

  • error: static_assert failed #573

  • Storing floats, and round trip serialisation/deserialisation diffs #572

  • JSON.getLong produces inconsistent results #571

  • Request: Object.at() with default return value #570

  • Internal structure gets corrupted while parsing #569

  • create template <typename Iter> basic_json from_cbor(Iter begin, Iter end) #568

  • Need to improve ignores.. #567

  • Conan.io #566

  • contradictory documentation regarding json::find #565

  • Unexpected '"' in middle of array #564

  • Support parse std::pair to Json object #563

  • json and Microsoft Visual c++ Compiler Nov 2012 CTP #562

  • from_json declaration order and exceptions #561

  • Tip: Don't upgrade to VS2017 if using json initializer list constructs #559

  • parse error - unexpected end of input #558

  • Cant modify existing numbers inside a json object #557

  • Minimal repository current size very large #556

  • Better support for SAX style serialize and deserialize in new version? #554

  • Cannot convert from json array to std::array #553

  • Do not define an unnamed namespace in a header file DCL59-CPP #552

  • Parse error on known good json file #551

  • Warning on Intel compiler icc 17 #550

  • multiple versions of 'vsnprintf' #549

  • illegal indirection #548

  • Ambiguous compare operators with clang-5.0 #547

  • Using tsl::ordered_map #546

  • Compiler support errors are inconvenient #544

  • Head Elements Sorting #543

  • Duplicate symbols error happens while to_json/from_json method implemented inside entity definition header file #542

  • consider adding a bool json::is_valid(std::string const&) non-member function #541

  • Help request #539

  • How to deal with missing keys in from\_json? #538

  • recursive from_msgpack implementation will stack overflow #537

  • Exception objects must be nothrow copy constructible ERR60-CPP #531

  • Support for multiple root elements #529

  • Port has_shape from dropbox/json11 #528

  • dump_float: truncation from ptrdiff_t to long #527

  • Make exception base class visible in basic_json #525

  • msgpack unit test failures on ppc64 arch #524

  • How about split the implementation out, and only leave the interface? #523

  • VC++2017 not enough actual parameters for macro 'max' #522

  • crash on empty ifstream #521

  • Suggestion: Support tabs for indentation when serializing to stream. #520

  • Abrt in get_number OSS-Fuzz 885 #519

  • Abrt on unknown address OSS-Fuzz 884 #518

  • Stack-overflow OSS-Fuzz 869 #517

  • Assertion error OSS-Fuzz 868 #516

  • NaN to json and back #515

  • Comparison of NaN #514

  • why it's not possible to serialize c++11 enums directly #513

  • clang compile error: use of overloaded operator '<=' is ambiguous with (nlohmann::json{{"a", 5}})["a"] <= 10 #512

  • Why not also look inside the type for static to_json and from_json funtions? #511

  • Parser issues #509

  • I may not understand #507

  • VS2017 min / max problem for 2.1.1 #506

  • CBOR/MessagePack is not read until the end #505

  • Assertion error OSS-Fuzz 856 #504

  • Return position in parse error exceptions #503

  • conversion from/to C array is not supported #502

  • error C2338: could not find to_json() method in T's namespace #501

  • Test suite fails in en_GB.UTF-8 #500

  • cannot use operator[] with number #499

  • consider using __cpp_exceptions and/or __EXCEPTIONS to disable/enable exception support #498

  • Stack-overflow OSS-Fuzz issue 814 #497

  • Using in Unreal Engine - handling custom types conversion #495

  • Conversion from vector<bool> to json fails to build #494

  • fill_line_buffer incorrectly tests m_stream for eof but not fail or bad bits #493

  • Compiling with _GLIBCXX_DEBUG yields iterator-comparison warnings during tests #492

  • crapy interface #491

  • Fix Visual Studo 2013 builds. #490

  • Failed to compile with -D_GLIBCXX_PARALLEL #489

  • Input several field with the same name #488

  • read in .json file yields strange sizes #487

  • json::value_t can't be a map's key type in VC++ 2015 #486

  • Using fifo_map #485

  • Cannot get float pointer for value stored as 0 #484

  • byte string support #483

  • For a header-only library you have to clone 214MB #482

  • https://github.com/nlohmann/json#execute-unit-tests #481

  • Remove deprecated constructor basic_json(std::istream&) #480

  • writing the binary json file? #479

  • CBOR/MessagePack from uint8_t * and size #478

  • Streaming binary representations #477

  • Reuse memory in to_cbor and to_msgpack functions #476

  • Error Using JSON Library with arrays C++ #475

  • Moving forward to version 3.0.0 #474

  • Inconsistent behavior in conversion to array type #473

  • Create a [key:member_pointer] map to ease parsing custom types #471

  • MSVC 2015 update 2 #469

  • VS2017 implicit to std::string conversion fix. #464

  • How to make sure a string or string literal is a valid JSON? #458

  • basic_json templated on a "policy" class #456

  • json::value(const json_pointer&, ValueType) requires exceptions to return the default value. #440

  • is it possible merge two json object #428

  • Is it possible to turn this into a shared library? #420

  • Further thoughts on performance improvements #418

  • nan number stored as null #388

  • Behavior of operator>> should more closely resemble that of built-in overloads. #367

  • Request: range-based-for over a json-object to expose .first/.second #350

  • feature wish: JSONPath #343

  • UTF-8/Unicode escape and dump #330

  • Serialized value not always can be parsed. #329

  • Is there a way to forward declare nlohmann::json? #314

  • Exception line #301

  • Do not throw exception when default_value's type does not match the actual type #278

  • dump() method doesn't work with a custom allocator #268

  • Readme documentation enhancements #248

  • Use user-defined exceptions #244

  • Incorrect C++11 allocator model support #161

  • re-added tests for algorithms #879 (nlohmann)

  • Overworked library toward 3.0.0 release #875 (nlohmann)

  • 🚨 remove C4996 warnings #872 #873 (nlohmann)

  • 💥 throwing an exception in case dump encounters a non-UTF-8 string #838 #870 (nlohmann)

  • 📝 fixing documentation #867 #868 (nlohmann)

  • iter_impl template conformance with C++17 #860 (bogemic)

  • Std allocator conformance cpp17 #856 (bogemic)

  • cmake: use BUILD_INTERFACE/INSTALL_INTERFACE #855 (theodelrieu)

  • to/from_json: add a MSVC-specific static_assert to force a stacktrace #854 (theodelrieu)

  • Add .natvis for MSVC debug view #844 (TinyTinni)

  • Updated hunter package links #829 (jowr)

  • Typos README #811 (Itja)

  • add forwarding references to json_ref constructor #807 (theodelrieu)

  • Add transparent comparator and perfect forwarding support to find() and count() #795 (jseward)

  • Error : 'identifier "size_t" is undefined' in linux #793 (sonulohani)

  • Fix Visual Studio 2017 warnings #788 (jseward)

  • Fix warning C4706 on Visual Studio 2017 #785 (jseward)

  • Set GENERATE_TAGFILE in Doxyfile #783 (eld00d)

  • using more CMake #765 (nlohmann)

  • Simplified istream handing #367 #764 (pjkundert)

  • Add info for the vcpkg package. #753 (gregmarr)

  • fix from_json implementation for pair/tuple #708 (theodelrieu)

  • Update json.hpp #686 (GoWebProd)

  • Remove duplicate word #685 (daixtrose)

  • To fix compilation issue for intel OSX compiler #682 (kbthomp1)

  • Digraph warning #679 (traits)

  • massage -> message #678 (DmitryKuk)

  • Fix "not constraint" grammar in docs #674 (wincent)

  • Add documentation for integration with CMake and hunter #671 (dan-42)

  • REFACTOR: rewrite CMakeLists.txt for better inlcude and reuse #669 (dan-42)

  • enable_testing only if the JSON_BuildTests is ON #666 (effolkronium)

  • Support moving from rvalues in std::initializer_list #663 (himikof)

  • add ensure_ascii parameter to dump. #330 #654 (ryanjmulder)

  • Rename BuildTests to JSON_BuildTests #652 (olegendo)

  • Don't include <iostream>, use std::make_shared #650 (olegendo)

  • Refacto/split basic json #643 (theodelrieu)

  • fix typo in operator__notequal example #630 (Chocobo1)

  • Fix MSVC warning C4819 #629 (Chocobo1)

  • BugFix
  • add pair/tuple conversions #624 (theodelrieu)

  • remove std::pair support #615 (theodelrieu)

  • Add pair support, fix CompatibleObject conversions fixes \#600 #609 (theodelrieu)

  • #550 Fix iterator related compiling issues for Intel icc #598 (HenryRLee)

  • Issue #593 Fix the arithmetic operators in the iterator and reverse iterator #595 (HenryRLee)

  • fix doxygen error of basic_json::get() #583 (zhaohuaxishi)

  • Fixing assignement for iterator wrapper second, and adding unit test #579 (Type1J)

  • Adding first and second properties to iteration_proxy_internal #578 (Type1J)

  • Adding support for Meson. #576 (Type1J)

  • add enum class default conversions #545 (theodelrieu)

  • Properly pop diagnostics #540 (tinloaf)

  • Add Visual Studio 17 image to appveyor build matrix #536 (vpetrigo)

  • UTF8 encoding enhancement #534 (TedLyngmo)

  • Fix typo #530 (berkus)

  • Make exception base class visible in basic_json #526 (krzysztofwos)

  • 🎨 Namespace uint8\_t from the C++ stdlib #510 (alex-weej)

  • add to_json method for C arrays #508 (theodelrieu)

  • Fix -Weffc++ warnings GNU 6.3.1 #496 (TedLyngmo)

v2.1.1 (2017-02-25)

Full Changelog

  • warning in the library #472

  • How to create an array of Objects? #470

  • Bug?
  • Illegal indirection #467

  • in vs can't find linkageId #466

  • Roundtrip error while parsing "1000000000000000010E5" #465

  • C4996 error and warning with Visual Studio #463

  • Support startIndex for from_cbor/from_msgpack #462

  • question: monospace font used in feature slideshow? #460

  • Object.keys() #459

  • Use “, “ as delimiter for json-objects. #457

  • Enum -> string during serialization and vice versa #455

  • doubles are printed as integers #454

  • Warnings with Visual Studio c++ VS2015 Update 3 #453

  • Heap-buffer-overflow OSS-Fuzz issue 585 #452

  • use of undeclared identifier 'UINT8_MAX' #451

  • Question on the lifetime managment of objects at the lower levels #449

  • Json should not be constructible with 'json*' #448

  • Move value_t to namespace scope #447

  • Typo in README.md #446

  • make check compilation is unneccesarily slow #445

  • Problem in dump() in json.h caused by ss.imbue #444

  • I want to create Windows Application in Visual Studio 2015 c++, and i have a problem #443

  • Implicit conversion issues #442

  • Parsing of floats locale dependent #302

  • Speedup CI builds using cotire #461 (tusharpm)

  • TurpentineDistillery feature/locale independent str to num #450 (nlohmann)

  • README: adjust boost::optional example #439 (jaredgrubb)

  • fix #414 - comparing to 0 literal #415 (stanmihai4)

v2.1.0 (2017-01-28)

Full Changelog

  • Parsing multiple JSON objects from a string or stream #438

  • Use-of-uninitialized-value OSS-Fuzz issue 477 #437

  • add reserve function for array to reserve memory before adding json values into it #436

  • Typo in examples page #434

  • avoid malformed json #433

  • How to add json objects to a map? #432

  • create json instance from raw json unsigned char\* #431

  • Getting std::invalid_argument: stream error when following example #429

  • Forward declare-only header? #427

  • Implicit conversion from array to object #425

  • Automatic ordered JSON #424

  • error C4996: 'strerror' when reading file #422

  • Get an error - JSON pointer must be empty or begin with '/' #421

  • size parameter for parse() #419

  • json.hpp forcibly defines GCC_VERSION #417

  • Use-of-uninitialized-value OSS-Fuzz issue 377 #416

  • comparing to 0 literal #414

  • Single char converted to ASCII code instead of string #413

  • How to know if a string was parsed as utf-8? #406

  • Overloaded += to add objects to an array makes no sense? #404

  • Finding a value in an array #399

  • add release information in static function #397

  • Optimize memory usage of json objects in combination with binary serialization #373

  • Conversion operators not considered #369

  • Append ".0" to serialized floating_point values that are digits-only. #362

  • Add a customization point for user-defined types #328

  • Conformance report for reference #307

  • Document the best way to serialize/deserialize user defined types to json #298

  • Add StringView template typename to basic_json #297

  • Improvement
  • Performance in miloyip/nativejson-benchmark #202

  • conversion from/to user-defined types #435 (nlohmann)

  • Fix documentation error #430 (vjon)

  • locale-independent num-to-str #378 (TurpentineDistillery)

v2.0.10 (2017-01-02)

Full Changelog

  • Heap-buffer-overflow OSS-Fuzz issue 367 #412

  • Heap-buffer-overflow OSS-Fuzz issue 366 #411

  • Use-of-uninitialized-value OSS-Fuzz issue 347 #409

  • Heap-buffer-overflow OSS-Fuzz issue 344 #408

  • Heap-buffer-overflow OSS-Fuzz issue 343 #407

  • Heap-buffer-overflow OSS-Fuzz issue 342 #405

  • strerror throwing error in compiler VS2015 #403

  • json::parse of std::string being underlined by Visual Studio #402

  • Explicitly getting string without .dump() #401

  • Possible to speed up json::parse? #398

  • the alphabetic order in the code influence console_output. #396

  • Execute tests with clang sanitizers #394

  • Check if library can be used with ETL #361

  • Feature/clang sanitize #410 (Daniel599)

  • Add Doozer build badge #400 (andoma)

v2.0.9 (2016-12-16)

Full Changelog

  • #pragma GCC diagnostic ignored "-Wdocumentation" #393

  • How to parse this json file and write separate sub object as json files? #392

  • Integer-overflow OSS-Fuzz issue 267 #389

  • Implement indefinite-length types from RFC 7049 #387

  • template parameter "T" is not used in declaring the parameter types of function template #386

  • Serializing json instances containing already serialized string values without escaping #385

  • Add test cases from RFC 7049 #384

  • Add a table of contents to the README file #383

  • Update FAQ section in the guidelines for contributing #382

  • Allow for forward declaring nlohmann::json #381

  • Bug in overflow detection when parsing integers #380

  • A unique name to mention the library? #377

  • Support for comments. #376

  • Non-unique keys in objects. #375

  • Request: binary serialization/deserialization #358

  • Replace class iterator and const_iterator by using a single template class to reduce code. #395 (Bosswestfalen)

  • Clang: quiet a warning #391 (jaredgrubb)

  • Fix issue #380: Signed integer overflow check #390 (qwename)

v2.0.8 (2016-12-02)

Full Changelog

  • Reading from file #374
  • Compiler warnings? #372
  • docs: how to release a json object in memory? #371
  • crash in dump #370
  • Coverity issue FORWARD\_NULL in lexer(std::istream& s) #368
  • json::parse on failed stream gets stuck #366
  • Performance improvements #365
  • 'to_string' is not a member of 'std' #364
  • Optional comment support. #363
  • Crash in dump() from a static object #359
  • json::parse(...) vs json j; j.parse(...) #357
  • Hi, is there any method to dump json to string with the insert order rather than alphabets #356
  • Provide an example of reading from an json with only a key that has an array of strings. #354
  • Request: access with default value. #353
  • {} and [] causes parser error. #352
  • Reading a JSON file into a JSON object #351
  • Request: 'emplace_back' #349
  • Is it possible to stream data through the json parser without storing everything in memory? #347
  • pure virtual conversion operator #346
  • Floating point precision lost #345
  • unit-conversions SIGSEGV on armv7hl #303
  • Coverity scan fails #299
  • Using QString as string type #274

v2.0.7 (2016-11-02)

Full Changelog

  • JSON5 #348

  • Check "Parsing JSON is a Minefield" #344

  • Allow hex numbers #342

  • Convert strings to numbers #341

  • ""-operators ignore the length parameter #340

  • JSON into std::tuple #339

  • JSON into vector #335

  • Installing with Homebrew on Mac Errors El Capitan #331

  • g++ make check results in error #312

  • Cannot convert from 'json' to 'char' #276

  • Please add a Pretty-Print option for arrays to stay always in one line #229

  • Conversion to STL map<string, vector<int>> gives error #220

  • std::unorderd_map cannot be used as ObjectType #164

  • fix minor grammar/style issue in README.md #336 (seeekr)

v2.0.6 (2016-10-15)

Full Changelog

  • How to handle json files? #333

  • This file requires compiler and library support .... #332

  • Segmentation fault on saving json to file #326

  • parse error - unexpected <uninitialized> with 2.0.5 #325

  • Add nested object capability to pointers #323

  • Fix usage examples' comments for std::multiset #322

  • json_unit runs forever when executed in build directory #319

  • Visual studio 2015 update3 true != TRUE #317

  • releasing single header file in compressed format #316

  • json object from std::ifstream #315

  • make has_mapped_type struct friendly #324 (vpetrigo)

  • Fix usage examples' comments for std::multiset #321 (vasild)

  • Include dir relocation #318 (ChristophJud)

  • trivial documentation fix #313 (5tefan)

v2.0.5 (2016-09-14)

Full Changelog

  • feature request
  • make json_benchmarks no longer working in 2.0.4 #310
  • Segmentation fault core dumped #309
  • No matching member function for call to 'get_impl' #308

v2.0.4 (2016-09-11)

Full Changelog

  • Parsing fails without space at end of file #306
  • json schema validator #305
  • Unused variable warning #304

v2.0.3 (2016-08-31)

Full Changelog

  • warning C4706: assignment within conditional expression #295

  • Strip comments / Minify #294

  • Q: Is it possible to build json tree from already UTF8 encoded values? #293

  • Equality operator results in array when assigned object #292

  • Support for integers not from the range [-(2**53)+1, (2**53)-1] in parser #291

  • Support for iterator-range parsing #290

  • Horribly inconsistent behavior between const/non-const reference in operator [] #289

  • Silently get numbers into smaller types #288

  • Incorrect parsing of large int64_t numbers #287

  • question
  • unit-constructor1.cpp: Fix floating point truncation warning #300 (t-b)

v2.0.2 (2016-07-31)

Full Changelog

  • can function dump() return string in the order I push in the json object ? #286

  • Error on the Mac: Undefined symbols for architecture x86_64 #285

  • value() does not work with _json_pointer types #283

  • Build error for std::int64 #282

  • strings can't be accessed after dump()->parse() - type is lost #281

  • Easy serialization of classes #280

  • recursive data structures #277

  • hexify() function emits conversion warning #270

  • let the makefile choose the correct sed #279 (murinicanor)

  • Update hexify to use array lookup instead of ternary \#270 #275 (dtoma)

v2.0.1 (2016-06-28)

Full Changelog

  • Compilation error. #273

  • dump() performance degradation in v2 #272

  • fixed a tiny typo #271 (feroldi)

v2.0.0 (2016-06-23)

Full Changelog

  • json::diff generates incorrect patch when removing multiple array elements. #269

  • Docs - What does Json[key] return? #267

  • Compiler Errors With JSON.hpp #265

  • Throw exception instead of crashing my app #264

  • Ambiguous push_back and operator+= overloads #263

  • Preseving order of items in json #262

  • '' char problem in strings #261

  • VS2015 compile fail #260

  • -Wconversion warning #259

  • Maybe a bug #258

  • Few tests failed on Visual C++ 2015 #257

  • Access keys when iteration with new for loop C++11 #256

  • multiline text values #255

  • Error when using json in g++ #254

  • is the release 2.0? #253

  • concatenate objects #252

  • Encoding #251

  • Unable to build example for constructing json object with stringstreams #250

  • Hexadecimal support #249

  • Update long-term goals #246

  • Contribution To This Json Project #245

  • Trouble using parser with initial dictionary #243

  • Unit test fails when doing a CMake out-of-tree build #241

  • -Wconversion warnings #239

  • Additional integration options #237

  • .get<std::string> works for non spaced string but returns as array for spaced/longer strings #236

  • ambiguous overload for 'push_back' and 'operator+=' #235

  • Can't use basic_json::iterator as a base iterator for std::move_iterator #233

  • json object's creation can freezes execution #231

  • Incorrect dumping of parsed numbers with exponents, but without decimal places #230

  • double values are serialized with commas as decimal points #228

  • Move semantics with std::initializer_list #225

  • replace emplace #224

  • abort during getline in yyfill #223

  • free(): invalid pointer error in GCC 5.2.1 #221

  • Error compile Android NDK error: 'strtof' is not a member of 'std' #219

  • Wrong link in the README.md #217

  • Wide character strings not supported #216

  • Memory allocations using range-based for loops #214

  • would you like to support gcc 4.8.1? #211

  • Reading concatenated json's from an istream #210

  • Conflicting typedef of ssize_t on Windows 32 bit when using Boost.Python #204

  • Inconsistency between operator[] and push_back #203

  • Small bugs in json.hpp get\_number and unit.cpp non-standard integer type test #199

  • GCC/clang floating point parsing bug in strtod() #195

  • What is within scope? #192

  • Bugs in miloyip/nativejson-benchmark: roundtrips #187

  • Floating point exceptions #181

  • Integer conversion to unsigned #178

  • map string string fails to compile #176

  • In basic_json::basic_json(const CompatibleArrayType& val), the requirement of CompatibleArrayType is not strict enough. #174

  • Provide a FAQ #163

  • Implicit assignment to std::string fails #144

  • Fix Issue #265 #266 (06needhamt)

  • Define CMake/CTest tests #247 (robertmrk)

  • Out of tree builds and a few other miscellaneous CMake cleanups. #242 (ChrisKitching)

  • Implement additional integration options #238 (robertmrk)

  • make serialization locale-independent #232 (nlohmann)

  • fixes #223 by updating README.md #227 (kevin--)

  • Use namespace std for int64_t and uint64_t #226 (lv-zheng)

  • Added missing cerrno header to fix ERANGE compile error on android #222 (Teemperor)

  • Corrected readme #218 (Annihil)

  • Create PULL_REQUEST_TEMPLATE.md #213 (whackashoe)

  • fixed noexcept; added constexpr #208 (nlohmann)

  • Add support for afl-fuzz testing #207 (mykter)

  • replaced ssize_t occurrences with auto addresses \#204 #205 (nlohmann)

  • Fixed issue #199 - Small bugs in json.hpp get\_number and unit.cpp non-standard integer type test #200 (twelsby)

  • Fix broken link #197 (vog)

  • Issue #195 - update Travis to Trusty due to gcc/clang strtod() bug #196 (twelsby)

  • Issue #178 - Extending support to full uint64_t/int64_t range and unsigned type updated #193 (twelsby)

v1.1.0 (2016-01-24)

Full Changelog

  • Small error in pull #185 #194

  • Bugs in miloyip/nativejson-benchmark: floating-point parsing #186

  • Floating point equality #185

  • Unused variables in catch #180

  • Typo in documentation #179

  • JSON performance benchmark comparision #177

  • Since re2c is often ignored in pull requests, it may make sense to make a contributing.md file #175

  • Question about exceptions #173

  • Android? #172

  • Cannot index by key of type static constexpr const char* #171

  • Add assertions #168

  • MSVC 2015 build fails when attempting to compare object_t #167

  • Member detector is not portable #166

  • Unnecessary const_cast #162

  • Question about get_ref() #128

  • range based for loop for objects #83

  • Consider submitting this to the Boost Library Incubator #66

  • Fixed Issue #186 - add strto(f|d|ld) overload wrappers, "-0.0" special case and FP trailing zero #191 (twelsby)

  • Issue #185 - remove approx() and use #pragma to kill warnings #190 (twelsby)

  • Fixed Issue #171 - added two extra template overloads of operator[] for T* arguments #189 (twelsby)

  • Fixed issue #167 - removed operator ValueType() condition for VS2015 #188 (twelsby)

  • Implementation of get_ref() #184 (dariomt)

  • Fixed some typos in CONTRIBUTING.md #182 (nibroc)

v1.0.0 (2015-12-27)

Full Changelog

  • add key name to exception #160

  • Getting member discarding qualifyer #159

  • basic_json::iterator::value() output includes quotes while basic_json::iterator::key() doesn't #158

  • Indexing const basic\_json\<\> with const basic\_string\<char\> #157

  • token_type_name(token_type t): not all control paths return a value #156

  • prevent json.hpp from emitting compiler warnings #154

  • json::parse(string) does not check utf8 bom #152

  • unsigned 64bit values output as signed #151

  • Wish feature: json5 #150

  • Unable to compile on MSVC 2015 with SDL checking enabled: This function or variable may be unsafe. #149

  • "Json Object" type does not keep object order #148

  • dump() convert strings encoded by utf-8 to shift-jis on windows 10. #147

  • Unable to get field names in a json object #145

  • Question: Is the use of incomplete type correct? #138

  • json.hpp:5746:32: error: 'to_string' is not a member of 'std' #136

  • Bug in basic_json::operator[] const overload #135

  • wrong enable_if for const pointer instead of pointer-to-const #134

  • overload of at() with default value #133

  • Splitting source #132

  • Question about get_ptr() #127

  • Visual Studio 14 Debug assertion failed #125

  • Memory leak in face of exceptions #118

  • Find and Count for arrays #117

  • dynamically constructing an arbitrarily nested object #114

  • Returning any data type #113

  • Compile error with g++ 4.9.3 cygwin 64-bit #112

  • insert json array issue with gcc4.8.2 #110

  • error: unterminated raw string #109

  • vector<json> copy constructor really weird #108

  • clang-3.6.2
  • maintaining order of keys during iteration #106

  • object field accessors #103

  • v8pp and json #95

  • Wishlist #65

  • Windows/Visual Studio through 2013 is unsupported #62

  • Replace sprintf with hex function, this fixes #149 #153 (whackashoe)

  • Fix character skipping after a surrogate pair #146 (robertmrk)

  • Detect correctly pointer-to-const #137 (dariomt)

  • disabled "CopyAssignable" test for MSVC in Debug mode, see #125 #131 (dariomt)

  • removed stream operator for iterator, resolution for #125 #130 (dariomt)

  • fixed typos in comments for examples #129 (dariomt)

  • Remove superfluous inefficiency #126 (d-frey)

  • remove invalid parameter '-stdlib=libc++' in CMakeLists.txt #124 (emvivre)

  • exception-safe object creation, fixes #118 #122 (d-frey)

  • Fix small oversight. #121 (ColinH)

  • Overload parse() to accept an rvalue reference #120 (silverweed)

  • Use the right variable name in doc string #115 (whoshuu)

v1.0.0-rc1 (2015-07-26)

  • Finish documenting the public interface in Doxygen #102

  • Binary string causes numbers to be dumped as hex #101

  • failed to iterator json object with reverse_iterator #100

  • 'noexcept' : unknown override specifier #99

  • json float parsing problem #98

  • Adjust wording to JSON RFC #97

  • 17 MB / 90 MB repo size!? #96

  • static analysis warnings #94

  • reverse_iterator operator inheritance problem #93

  • init error #92

  • access by const reference #91

  • is_integer and is_float tests #90

  • Nonstandard integer type #89

  • static library build #84

  • lexer::get_number return NAN #82

  • MinGW have no std::to_string #80

  • Incorrect behaviour of basic_json::count method #78

  • Invoking is_array() function creates "null" value #77

  • dump() / parse() not idempotent #76

  • Handle infinity and NaN cases #70

  • errors in g++-4.8.1 #68

  • Keys when iterating over objects #67

  • Compilation results in tons of warnings #64

  • Complete brief documentation #61

  • Double quotation mark is not parsed correctly #60

  • Get coverage back to 100% #58

  • erase elements using iterators #57

  • Removing item from array #56

  • Serialize/Deserialize like PHP? #55

  • Numbers as keys #54

  • Why are elements alphabetized on key while iterating? #53

  • Document erase, count, and iterators key and value #52

  • Do not use std::to_string #51

  • Supported compilers #50

  • Confused about iterating through json objects #49

  • Use non-member begin/end #48

  • Erase key #47

  • Key iterator #46

  • Add count member function #45

  • Problem getting vector array of strings #44

  • Compilation error due to assuming that private=public #43

  • Use of deprecated implicit copy constructor #42

  • Printing attribute names #39

  • dumping a small number_float just outputs 0.000000 #37

  • find is error #32

  • Avoid using spaces when encoding without pretty print #31

  • Cannot encode long numbers #30

  • segmentation fault when iterating over empty arrays/objects #28

  • Creating an empty array #27

  • Custom allocator support #25

  • make the type of the used string container customizable #20

  • Improper parsing of JSON string "\" #17

  • create a header-only version #16

  • Don't return "const values" #15

  • Add to_string overload for indentation #13

  • string parser does not recognize uncompliant strings #12

  • possible double-free in find function #11

  • UTF-8 encoding/deconding/testing #10

  • move code into namespace #9

  • free functions for explicit objects and arrays in initializer lists #8

  • unique_ptr for ownership #7

  • Add unit tests #4

  • Drop C++98 support #3

  • Test case coverage #2

  • Runtime error in Travis job #1

  • Keyword 'inline' is useless when member functions are defined in headers #87 (ahamez)

  • Remove useless typename #86 (ahamez)

  • Avoid warning with Xcode's clang #85 (ahamez)

  • Fix typos #73 (aqnouch)

  • Replace default\_callback function with nullptr and check for null… #72 (aburgh)

  • support enum #71 (likebeta)

  • Fix performance regression introduced with the parsing callback feature. #69 (aburgh)

  • Improve the implementations of the comparission-operators #63 (Florianjw)

  • Fix compilation of json_unit with GCC 5 #59 (dkopecek)

  • Parse streams incrementally. #40 (aburgh)

  • Feature/small float serialization #38 (jrandall)

  • template version with re2c scanner #36 (nlohmann)

  • more descriptive documentation in example #33 (luxe)

  • Fix string conversion under Clang #26 (wancw)

  • Fixed dumping of strings #24 (Teemperor)

  • Added a remark to the readme that coverage is GCC only for now #23 (Teemperor)

  • Unicode escaping #22 (Teemperor)

  • Implemented the JSON spec for string parsing for everything but the \uXXXX escaping #21 (Teemperor)

  • add the std iterator typedefs to iterator and const_iterator #19 (kirkshoop)

  • Fixed escaped quotes #18 (Teemperor)

  • Fix double delete on std::bad_alloc exception #14 (elliotgoodrich)

  • Added CMake and lcov #6 (Teemperor)

  • Version 2.0 #5 (nlohmann)

* This Change Log was automatically generated by github_changelog_generator