Benoit Blanchon
1e0bbd518c
Add a pool dedicated to 8-byte values (double/int64_t/uint64_t)
...
This new pool replaced the "extension" slot where a secondary variant slot was used to store 8-byte values.
2025-07-10 19:17:13 +02:00
Benoit Blanchon
cc077c1b63
Store static strings in a dedicated pool
...
Because a slot id is smaller than a pointer, this change will ultimately allow reducing the slot size.
2025-07-10 19:17:13 +02:00
Benoit Blanchon
509807d3c2
Remove CollectionIterator::nextId_
2025-07-10 19:16:47 +02:00
Benoit Blanchon
c07744dc0d
CI: upgrade Windows runner
2025-06-26 20:47:57 +02:00
Benoit Blanchon
733bc4ee82
Set version to 7.4.2
v7.4.2
2025-06-20 09:37:14 +02:00
Benoit Blanchon
9aa77994b4
Remove sponsor Programming Electronics Academy
2025-06-20 08:43:48 +02:00
Benoit Blanchon
f051f8328d
Undef true and false macros
...
Replacing `true` with `1` changes `JsonString("ABC", true)` into `JsonString("ABC", 1)`, so all static strings had a length of 1.
This is a workaround for arduino/ArduinoCore-sam#50
Fixes #2181
2025-06-19 13:59:15 +02:00
Benoit Blanchon
411424b74e
CI: upgrade clang-tidy
2025-05-20 20:55:01 +02:00
Benoit Blanchon
5e5c287978
CI: upgrade Clang versions
2025-05-20 18:24:46 +02:00
Benoit Blanchon
377cf63075
CI: upgrade runner to ubuntu-22.04
2025-05-20 14:48:42 +02:00
Benoit Blanchon
3252013509
Set version to 7.4.1
v7.4.1
2025-04-11 15:43:42 +02:00
Benoit Blanchon
deab127a2f
Fix crash with tiny Flash strings (issue #2170 )
2025-04-11 10:23:43 +02:00
Benoit Blanchon
96281de682
Set version to 7.4.0
v7.4.0
2025-04-09 14:49:13 +02:00
Benoit Blanchon
f0e84e4933
Fix support for const char[]
...
Fixes #2166
2025-04-09 08:55:09 +02:00
Benoit Blanchon
91397f9f06
Optimize storage of tiny strings (up to 3 characters)
2025-04-09 08:55:08 +02:00
Benoit Blanchon
7f75985e47
Change StringBuffer::save() to take a VariantData*
2025-02-28 10:05:50 +01:00
Benoit Blanchon
05b68fc7cc
Change StringBuilder::save() to take a VariantData*
2025-02-28 09:59:46 +01:00
Benoit Blanchon
b06cee8f4d
Remove the overload of setString() for StringNode
2025-02-28 09:23:56 +01:00
Benoit Blanchon
e03d8ae885
Set version to 7.3.1
v7.3.1
2025-02-27 19:35:14 +01:00
Benoit Blanchon
cb1dcfa5e4
Reduce code size
2025-02-27 11:13:50 +01:00
Benoit Blanchon
67dd3120e6
Fix conversion from static string to number
2025-02-27 11:01:51 +01:00
Benoit Blanchon
9f3cf04415
Remove useless null check
2025-02-24 16:40:42 +01:00
Benoit Blanchon
01e49b33b7
Update copyright year
2025-02-24 15:18:26 +01:00
Benoit Blanchon
8f7e793f37
Set version to 7.3.0
v7.3.0
2024-12-29 17:15:57 +01:00
Benoit Blanchon
254fa5712a
Update the release scripts to include the breaking changes section
2024-12-29 16:38:41 +01:00
Benoit Blanchon
de05814294
Move public facing SFINAEs to template declarations
2024-12-23 17:44:52 +01:00
Benoit Blanchon
e33e78d202
Rename undocumented JsonString::isLinked() to isStatic()
2024-11-26 14:32:50 +01:00
Benoit Blanchon
ed5f890d28
Replace JsonString::Ownership with bool
2024-11-26 14:32:36 +01:00
Benoit Blanchon
8931651317
JsonString: change default ownership to Copied
2024-11-26 10:10:52 +01:00
Benoit Blanchon
c078957282
Remove unnecessary universal references
2024-11-25 12:25:59 +01:00
Benoit Blanchon
cf084ae6b4
JsonString: move adapter class in the same file
2024-11-25 12:25:59 +01:00
Benoit Blanchon
f02fcc96a2
JsonArray: remove redundant tests
2024-11-25 12:25:59 +01:00
Benoit Blanchon
594dc707cb
Change string copy policy: only string literal are stored by pointer
2024-11-25 12:25:59 +01:00
Benoit Blanchon
5f8e3c0f0f
Polyfills: test remove_cv
2024-11-25 12:25:59 +01:00
Benoit Blanchon
afc0a29c2c
Polyfills: add decay
2024-11-25 12:25:59 +01:00
Benoit Blanchon
a256ec7fff
RamString: use a bitfield to reduce size
2024-11-25 12:25:59 +01:00
Benoit Blanchon
019e8326b7
Implement JsonString from RamString
2024-11-25 11:13:39 +01:00
Benoit Blanchon
bee1095042
Merge all RAM string adapters
2024-11-25 10:46:35 +01:00
Benoit Blanchon
de59dce527
Fix typo in comments
2024-11-25 10:46:34 +01:00
Benoit Blanchon
57a9c50b38
Make ElementProxy and MemberProxy non-copyable
2024-11-25 10:46:21 +01:00
Benoit Blanchon
5e7653b36a
Store adapted string in MemberProxy
2024-11-17 15:46:46 +01:00
Benoit Blanchon
8110058729
Fix support for NUL characters in deserializeJson()
2024-11-17 15:40:21 +01:00
Benoit Blanchon
7946ebe1a3
Wandbox: compile with gcc-head
2024-11-15 09:13:00 +01:00
Benoit Blanchon
f9fe8557f1
Set version to 7.2.1
v7.2.1
2024-11-15 09:05:29 +01:00
Benoit Blanchon
e007d71b4f
Fix operator[](variant) ignoring NUL characters
2024-11-14 14:56:47 +01:00
Benoit Blanchon
67a512a923
Clean up tests of adaptString()
2024-11-14 14:22:51 +01:00
Benoit Blanchon
9cf4f3871d
Remove unused overload of stringCompare() and stringEquals()
2024-11-14 14:17:13 +01:00
Benoit Blanchon
31253dbe13
Add more tests with VLAs
2024-11-08 09:37:49 +01:00
Benoit Blanchon
1110d62128
Fix VLA support in JsonDocument::set()
2024-11-08 09:37:23 +01:00
Benoit Blanchon
c6c0649d70
Replace typedef with using
2024-10-23 15:54:08 +02:00