From 4974208a65c5ced58ffbc8400ac47d680bd86dfc Mon Sep 17 00:00:00 2001 From: MichaelDvP Date: Sat, 20 Jan 2024 08:36:06 +0100 Subject: [PATCH] update arduinoJson 7.02 --- lib/ArduinoJson/CHANGELOG.md | 5 ++++ lib/ArduinoJson/CMakeLists.txt | 25 +++++++++++++++++++ lib/ArduinoJson/idf_component.yml | 13 ++++++++++ lib/ArduinoJson/library.json | 23 +++++++++++++++++ lib/ArduinoJson/library.properties | 11 ++++++++ .../src/ArduinoJson/Document/JsonDocument.hpp | 2 +- .../ArduinoJson/Memory/VariantPoolList.hpp | 1 + lib/ArduinoJson/src/ArduinoJson/version.hpp | 6 ++--- 8 files changed, 82 insertions(+), 4 deletions(-) create mode 100644 lib/ArduinoJson/CMakeLists.txt create mode 100644 lib/ArduinoJson/idf_component.yml create mode 100644 lib/ArduinoJson/library.json create mode 100644 lib/ArduinoJson/library.properties diff --git a/lib/ArduinoJson/CHANGELOG.md b/lib/ArduinoJson/CHANGELOG.md index 498a8853b..e82281e20 100644 --- a/lib/ArduinoJson/CHANGELOG.md +++ b/lib/ArduinoJson/CHANGELOG.md @@ -1,6 +1,11 @@ ArduinoJson: change log ======================= +v7.0.2 (2024-01-19) +------ + +* Fix assertion `poolIndex < count_` after `JsonDocument::clear()` (issue #2034) + v7.0.1 (2024-01-10) ------ diff --git a/lib/ArduinoJson/CMakeLists.txt b/lib/ArduinoJson/CMakeLists.txt new file mode 100644 index 000000000..6efa04b3b --- /dev/null +++ b/lib/ArduinoJson/CMakeLists.txt @@ -0,0 +1,25 @@ +# ArduinoJson - https://arduinojson.org +# Copyright © 2014-2024, Benoit BLANCHON +# MIT License + +cmake_minimum_required(VERSION 3.15) + +if(ESP_PLATFORM) + # Build ArduinoJson as an ESP-IDF component + idf_component_register(INCLUDE_DIRS src) + return() +endif() + +project(ArduinoJson VERSION 7.0.2) + +if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) + include(CTest) +endif() + +add_subdirectory(src) + +if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING) + include(extras/CompileOptions.cmake) + add_subdirectory(extras/tests) + add_subdirectory(extras/fuzzing) +endif() diff --git a/lib/ArduinoJson/idf_component.yml b/lib/ArduinoJson/idf_component.yml new file mode 100644 index 000000000..429d37339 --- /dev/null +++ b/lib/ArduinoJson/idf_component.yml @@ -0,0 +1,13 @@ +version: "7.0.2" +description: >- + A simple and efficient JSON library for embedded C++. + ⭐ 6444 stars on GitHub! + Supports serialization, deserialization, MessagePack, streams, filtering, and more. + Fully tested and documented. +url: https://arduinojson.org/ +files: + exclude: + - "**/.vs/**/*" + - ".devcontainer/**/*" + - "examples/**/*" + - "extras/**/*" diff --git a/lib/ArduinoJson/library.json b/lib/ArduinoJson/library.json new file mode 100644 index 000000000..46f156ac4 --- /dev/null +++ b/lib/ArduinoJson/library.json @@ -0,0 +1,23 @@ +{ + "name": "ArduinoJson", + "keywords": "json, rest, http, web", + "description": "A simple and efficient JSON library for embedded C++. ⭐ 6444 stars on GitHub! Supports serialization, deserialization, MessagePack, streams, filtering, and more. Fully tested and documented.", + "homepage": "https://arduinojson.org/?utm_source=meta&utm_medium=library.json", + "repository": { + "type": "git", + "url": "https://github.com/bblanchon/ArduinoJson.git" + }, + "version": "7.0.2", + "authors": { + "name": "Benoit Blanchon", + "url": "https://blog.benoitblanchon.fr" + }, + "export": { + "include": ["src", "examples", "LICENSE.txt", "ArduinoJson.h"] + }, + "frameworks": "*", + "platforms": "*", + "build": { + "libArchive": false + } +} diff --git a/lib/ArduinoJson/library.properties b/lib/ArduinoJson/library.properties new file mode 100644 index 000000000..e9d9c2c7d --- /dev/null +++ b/lib/ArduinoJson/library.properties @@ -0,0 +1,11 @@ +name=ArduinoJson +version=7.0.2 +author=Benoit Blanchon +maintainer=Benoit Blanchon +sentence=A simple and efficient JSON library for embedded C++. +paragraph=⭐ 6444 stars on GitHub! Supports serialization, deserialization, MessagePack, streams, filtering, and more. Fully tested and documented. +category=Data Processing +url=https://arduinojson.org/?utm_source=meta&utm_medium=library.properties +architectures=* +repository=https://github.com/bblanchon/ArduinoJson.git +license=MIT diff --git a/lib/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp b/lib/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp index bc4a226da..d2daf97ad 100644 --- a/lib/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +++ b/lib/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp @@ -65,7 +65,7 @@ class JsonDocument : public detail::VariantOperators { } // Reduces the capacity of the memory pool to match the current usage. - // https://arduinojson.org/v7/api/JsonDocument/shrinktofit/ + // https://arduinojson.org/v7/api/jsondocument/shrinktofit/ void shrinkToFit() { resources_.shrinkToFit(); } diff --git a/lib/ArduinoJson/src/ArduinoJson/Memory/VariantPoolList.hpp b/lib/ArduinoJson/src/ArduinoJson/Memory/VariantPoolList.hpp index 49a05d3b8..8ee5cef68 100644 --- a/lib/ArduinoJson/src/ArduinoJson/Memory/VariantPoolList.hpp +++ b/lib/ArduinoJson/src/ArduinoJson/Memory/VariantPoolList.hpp @@ -103,6 +103,7 @@ class VariantPoolList { for (PoolCount i = 0; i < count_; i++) pools_[i].destroy(allocator); count_ = 0; + freeList_ = NULL_SLOT; if (pools_ != preallocatedPools_) { allocator->deallocate(pools_); pools_ = preallocatedPools_; diff --git a/lib/ArduinoJson/src/ArduinoJson/version.hpp b/lib/ArduinoJson/src/ArduinoJson/version.hpp index f96ced9c6..e41890e9f 100644 --- a/lib/ArduinoJson/src/ArduinoJson/version.hpp +++ b/lib/ArduinoJson/src/ArduinoJson/version.hpp @@ -4,8 +4,8 @@ #pragma once -#define ARDUINOJSON_VERSION "7.0.1" +#define ARDUINOJSON_VERSION "7.0.2" #define ARDUINOJSON_VERSION_MAJOR 7 #define ARDUINOJSON_VERSION_MINOR 0 -#define ARDUINOJSON_VERSION_REVISION 1 -#define ARDUINOJSON_VERSION_MACRO V701 +#define ARDUINOJSON_VERSION_REVISION 2 +#define ARDUINOJSON_VERSION_MACRO V702