Commit Graph

507 Commits

Author SHA1 Message Date
Benoit Blanchon
407fc2cd45 Drop support for C++98/C++03 (closes #1820) 2023-02-10 17:02:52 +01:00
Benoit Blanchon
b33966c755 Set version to 6.20.1 2023-02-08 16:42:04 +01:00
Benoit Blanchon
b350a96643 Remove explicit exclusion of as<char*>() and as<char>() (#1860)
If you try to call them, you'll now get the same error message as any unsupported type.
You could also add a custom converter for `char*` and `char`.
2023-01-18 22:10:37 +01:00
Benoit Blanchon
5094b84a46 Set version to 6.20.0 2022-12-26 17:35:54 +01:00
Benoit Blanchon
191fc5dff4 Remove support for naked char (was deprecated since 6.18.0) 2022-12-26 11:02:34 +01:00
Benoit Blanchon
de725e0a4e Add documentation to most public symbols 2022-12-21 19:20:51 +01:00
Benoit Blanchon
d602232b9f Update change log 2022-12-19 14:41:53 +01:00
Benoit Blanchon
0f85a55cac Implement VariantRefBase with a CRTP 2022-12-05 21:00:24 +01:00
Benoit Blanchon
92d6bae25c Remove ArrayIterator::internal() and ObjectIterator::internal() 2022-10-14 18:11:55 +02:00
Benoit Blanchon
cf4436e581 Extract VariantProxy from ElementProxy and MemberProxy 2022-08-30 10:25:03 +02:00
Benoit Blanchon
62e83133cd Remove JsonDocument::data() and JsonDocument::memoryPool() 2022-08-09 10:38:36 +02:00
Benoit Blanchon
1d21027e2a Fix lax parsing of true, false, and null (fixes #1781) 2022-08-06 09:15:07 +02:00
Benoit Blanchon
5705247e5f Fix replacement for getOrAddElement() and getOrAddMember() 2022-08-04 10:47:02 +02:00
Benoit Blanchon
c5838a876b Remove getElement(), getOrAddElement(), getMember(), and getOrAddMember() 2022-07-07 14:32:43 +02:00
Benoit Blanchon
758580bfb6 Rename addElement() to add() 2022-07-07 14:32:43 +02:00
Benoit Blanchon
cd8373ad32 Change link() to shallowCopy() (issue #1343)
Instead of storing a pointer, the function copies the `VariantData`.

Benefits:
* smaller code
* no impact on programs that don't use this feature

Drawbacks:
* changes to the original variant are not always reflected on the copy
* modifying the original from the shallow copy leads to UB
2022-07-05 17:07:43 +02:00
Benoit Blanchon
5b06b1564e Remove undocumented accept() functions 2022-07-03 17:38:03 +02:00
Benoit Blanchon
e2bb2cec7b Fix comparison operators for JsonObject and JsonObjectConst 2022-06-10 11:14:59 +02:00
Benoit Blanchon
ff4e837df5 Fix comparison operators for JsonArray and JsonArrayConst 2022-06-09 21:06:32 +02:00
Benoit Blanchon
3d6c328a4f Add JsonVariant::link() (resolves #1343) 2022-04-27 15:08:13 +02:00
Benoit Blanchon
ccfbb5fd1d Fix 9.22337e+18 outside range of representable values of type 'long' 2022-04-07 20:59:20 +02:00
Benoit Blanchon
67b6797b6d Set version to 6.19.4 2022-04-05 10:53:11 +02:00
Benoit Blanchon
8d9504239b Fix comparisons operators with const JsonDocument& 2022-04-05 10:12:17 +02:00
Benoit Blanchon
bf5d0c790c Add implicit conversion from JsonDocument to JsonVariant 2022-03-23 17:17:35 +01:00
Benoit Blanchon
3dc67c5663 Add memoryUsage() to ElementProxy and MemberProxy (fixes #1730) 2022-03-19 12:11:40 +01:00
Benoit Blanchon
7abf875071 Set version to 6.19.3 2022-03-08 17:24:14 +01:00
Benoit Blanchon
e3e375f5cd MessagePack: serialize round floats as integers (fixes #1718) 2022-02-28 19:38:26 +01:00
Benoit Blanchon
89ed54362b Fix -Wsign-conversion on GCC 8 (fixes #1715) 2022-02-25 10:28:42 +01:00
Benoit Blanchon
f831ed395d Fix JsonString operator == and != for non-zero-terminated string 2022-02-17 17:33:16 +01:00
Benoit Blanchon
a880614a75 Fix call of overloaded 'String(const char*, int)' is ambiguous 2022-02-17 17:33:16 +01:00
Benoit Blanchon
ef8379df1b Set version to 6.19.2 2022-02-14 09:06:06 +01:00
Benoit Blanchon
702f8c2e2f Fix cannot convert 'pgm_p' to 'const void*' (fixes #1707) 2022-02-06 11:14:23 +01:00
Benoit Blanchon
6ea2815341 Set version to 6.19.1 2022-01-14 08:49:57 +01:00
Benoit Blanchon
21b2c76524 Fix filter not working in zero-copy mode (fixes #1697) 2022-01-13 20:25:49 +01:00
Benoit Blanchon
ee12155617 Fix crash when adding an object member in a too small JsonDocument 2022-01-13 11:52:45 +01:00
Benoit Blanchon
4b4c68df5f Changelog: remove empty line 2022-01-13 11:52:45 +01:00
Benoit Blanchon
9693fd2d74 Set version to 6.19.0 2022-01-08 16:21:29 +01:00
Benoit Blanchon
67fc2d9897 Assume PROGMEM is available as soon as ARDUINO is defined (#1693) 2021-12-31 11:00:50 +01:00
Paulo Cabral Sanz
ec7ffa20f2 Avoid Arduino.h when all its features are disabled (fixes #1692) 2021-12-27 13:16:24 +01:00
Benoit Blanchon
ada1f2a894 Add support for char[][] in copyArray() 2021-12-20 17:51:44 +01:00
Benoit Blanchon
184a7c4fbd Add support for arbitrary array rank in copyArray() 2021-12-20 17:51:27 +01:00
Benoit Blanchon
ca073fda46 Remove version 5 from change log 2021-12-16 14:56:28 +01:00
Benoit Blanchon
0f529a3587 Renamed undocumented function isUndefined() to isUnbound() 2021-12-16 14:55:26 +01:00
Benoit Blanchon
3166356484 Test capacity after calling BasicJsonDocument's copy assignment 2021-12-16 14:28:30 +01:00
Benoit Blanchon
abdd9d81db Reorder lines in changelog 2021-12-14 10:42:01 +01:00
Benoit Blanchon
3bf47761c8 Fix return type of StaticJsonDocument::operator= 2021-12-14 10:41:25 +01:00
Benoit Blanchon
be70f6ddd7 Support NUL inside string values (issue #1646) 2021-12-07 16:08:44 +01:00
Benoit Blanchon
b06bbd9d2a Fix inconsistent pool size in BasicJsonDocument's copy constructor 2021-11-23 10:49:35 +01:00
Benoit Blanchon
2df1bc7d4f Fix call of overloaded 'swap(...)' is ambiguous (fixes #1678) 2021-11-23 10:47:31 +01:00
Benoit Blanchon
599e927590 Fix JsonVariant::memoryUsage() for raw strings 2021-11-12 16:55:41 +01:00