J. Nick Koston
a721574706
Hash the RAM fallback name directly and share the short string encoder
...
Only unnamed entities hash at runtime, and their fallback name is in RAM, so
configure_entity_ hashes it before wrapping and named entities keep the codegen
hash; fnv1_hash_object_id_P is no longer needed. On ESP8266 the short string
encoder uses the outlined flash safe copy for RAM strings too.
2026-10-08 18:32:39 -10:00
J. Nick Koston
13057b7ae3
Type the API progmem name field as ProgmemStringRef
...
Progmem string fields must take the short encode path, the outlined encode
helper takes a ProgmemStringRef, and the hasher test checks the Python value.
2026-10-08 18:22:29 -10:00
J. Nick Koston
b4289aee59
Add a flash safe fnv1_hash_object_id_P()
...
calc_object_id_() hashes the name in place instead of copying it into a
stack buffer first.
2026-10-08 18:11:36 -10:00
J. Nick Koston
f334b9ea11
[core] Decode base64 in a single pass ( #20123 )
2026-10-05 10:54:17 -05:00
J. Nick Koston
c51020dbaf
[core] Add RAMAllocator::make_unique for objects whose allocation may fail ( #19245 )
2026-09-14 09:56:50 +12:00
J. Nick Koston
4f0faac148
[core] Add FixedVector::try_init so callers can handle an exhausted heap ( #19253 )
2026-09-14 09:16:37 +12:00
J. Nick Koston
03147bc3b1
[core] Avoid double promotion in update interval and step formatting ( #18825 )
2026-08-28 15:12:50 -05:00
J. Nick Koston
16d0fa1165
[core] Add step_to_accuracy_decimals benchmarks ( #18826 )
2026-08-27 15:28:04 -05:00
J. Nick Koston
7362c01c67
[core] Replace base64 lookup tables with arithmetic mapping ( #18454 )
2026-08-17 16:14:06 -05:00
J. Nick Koston
699cf9690a
[core] Optimize value_accuracy_to_buf to avoid snprintf ( #15596 )
2026-04-22 16:31:34 +12:00
J. Nick Koston
2a530a4bf4
[core] Optimize format_hex_internal by splitting separator loop ( #15594 )
2026-04-14 07:48:33 -10:00