-
v6.6.0-betaRelease ArduinoJson 6.6.0-beta
ArduinoJson 6.6.0-beta * Removed `JsonArray::is<T>(i)` and `JsonArray::set(i,v)` * Removed `JsonObject::is<T>(k)` and `JsonObject::set(k,v)` * Replaced `T JsonArray::get<T>(i)` with `JsonVariant JsonArray::get(i)` * Replaced `T JsonObject::get<T>(k)` with `JsonVariant JsonObject::get(k)` * Added `JSON_STRING_SIZE()` * Replacing or removing a value now releases the memory * Added `DeserializationError::code()` to be used in switch statements (issue #846)
-
v6.5.0-betaRelease ArduinoJson 6.5.0-beta
ArduinoJson 6.5.0-beta * Added implicit conversion from `JsonArray` and `JsonObject` to `JsonVariant` * Allow mixed configuration in compilation units (issue #809) * Fixed object keys not being duplicated * `JsonPair::key()` now returns a `JsonKey` * Increased the default capacity of `DynamicJsonDocument` * Fixed `JsonVariant::is<String>()` (closes #763) * Added `JsonArrayConst`, `JsonObjectConst`, and `JsonVariantConst` * Added copy-constructor and copy-assignment-operator for `JsonDocument` (issue #827)
-
v5.13.3Release ArduinoJson 5.13.3
ArduinoJson 5.13.3 * Improved float serialization when `-fsingle-precision-constant` is used * Fixed `JsonVariant::is<int>()` that returned true for empty strings * Fixed `JsonVariant::is<String>()` (closes #763)
-
v6.4.0-betaRelease ArduinoJson 6.4.0-beta
ArduinoJson 6.4.0-beta * Copy `JsonArray` and `JsonObject`, instead of storing pointers (issue #780) * Added `JsonVariant::to<JsonArray>()` and `JsonVariant::to<JsonObject>()`
-
v6.3.0-betaRelease ArduinoJson 6.3.0-beta
ArduinoJson 6.3.0-beta * Implemented reference semantics for `JsonVariant` * Replace `JsonPair`'s `key` and `value` with `key()` and `value()` * Fixed `serializeJson(obj[key], dst)` (issue #794)
-
v6.2.3-betaRelease ArduinoJson 6.2.3-beta
ArduinoJson v6.2.3-beta * Fixed exception when using Flash strings as object keys (issue #784)
-
v6.2.2-betaRelease ArduinoJson 6.2.2-beta
ArduinoJson 6.2.2-beta * Fixed `invalid application of 'sizeof' to incomplete type '__FlashStringHelper'` (issue #783) * Fixed `char[]` not duplicated when passed to `JsonVariant::operator[]`
-
v6.2.1-betaRelease ArduinoJson 6.2.1-beta
ArduinoJson 6.2.1-beta * Fixed `JsonObject` not inserting keys of type `String` (issue #782)
-
v6.2.0-betaRelease ArduinoJson 6.2.0-beta
ArduinoJson 6.2.0-beta * Disabled lazy number deserialization (issue #772) * Improved float serialization when `-fsingle-precision-constant` is used * Renamed function `RawJson()` to `serialized()` * `serializeMsgPack()` now supports values marked with `serialized()`
-
v6.1.0-betaRelease ArduinoJson 6.1.0-beta
ArduinoJson 6.1.0-beta * Return `JsonArray` and `JsonObject` by value instead of reference (issue #309) * Replaced `success()` with `isNull()`
-
v6.0.1-betaRelease ArduinoJson 6.0.1-beta
ArduinoJson 6.0.1-beta * Fixed conflicts with `isnan()` and `isinf()` macros (issue #752)
-
v6.0.0-betaRelease ArduinoJson 6.0.0-beta
ArduinoJson 6.0.0-beta * Added `DynamicJsonDocument` and `StaticJsonDocument` * Added `deserializeJson()` * Added `serializeJson()` and `serializeJsonPretty()` * Added `measureJson()` and `measureJsonPretty()` * Added `serializeMsgPack()`, `deserializeMsgPack()` and `measureMsgPack()` (issue #358) * Added example `MsgPackParser.ino` (issue #358) * Added support for non zero-terminated strings (issue #704) * Removed `JsonBuffer::parseArray()`, `parseObject()` and `parse()` * Removed `JsonBuffer::createArray()` and `createObject()` * Removed `printTo()` and `prettyPrintTo()` * Removed `measureLength()` and `measurePrettyLength()` * Removed all deprecated features
-
v5.13.2Release ArduinoJson 5.13.2
ArduinoJson 5.13.2 * Fixed `JsonBuffer::parse()` not respecting nesting limit correctly (issue #693) * Fixed inconsistencies in nesting level counting (PR #695 from Zhenyu Wu) * Fixed null values that could be pass to `strcmp()` (PR #745 from Mike Karlesky) * Added macros `ARDUINOJSON_VERSION`, `ARDUINOJSON_VERSION_MAJOR`...
-
v5.13.1Release ArduinoJson 5.13.1
ArduinoJson 5.13.1 * Fixed `JsonVariant::operator|(int)` that returned the default value if the variant contained a double (issue #675) * Allowed non-quoted key to contain underscores (issue #665)
-
v5.13.0Release ArduinoJson 5.13.0
ArduinoJson 5.13.0 * Changed the rules of string duplication (issue #658) * `RawJson()` accepts any kind of string and obeys to the same rules for duplication * Changed the return type of `strdup()` to `const char*` to prevent double duplication * Marked `strdup()` as deprecated
-
v5.12.0Release ArduinoJson 5.12.0
ArduinoJson 5.12.0 * Added `JsonVariant::operator|` to return a default value * Added a clear error message when compiled as C instead of C++ (issue #629) * Added detection of MPLAB XC compiler (issue #629) * Added detection of Keil ARM Compiler (issue #629) * Added an example that shows how to save and load a configuration file * Reworked all other examples
-
v5.11.2Release ArduinoJson 5.11.2
ArduinoJson 5.11.2 * Fixed `DynamicJsonBuffer::clear()` not resetting allocation size (issue #561) * Fixed incorrect rounding for float values (issue #588)
-
v5.11.1Release ArduinoJson 5.11.1
ArduinoJson 5.11.1 * Removed dependency on `PGM_P` as Particle 0.6.2 doesn't define it (issue #546) * Fixed warning "dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]" * Fixed warning "floating constant exceeds range of 'float' [-Woverflow]" (issue #544) * Fixed warning "this statement may fall through" [-Wimplicit-fallthrough=] (issue #539) * Removed `ARDUINOJSON_DOUBLE_IS_64BITS` as it became useless. * Fixed too many decimals places in float serialization (issue #543)
-
v5.11.0Release ArduinoJson 5.11.0
ArduinoJson 5.11.0 * Made `JsonBuffer` non-copyable (PR #524 by @luisrayas3) * Added `StaticJsonBuffer::clear()` * Added `DynamicJsonBuffer::clear()`