diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a6d1df5..e42b15bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ HEAD * Removed support for `char` values, see below (issue #1498) * `deserializeJson()` leaves `\uXXXX` unchanged instead of returning `NotSupported` * `deserializeMsgPack()` inserts `null` instead of returning `NotSupported` +* Removed `DeserializationError::NotSupported` > ### BREAKING CHANGES > @@ -29,6 +30,13 @@ HEAD > int8_t age; > doc["age"] = age; // OK > ``` +> +> On a different topic, `DeserializationError::NotSupported` has been removed. +> Instead of returning this error: +> +> * `deserializeJson()` leaves `\uXXXX` unchanged (only when `ARDUINOJSON_DECODE_UNICODE` is `0`) +> * `deserializeMsgPack()` replaces unsupported values with `null`s + v6.17.3 (2021-02-15) ------- diff --git a/extras/tests/JsonDeserializer/DeserializationError.cpp b/extras/tests/JsonDeserializer/DeserializationError.cpp index 92a23497..e55d20b4 100644 --- a/extras/tests/JsonDeserializer/DeserializationError.cpp +++ b/extras/tests/JsonDeserializer/DeserializationError.cpp @@ -34,7 +34,6 @@ TEST_CASE("DeserializationError") { TEST_STRINGIFICATION(IncompleteInput); TEST_STRINGIFICATION(InvalidInput); TEST_STRINGIFICATION(NoMemory); - TEST_STRINGIFICATION(NotSupported); TEST_STRINGIFICATION(TooDeep); } @@ -44,7 +43,6 @@ TEST_CASE("DeserializationError") { TEST_BOOLIFICATION(IncompleteInput, true); TEST_BOOLIFICATION(InvalidInput, true); TEST_BOOLIFICATION(NoMemory, true); - TEST_BOOLIFICATION(NotSupported, true); TEST_BOOLIFICATION(TooDeep, true); } diff --git a/extras/tests/MixedConfiguration/enable_progmem_1.cpp b/extras/tests/MixedConfiguration/enable_progmem_1.cpp index 35cdf3c8..622eaa29 100644 --- a/extras/tests/MixedConfiguration/enable_progmem_1.cpp +++ b/extras/tests/MixedConfiguration/enable_progmem_1.cpp @@ -181,6 +181,5 @@ TEST_CASE("DeserializationError::f_str()") { TEST_STRINGIFICATION(IncompleteInput); TEST_STRINGIFICATION(InvalidInput); TEST_STRINGIFICATION(NoMemory); - TEST_STRINGIFICATION(NotSupported); TEST_STRINGIFICATION(TooDeep); } diff --git a/src/ArduinoJson/Deserialization/DeserializationError.hpp b/src/ArduinoJson/Deserialization/DeserializationError.hpp index ea1ed56b..de6b7ded 100644 --- a/src/ArduinoJson/Deserialization/DeserializationError.hpp +++ b/src/ArduinoJson/Deserialization/DeserializationError.hpp @@ -26,7 +26,6 @@ class DeserializationError { IncompleteInput, InvalidInput, NoMemory, - NotSupported, TooDeep }; @@ -81,8 +80,8 @@ class DeserializationError { const char* c_str() const { static const char* messages[] = { - "Ok", "EmptyInput", "IncompleteInput", "InvalidInput", - "NoMemory", "NotSupported", "TooDeep"}; + "Ok", "EmptyInput", "IncompleteInput", + "InvalidInput", "NoMemory", "TooDeep"}; ARDUINOJSON_ASSERT(static_cast(_code) < sizeof(messages) / sizeof(messages[0])); return messages[_code]; @@ -95,11 +94,9 @@ class DeserializationError { ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s2, "IncompleteInput"); ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s3, "InvalidInput"); ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s4, "NoMemory"); - ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s5, "NotSupported"); - ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s6, "TooDeep"); + ARDUINOJSON_DEFINE_STATIC_ARRAY(char, s5, "TooDeep"); ARDUINOJSON_DEFINE_STATIC_ARRAY( - const char*, messages, - ARDUINOJSON_EXPAND7({s0, s1, s2, s3, s4, s5, s6})); + const char*, messages, ARDUINOJSON_EXPAND6({s0, s1, s2, s3, s4, s5})); return ARDUINOJSON_READ_STATIC_ARRAY(const __FlashStringHelper*, messages, _code); } diff --git a/src/ArduinoJson/Polyfills/preprocessor.hpp b/src/ArduinoJson/Polyfills/preprocessor.hpp index 8811d50f..a3370c14 100644 --- a/src/ArduinoJson/Polyfills/preprocessor.hpp +++ b/src/ArduinoJson/Polyfills/preprocessor.hpp @@ -5,7 +5,6 @@ #pragma once #define ARDUINOJSON_EXPAND6(a, b, c, d, e, f) a, b, c, d, e, f -#define ARDUINOJSON_EXPAND7(a, b, c, d, e, f, g) a, b, c, d, e, f, g #define ARDUINOJSON_EXPAND9(a, b, c, d, e, f, g, h, i) a, b, c, d, e, f, g, h, i #define ARDUINOJSON_EXPAND18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, \ q, r) \