Skip to content

Releases: bblanchon/ArduinoJson

ArduinoJson 6.11.5

23 Aug 06:44
Compare
Choose a tag to compare

Changes since 6.11.4

  • Added fallback implementations of strlen_P(), strncmp_P(), strcmp_P(), and memcpy_P() (issue #1073)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.5.h put it in your project folder
  3. Download ArduinoJson-v6.11.5.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.5.h and ArduinoJson-v6.11.5.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.11.4

12 Aug 13:16
Compare
Choose a tag to compare

Changes since 6.11.3

  • Added measureJson() to the ArduinoJson namespace (PR #1069 by @nomis)
  • Added support for basic_string<char, traits, allocator> (issue #1045)
  • Fixed example JsonConfigFile.ino for ESP8266
  • Include Arduino.h if ARDUINO is defined (PR #1071 by @nomis)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.4.h put it in your project folder
  3. Download ArduinoJson-v6.11.4.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.4.h and ArduinoJson-v6.11.4.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.11.3

22 Jul 07:04
Compare
Choose a tag to compare

Changes since 6.11.2

  • Added operators == and != for JsonDocument, ElementProxy, and MemberProxy
  • Fixed comparison of JsonVariant when one contains a linked string and the other contains an owned string (issue #1051)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.3.h put it in your project folder
  3. Download ArduinoJson-v6.11.3.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.3.h and ArduinoJson-v6.11.3.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.11.2

08 Jul 06:48
Compare
Choose a tag to compare

Changes since 6.11.1

  • Fixed assignment of JsonDocument to JsonVariant (issue #1023)
  • Fix invalid conversion error on Particle Argon (issue #1035)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.2.h put it in your project folder
  3. Download ArduinoJson-v6.11.2.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.2.h and ArduinoJson-v6.11.2.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.11.1

21 Jun 06:53
Compare
Choose a tag to compare

Changes since 6.11.0

  • Fixed serialized() not working with Flash strings (issue #1030)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.1.h put it in your project folder
  3. Download ArduinoJson-v6.11.1.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.1.h and ArduinoJson-v6.11.1.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.11.0

26 May 19:20
Compare
Choose a tag to compare

Looking for a human-readable version?
📰 Read the article on arduinojson.org

Changes since 6.10.1

  • Fixed deserializeJson() silently accepting a Stream* (issue #978)
  • Fixed invalid result from operator| (issue #981)
  • Made deserializeJson() more picky about trailing characters (issue #980)
  • Added ARDUINOJSON_ENABLE_NAN (default=0) to enable NaN in JSON (issue #973)
  • Added ARDUINOJSON_ENABLE_INFINITY (default=0) to enable Infinity in JSON
  • Removed implicit conversion in comparison operators (issue #998)
  • Added lexicographical comparison for JsonVariant
  • Added support for nullptr (issue #998)

BREAKING CHANGES

NaN and Infinity

The JSON specification allows neither NaN not Infinity, but previous
versions of ArduinoJson supported it. Now, ArduinoJson behaves like most
other libraries: a NaN or and Infinity in the JsonDocument, becomes
a null in the output JSON. Also, deserializeJson() returns
InvalidInput if the JSON document contains NaN or Infinity.

This version still supports NaN and Infinity in JSON documents, but
it's disabled by default to be compatible with other JSON parsers.
If you need the old behavior back, define ARDUINOJSON_ENABLE_NAN and
ARDUINOJSON_ENABLE_INFINITY to 1:

#define ARDUINOJSON_ENABLE_NAN 1
#define ARDUINOJSON_ENABLE_INFINITY 1
#include <ArduinoJson.h>

The "or" operator

This version slightly changes the behavior of the | operator when the
variant contains a float and the user requests an integer.

Older versions returned the floating point value truncated.
Now, it returns the default value.

// suppose variant contains 1.2
int value = variant | 3;

// old behavior:
value == 1

// new behavior
value == 3

If you need the old behavior, you must add if (variant.is<float>()).

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.11.0.h put it in your project folder
  3. Download ArduinoJson-v6.11.0.zip and extract it in you libraries folder

Note: ArduinoJson-v6.11.0.h and ArduinoJson-v6.11.0.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.10.1

23 Apr 06:53
Compare
Choose a tag to compare

Changes since 6.10.0

  • Fixed error "attributes are not allowed on a function-definition"
  • Fixed deserializeJson() not being picky enough (issue #969)
  • Fixed error "no matching function for call to write(uint8_t)" (issue #972)

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.10.1.h put it in your project folder
  3. Download ArduinoJson-v6.10.1.zip and extract it in you libraries folder

Note: ArduinoJson-v6.10.1.h are ArduinoJson-v6.10.1.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.10.0

22 Mar 21:08
Compare
Choose a tag to compare

Looking for a human-readable version?
📰 Read the article on arduinojson.org

Special note ⚠️

ArduinoJson 6 requires updating code written for version 5.
See the migration guide for details.

Changes since 6.9.1

  • Fixed an integer overflow in the JSON deserializer
  • Added overflow handling in JsonVariant::as<T>() and JsonVariant::is<T>().
    • as<T>() returns 0 if the integer T overflows
    • is<T>() returns false if the integer T overflows
  • Added BasicJsonDocument to support custom allocator (issue #876)
  • Added JsonDocument::containsKey() (issue #938)
  • Added JsonVariant::containsKey()

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.10.0.h put it in your project folder
  3. Download ArduinoJson-v6.10.0.zip and extract it in you libraries folder

Note: ArduinoJson-v6.10.0.h are ArduinoJson-v6.10.0.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 6.9.1

01 Mar 17:24
Compare
Choose a tag to compare

Looking for a human-readable version?
📰 Read the article on arduinojson.org

Special note ⚠️

ArduinoJson 6 requires updating code written for version 5.
See the migration guide for details.

Changes since 6.9.0

  • Fixed warning "unused variable" with GCC 4.4 (issue #912)
  • Fixed warning "cast increases required alignment" (issue #914)
  • Fixed warning "conversion may alter value" (issue #914)
  • Fixed naming conflict with "CAPACITY" (issue #839)
  • Muted warning "will change in GCC 7.1" (issue #914)
  • Added a clear error message for StaticJsonBuffer and DynamicJsonBuffer
  • Marked ArduinoJson.h as a "system header"

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v6.9.1.h put it in your project folder
  3. Download ArduinoJson-v6.9.1.zip and extract it in you libraries folder

Note: ArduinoJson-v6.9.1.h are ArduinoJson-v6.9.1.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

Try online

ArduinoJson 5.13.5

01 Mar 16:04
Compare
Choose a tag to compare

Changes since 5.13.4

  • Fixed warning "unused variable" with GCC 4.4 (issue #912)
  • Fixed warning "maybe uninitialized" (issue #909)
  • Added an clear message for StaticJsonDocument, DynamicJsonDocument...

View version history

How to install

There are several ways to install ArduinoJson, from simpler to more complex:

  1. Use the Arduino Library Manager
  2. Download ArduinoJson-v5.13.5.h put it in your project folder
  3. Download ArduinoJson-v5.13.5.zip and extract it in you libraries folder

Note: ArduinoJson-v5.13.5.h are ArduinoJson-v5.13.5.hpp are almost identical; the difference is that the .hpp keeps everything in the ArduinoJson namespace.

ℹ️ The complete documentation is available on arduinojson.org

Try online