CHANGELOG.md 6.66 KB
Newer Older
Milo Yip's avatar
Milo Yip committed
1 2 3 4 5 6
# Change Log
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [Unreleased]

Milo Yip's avatar
Milo Yip committed
7 8
## 1.1.0 - 2016-08-25

Milo Yip's avatar
Milo Yip committed
9 10 11
### Added
* Add GenericDocument ctor overload to specify JSON type (#369)
* Add FAQ (#372, #373, #374, #376)
Milo Yip's avatar
Milo Yip committed
12
* Add forward declaration header `fwd.h`
Milo Yip's avatar
Milo Yip committed
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
* Add @PlatformIO Library Registry manifest file (#400)
* Implement assignment operator for BigInteger (#404)
* Add comments support (#443)
* Adding coapp definition (#460)
* documenttest.cpp: EXPECT_THROW when checking empty allocator (470)
* GenericDocument: add implicit conversion to ParseResult (#480)
* Use <wchar.h> with C++ linkage on Windows ARM (#485)
* Detect little endian for Microsoft ARM targets 
* Check Nan/Inf when writing a double (#510)
* Add JSON Schema Implementation (#522)
* Add iostream wrapper (#530)
* Add Jsonx example for converting JSON into JSONx (a XML format) (#531)
* Add optional unresolvedTokenIndex parameter to Pointer::Get() (#532)
* Add encoding validation option for Writer/PrettyWriter (#534)
* Add Writer::SetMaxDecimalPlaces() (#536)
* Support {0, } and {0, m} in Regex (#539)
* Add Value::Get/SetFloat(), Value::IsLossLessFloat/Double() (#540)
* Add stream position check to reader unit tests (#541)
* Add Templated accessors and range-based for (#542)
* Add (Pretty)Writer::RawValue() (#543)
* Add Document::Parse(std::string), Document::Parse(const char*, size_t length) and related APIs. (#553)
* Add move constructor for GenericSchemaDocument (#554)
* Add VS2010 and VS2015 to AppVeyor CI (#555)
* Add parse-by-parts example (#556, #562)
* Support parse number as string (#564, #589)
* Add kFormatSingleLineArray for PrettyWriter (#577)
Milo Yip's avatar
Milo Yip committed
39 40 41 42 43
* Added optional support for trailing commas (#584)
* Added filterkey and filterkeydom examples (#615)
* Added npm docs (#639)
* Allow options for writing and parsing NaN/Infinity (#641)
* Add std::string overload to PrettyWriter::Key() when RAPIDJSON_HAS_STDSTRING is defined (#698)
Milo Yip's avatar
Milo Yip committed
44 45

### Fixed
Milo Yip's avatar
Milo Yip committed
46 47
* Fix gcc/clang/vc warnings (#350, #394, #397, #444, #447, #473, #515, #582, #589, #595, #667)
* Fix documentation (#482, #511, #550, #557, #614, #635, #660)
Milo Yip's avatar
Milo Yip committed
48 49 50 51 52 53 54 55 56 57 58 59 60
* Fix emscripten alignment issue (#535)
* Fix missing allocator to uses of AddMember in document (#365)
* CMake will no longer complain that the minimum CMake version is not specified (#501)
* Make it usable with old VC8 (VS2005) (#383)
* Prohibit C++11 move from Document to Value (#391)
* Try to fix incorrect 64-bit alignment (#419)
* Check return of fwrite to avoid warn_unused_result build failures (#421)
* Fix UB in GenericDocument::ParseStream (#426)
* Keep Document value unchanged on parse error (#439)
* Add missing return statement (#450)
* Fix Document::Parse(const Ch*) for transcoding (#478)
* encodings.h: fix typo in preprocessor condition (#495)
* Custom Microsoft headers are necessary only for Visual Studio 2012 and lower (#559)
Milo Yip's avatar
Milo Yip committed
61 62
* Fix memory leak for invalid regex (26e69ffde95ba4773ab06db6457b78f308716f4b)
* Fix a bug in schema minimum/maximum keywords for 64-bit integer (e7149d665941068ccf8c565e77495521331cf390)
Milo Yip's avatar
Milo Yip committed
63
* Fix a crash bug in regex (#605)
Milo Yip's avatar
Milo Yip committed
64
* Fix schema "required" keyword cannot handle duplicated keys (#609)
Milo Yip's avatar
Milo Yip committed
65
* Fix cmake CMP0054 warning (#612)
Milo Yip's avatar
Milo Yip committed
66 67 68 69 70 71 72
* Added missing include guards in istreamwrapper.h and ostreamwrapper.h (#634)
* Fix undefined behaviour (#646)
* Fix buffer overrun using PutN (#673)
* Fix rapidjson::value::Get<std::string>() may returns wrong data (#681)
* Add Flush() for all value types (#689)
* Handle malloc() fail in PoolAllocator (#691)
* Fix builds on x32 platform. #703
Milo Yip's avatar
Milo Yip committed
73 74 75 76 77 78 79

### Changed
* Clarify problematic JSON license (#392)
* Move Travis to container based infrastructure (#504, #558)
* Make whitespace array more compact (#513)
* Optimize Writer::WriteString() with SIMD (#544)
* x86-64 48-bit pointer optimization for GenericValue (#546)
Milo Yip's avatar
Milo Yip committed
80 81 82
* Define RAPIDJSON_HAS_CXX11_RVALUE_REFS directly in clang (#617)
* Make GenericSchemaDocument constructor explicit (#674)
* Optimize FindMember when use std::string (#690)
Milo Yip's avatar
Milo Yip committed
83

Milo Yip's avatar
Milo Yip committed
84 85
## [1.0.2] - 2015-05-14

86 87 88
### Added
* Add Value::XXXMember(...) overloads for std::string (#335)

Milo Yip's avatar
Milo Yip committed
89
### Fixed
90
* Include rapidjson.h for all internal/error headers.
Milo Yip's avatar
Milo Yip committed
91
* Parsing some numbers incorrectly in full-precision mode (`kFullPrecisionParseFlag`) (#342)
Milo Yip's avatar
Milo Yip committed
92
* Fix some numbers parsed incorrectly (#336)
Milo Yip's avatar
Milo Yip committed
93 94 95 96 97 98
* Fix alignment of 64bit platforms (#328)
* Fix MemoryPoolAllocator::Clear() to clear user-buffer (0691502573f1afd3341073dd24b12c3db20fbde4)

### Changed
* CMakeLists for include as a thirdparty in projects (#334, #337)
* Change Document::ParseStream() to use stack allocator for Reader (ffbe38614732af8e0b3abdc8b50071f386a4a685) 
99

Milo Yip's avatar
Milo Yip committed
100
## [1.0.1] - 2015-04-25
Milo Yip's avatar
Milo Yip committed
101 102 103 104 105 106 107 108

### Added
* Changelog following [Keep a CHANGELOG](https://github.com/olivierlacan/keep-a-changelog) suggestions.

### Fixed
* Parsing of some numbers (e.g. "1e-00011111111111") causing assertion (#314).
* Visual C++ 32-bit compilation error in `diyfp.h` (#317).

Milo Yip's avatar
Milo Yip committed
109
## [1.0.0] - 2015-04-22
Milo Yip's avatar
Milo Yip committed
110 111 112 113 114 115 116 117 118 119 120 121 122 123

### Added
* 100% [Coverall](https://coveralls.io/r/miloyip/rapidjson?branch=master) coverage.
* Version macros (#311)

### Fixed
* A bug in trimming long number sequence (4824f12efbf01af72b8cb6fc96fae7b097b73015).
* Double quote in unicode escape (#288).
* Negative zero roundtrip (double only) (#289).
* Standardize behavior of `memcpy()` and `malloc()` (0c5c1538dcfc7f160e5a4aa208ddf092c787be5a, #305, 0e8bbe5e3ef375e7f052f556878be0bd79e9062d).

### Removed
* Remove an invalid `Document::ParseInsitu()` API (e7f1c6dd08b522cfcf9aed58a333bd9a0c0ccbeb).

Milo Yip's avatar
Milo Yip committed
124
## 1.0-beta - 2015-04-8
Milo Yip's avatar
Milo Yip committed
125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149

### Added
* RFC 7159 (#101)
* Optional Iterative Parser (#76)
* Deep-copy values (#20)
* Error code and message (#27)
* ASCII Encoding (#70)
* `kParseStopWhenDoneFlag` (#83)
* `kParseFullPrecisionFlag` (881c91d696f06b7f302af6d04ec14dd08db66ceb)
* Add `Key()` to handler concept (#134)
* C++11 compatibility and support (#128)
* Optimized number-to-string and vice versa conversions (#137, #80)
* Short-String Optimization (#131)
* Local stream optimization by traits (#32)
* Travis & Appveyor Continuous Integration, with Valgrind verification (#24, #242)
* Redo all documentation (English, Simplified Chinese)

### Changed
* Copyright ownership transfered to THL A29 Limited (a Tencent company).
* Migrating from Premake to CMAKE (#192)
* Resolve all warning reports

### Removed
* Remove other JSON libraries for performance comparison (#180)

Milo Yip's avatar
Milo Yip committed
150
## 0.11 - 2012-11-16
Milo Yip's avatar
Milo Yip committed
151

Milo Yip's avatar
Milo Yip committed
152
## 0.1 - 2011-11-18
Milo Yip's avatar
Milo Yip committed
153

Milo Yip's avatar
Milo Yip committed
154 155
[Unreleased]: https://github.com/miloyip/rapidjson/compare/v1.1.0...HEAD
[1.1.0]: https://github.com/miloyip/rapidjson/compare/v1.0.2...v1.1.0
Milo Yip's avatar
Milo Yip committed
156
[1.0.2]: https://github.com/miloyip/rapidjson/compare/v1.0.1...v1.0.2
Milo Yip's avatar
Milo Yip committed
157 158
[1.0.1]: https://github.com/miloyip/rapidjson/compare/v1.0.0...v1.0.1
[1.0.0]: https://github.com/miloyip/rapidjson/compare/v1.0-beta...v1.0.0