J. Nick Koston and J. Nick Koston
99682f15b7
[core] Extract set_status_flag_ helper to deduplicate status_set methods
...
The check-and-set pattern for status LED flags was duplicated across
all status_set_warning and status_set_error overloads. Extract a
set_status_flag_ helper that sets the flag on both the component
and the app, returning whether the flag was newly set.
Co-Authored-By: J. Nick Koston <nick@koston.org >
2026-02-28 12:04:03 -10:00
J. Nick Koston
757e8d90e6
[core] Inline set_component_state_ and use it in Application ( #14369 )
2026-02-28 07:20:34 -10:00
J. Nick Koston
52af4bced0
[component] Devirtualize call_dump_config ( #14355 )
2026-02-27 10:01:23 -10:00
J. Nick Koston
ede2da2fbc
[core] Conditionally compile get_loop_priority with USE_LOOP_PRIORITY ( #14210 )
2026-02-23 10:57:23 +13:00
J. Nick Koston and Claude Opus 4.6
f7459670d3
[core] Optimize WarnIfComponentBlockingGuard::finish() hot path ( #14040 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 16:10:22 +00:00
J. Nick Koston
b0085e21f7
[core] Devirtualize call_loop() and mark_failed() in Component ( #14083 )
2026-02-19 08:40:23 -06:00
J. Nick Koston
be853afc24
[core] Conditionally compile setup_priority override infrastructure ( #14057 )
2026-02-18 20:57:56 -06:00
J. Nick Koston
09fc028895
[core] Remove dead global_state variable ( #14060 )
2026-02-18 15:16:26 -06:00
J. Nick Koston
fb89900c64
[core] Make setup_priority and component state constants constexpr ( #14041 )
2026-02-18 08:22:36 -06:00
J. Nick Koston and Jonathan Swoboda
e0712cc53b
[scheduler] Make core timer ID collisions impossible with type-safe internal IDs ( #13882 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-02-09 13:16:22 -06:00
J. Nick Koston
2383b6b8b4
[core] Deprecate set_retry, cancel_retry, and RetryResult ( #13845 )
2026-02-09 12:05:32 -06:00
J. Nick Koston
1119003eb5
[core] Add missing uint32_t ID overloads for defer() and cancel_defer() ( #13720 )
2026-02-02 22:22:11 +01:00
J. Nick Koston
258b73d7f6
[core] Eliminate global constructor overhead for component vectors ( #13386 )
2026-01-20 17:51:06 -10:00
J. Nick Koston
d5f557ad1c
[scheduler] Eliminate heap allocations for std::string names and add uint32_t ID API ( #13200 )
2026-01-14 09:15:31 -05:00
J. Nick Koston
6685fa1da9
[core] Fix startup delay from setup timing logs when console connected ( #12832 )
2026-01-03 12:32:10 -10:00
J. Nick Koston
861ed8dd41
[scheduler] Avoid std::string allocation in RetryArgs ( #12311 )
2025-12-09 09:27:12 -05:00
J. Nick Koston
065c1bfc6a
[core] Fix status_momentary API misuse and optimize parameter type ( #12216 )
2025-12-01 08:34:07 -06:00
J. Nick Koston
97ba67f4ee
[core] Deprecate unsafe const char* APIs in mark_failed() and status_set_error(), add LogString* overloads ( #12021 )
2025-11-24 13:45:56 -06:00
Clyde Stubbs
19e275dc02
[component] Add is_idle method and condition ( #11651 )
2025-11-03 11:33:44 +11:00
J. Nick Koston
84c3cf5f17
[core] Replace std::pair with purpose-built named structs for component metadata ( #10984 )
2025-10-06 09:38:58 +13:00
J. Nick Koston
8d90f13e97
[core] Store component source strings in flash on ESP8266 (breaking change) ( #10621 )
2025-09-07 20:10:00 -05:00
J. Nick Koston
0c737fc4df
[core] Convert LOG_UPDATE_INTERVAL macro to function to reduce flash usage ( #10636 )
2025-09-08 09:09:15 +12:00
J. Nick Koston
c33bb3a8a9
[esp8266] Store component warning strings in flash to reduce RAM usage ( #10623 )
2025-09-06 23:56:45 -05:00
Clyde Stubbs
1f0c606be4
[component] Revert setup messages to LOG_CONFIG level ( #9956 )
2025-07-29 07:32:45 +00:00
J. Nick Koston
6ed9214465
[core] Use nullptr defaults in status_set_error/warning to reduce flash usage ( #9931 )
2025-07-28 15:20:30 +12:00
Clyde Stubbs
0e2520e4c0
[core] Fix format error in log printf ( #9911 )
2025-07-26 08:02:02 -10:00
J. Nick Koston
b7ce8c116b
[core] Centralize component setup logging to reduce flash usage ( #9885 )
2025-07-25 19:27:03 +00:00
J. Nick Koston
544cf9b9c0
[core] Fix component state documentation and add state helper method ( #9824 )
2025-07-24 15:22:42 +12:00
Clyde Stubbs
f9534fbd5d
[interval] Fix startup behaviour ( #9793 )
2025-07-24 08:03:36 +10:00
J. Nick Koston
158a3b2835
[scheduler] Fix cancellation of timers with empty string names ( #9641 )
2025-07-18 14:20:35 +12:00
J. Nick Koston and Keith Burzinski
e012fd5b32
Add runtime_stats component for performance debugging and analysis ( #9386 )
...
Co-authored-by: Keith Burzinski <kbx81x@gmail.com >
2025-07-16 13:13:51 +12:00
Jesse Hills and J. Nick Koston
d3342d6a1a
[component] Fix `is_ready` flag when loop disabled ( #9501 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2025-07-15 07:20:18 +00:00
J. Nick Koston
f5c8595a46
Follow logging best practices by removing redundant component prefix ( #9481 )
2025-07-14 00:41:49 +00:00
J. Nick Koston
e2de6ee29d
Reduce core RAM usage by 40 bytes with static initialization optimizations ( #9340 )
2025-07-08 08:28:14 +12:00
J. Nick Koston
86e7013f40
Add const char overload for Component::defer() ( #9324 )
2025-07-04 21:52:12 -05:00
J. Nick Koston
03566c34ed
Reduce Component memory usage by 40% (8 bytes per component) ( #9278 )
2025-07-02 13:43:40 +12:00
J. Nick Koston and Copilot
140ca070a2
Optimize scheduler string storage to eliminate heap allocations ( #9251 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-06-30 15:40:36 +12:00
J. Nick Koston
0b1b8f05e1
Reduce loop enable/disable log spam by using very verbose level ( #9267 )
2025-06-30 11:49:31 +12:00
J. Nick Koston
8ba22183b9
Add enable_loop_soon_any_context() for thread and ISR-safe loop enabling ( #9127 )
2025-06-19 13:30:41 +12:00
J. Nick Koston
2e534ce41e
Reduce CPU overhead by allowing components to disable their loop() ( #9089 )
2025-06-18 21:49:25 +12:00
J. Nick Koston and Jesse Hills
c17a3b6fcc
Reduce Component memory usage by 20 bytes per component ( #9080 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-06-16 09:34:37 +12:00
J. Nick Koston
28d11553e0
Reduce Component blocking threshold memory usage by 2 bytes per component ( #9081 )
2025-06-16 09:33:38 +12:00
J. Nick Koston
374c33e8dc
Optimize Component and Application state storage from uint32_t to uint8_t ( #9082 )
2025-06-15 14:48:53 +12:00
J. Nick Koston
574aabdede
Reduce number of calls to fetch time in the main loop ( #8804 )
2025-05-19 07:48:57 +12:00
Stanislav Meduna
6de6a0c82c
Only warn if the component blocked for a longer time than the last time ( #8064 )
2025-05-01 11:57:01 +12:00
Clyde Stubbs
9637ef35bd
[component] Show error message for failed component ( #8478 )
2025-04-07 09:26:34 +00:00
Keith Burzinski
12cdeca48a
[various] clang-tidy fixes for #7822 ( #7874 )
2024-11-28 11:23:20 +13:00
Jesse Hills
63fc8ab10a
[core] Const-ify some Component fields ( #6831 )
2024-05-30 02:59:15 -05:00
Clyde Stubbs
97ff87b718
Remove misleading tag/line in messages ( #6495 )
2024-04-08 16:13:12 +12:00
Clyde Stubbs
2c67d83976
Include "Failed" status in config log. ( #6482 )
2024-04-04 23:21:56 -05:00