Jesse Hills and J. Nick Koston
de1361ac0e
[core] Add type annotations to component Python ( #18697 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-08-23 20:50:27 -05:00
J. Nick Koston
44c54b3a75
[json] Bump ArduinoJson to 7.4.3 ( #17126 )
2026-06-21 23:09:54 +00:00
Jonathan Swoboda
cbe192df49
[clang-tidy] Concatenate nested namespaces (3/7: components i-m) ( #16297 )
2026-05-07 19:00:17 -04:00
Jonathan Swoboda
a62e3fe4fc
[json] NOLINT StackAddressEscape false positive in parse_json ( #16091 )
2026-04-28 21:35:40 +00:00
J. Nick Koston
312dea7ddb
[json] Fix heap buffer overflow in SerializationBuffer truncation path ( #15566 )
2026-04-08 19:46:16 +00:00
J. Nick Koston
4aa8f57d36
[json] Add SerializationBuffer for stack-first JSON serialization ( #13625 )
2026-02-19 14:08:44 -06:00
J. Nick Koston
0c4827d348
[json, core] Remove stored RAMAllocator, make constructors constexpr ( #14000 )
2026-02-16 08:09:53 -06:00
J. Nick Koston
c03abcdb86
[http_request] Reduce heap allocations in update check by parsing JSON directly from buffer ( #13588 )
2026-02-10 13:53:53 -06:00
Jonathan Swoboda and Claude Opus 4.5
acdc7bd892
[json] Use ESP-IDF component registry for ArduinoJson on ESP32 ( #13280 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-20 22:51:54 -05:00
J. Nick Koston
6abc2efd96
[json] Fix PSRAM allocator dangling pointer crash ( #11165 )
2025-10-10 21:18:57 +00:00
Jesse Hills and J. Nick Koston
697cab45dd
[json] Add parse_json overload for const char * ( #11039 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
2025-10-06 11:19:31 -05:00
J. Nick Koston
2eea674c04
[json] Fix missing defines.h include causing PSRAM allocator to be unused ( #11008 )
2025-10-03 23:52:40 -05:00
Jesse Hills
0cc03dfe32
[json] Parsing json without a lambda ( #10838 )
2025-09-25 16:35:19 +12:00
J. Nick Koston
c64d385fa6
[web_server] Reduce flash usage by eliminating lambda overhead in JSON generation ( #10749 )
2025-09-22 09:06:59 +12:00
J. Nick Koston
5fac67d195
[json] Only compile SpiRamAllocator when PSRAM is enabled ( #10728 )
2025-09-15 11:50:11 -05:00
J. Nick Koston
d1276dc6df
[core] Replace magic coroutine priority numbers with self-documenting CoroPriority enum ( #10518 )
2025-09-02 21:41:50 +00:00
Jesse Hills
49a46883ed
[core] Update core component codeowners to `@esphome/core` ( #10082 )
2025-08-05 06:24:24 +00:00
9ae45ba8aa
[json] Bump ArduinoJson library to 7.4.2 ( #8857 )
...
Co-authored-by: J. Nick Koston <nick@koston.org >
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-07-15 14:11:10 +12:00
J. Nick Koston and Keith Burzinski
fd72a64053
Redundant Log Messages Cleanup ( #8944 )
...
Co-authored-by: Keith Burzinski <kbx81x@gmail.com >
2025-05-29 09:36:23 +00:00
Clyde Stubbs
92a8ebe1f8
[json] use correct formatting ( #8039 )
2025-01-13 15:56:42 +13:00
Clyde Stubbs
b33b4481ea
[helpers] Provide calls to get free heap and largest available block. ( #7978 )
2024-12-19 16:40:08 +13:00
Jesse Hills
95e45dc12c
Allow parse_json to return a boolean result ( #6884 )
...
* Allow parse_json to return a boolean result
* Remove pass variable
2024-06-10 22:40:56 +00:00
a9630ac847
Support for LibreTiny platform (RTL8710, BK7231 & other modules) ( #3509 )
...
Co-authored-by: Kuba Szczodrzyński <kuba@szczodrzynski.pl >
Co-authored-by: Sam Neirinck <git@samneirinck.com >
Co-authored-by: David Buezas <dbuezas@users.noreply.github.com >
Co-authored-by: Stroe Andrei Catalin <catalin2402@gmail.com >
Co-authored-by: Sam Neirinck <github@samneirinck.be >
Co-authored-by: Péter Sárközi <xmisterhu@gmail.com >
Co-authored-by: Hajo Noerenberg <hn@users.noreply.github.com >
2023-09-05 10:16:08 +12:00
Oxan van Leeuwen and Jesse Hills
14e38f0469
Upgrade clang-format to v13 ( #4535 )
...
* Upgrade clang-format to v13
* Apply clang-format-13 formatting changes
* Format
* Format bme_680
---------
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2023-03-20 03:38:41 +00:00
Tom Keller and Jesse Hills
74556b28a8
fix: json compilation error on rp2040 ( #4273 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2023-01-10 17:40:04 +13:00
[pʲɵs]
fea05e9d33
Increase JSON buffer size on overflow ( #3475 )
2022-05-15 19:53:43 +12:00
Janez Troha
93b628d9a8
Allocate smaller amount of buffer for JSON ( #3384 )
2022-04-14 13:42:43 +12:00
Jesse Hills
6b9371d105
Actually increase request memory for json parsing ( #3331 )
2022-03-28 17:04:25 +13:00
Jesse Hills
1496bc1b07
Reserve less memory for json ( #3289 )
2022-03-23 09:46:25 +13:00
Jesse Hills
dc6eff83ea
Only get free memory size from internal ( #3259 )
2022-03-02 16:44:35 +13:00
Jesse Hills
140db85d21
Add LONG LONG flag for arduinojson ( #3212 )
2022-02-18 10:11:22 +13:00
Martin and Oxan van Leeuwen
407661d56b
Fix compile error for idf projects with ArduinoJson 6 ( #2979 )
...
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl >
2022-01-03 18:19:01 +01:00
Jesse Hills
33f17f75a0
Upgrade ArduinoJson to 6.18.5 and migrate code ( #2844 )
2022-01-01 22:31:43 +13:00
Otto Winter and Jesse Hills
ac0d921413
ESP-IDF support and generic target platforms ( #2303 )
...
* Socket refactor and SSL
* esp-idf temp
* Fixes
* Echo component and noise
* Add noise API transport support
* Updates
* ESP-IDF
* Complete
* Fixes
* Fixes
* Versions update
* New i2c APIs
* Complete i2c refactor
* SPI migration
* Revert ESP Preferences migration, too complex for now
* OTA support
* Remove echo again
* Remove ssl again
* GPIOFlags updates
* Rename esphal and ICACHE_RAM_ATTR
* Make ESP32 arduino compilable again
* Fix GPIO flags
* Complete pin registry refactor and fixes
* Fixes to make test1 compile
* Remove sdkconfig file
* Ignore sdkconfig file
* Fixes in reviewing
* Make test2 compile
* Make test4 compile
* Make test5 compile
* Run clang-format
* Fix lint errors
* Use esp-idf APIs instead of btStart
* Another round of fixes
* Start implementing ESP8266
* Make test3 compile
* Guard esp8266 code
* Lint
* Reformat
* Fixes
* Fixes v2
* more fixes
* ESP-IDF tidy target
* Convert ARDUINO_ARCH_ESPxx
* Update WiFiSignalSensor
* Update time ifdefs
* OTA needs millis from hal
* RestartSwitch needs delay from hal
* ESP-IDF Uart
* Fix OTA blank password
* Allow setting sdkconfig
* Fix idf partitions and allow setting sdkconfig from yaml
* Re-add read/write compat APIs and fix esp8266 uart
* Fix esp8266 store log strings in flash
* Fix ESP32 arduino preferences not initialized
* Update ifdefs
* Change how sdkconfig change is detected
* Add checks to ci-custom and fix them
* Run clang-format
* Add esp-idf clang-tidy target and fix errors
* Fixes from clang-tidy idf round 2
* Fixes from compiling tests with esp-idf
* Run clang-format
* Switch test5.yaml to esp-idf
* Implement ESP8266 Preferences
* Lint
* Re-do PIO package version selection a bit
* Fix arduinoespressif32 package version
* Fix unit tests
* Lint
* Lint fixes
* Fix readv/writev not defined
* Fix graphing component
* Re-add all old options from core/config.py
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-09-20 11:47:51 +02:00
Oxan van Leeuwen
c6dc8a11e2
Add namespace to all PlatformIO library references ( #2296 )
...
* Remove unnecessary duplication in platformio.ini
* Add namespace to all platformio library references
* Add cmake-build-* to gitignore
They're generated by the CLion add-on for each PlatformIO environment.
Listing them all separately seems nonsensical.
2021-09-15 19:01:31 +02:00
Otto Winter and Jesse Hills
a4867a00ea
Activate owning-memory clang-tidy check ( #1891 )
...
* Activate owning-memory clang-tidy check
* Lint
* Lint
* Fix issue with new NfcTag constructor
* Update pointers for number and select
* Add back the NOLINT to display buffer
* Fix merge
* DSMR fixes
* Nextion fixes
* Fix pipsolar
* Fix lwip socket
* Format
* Change socket fix
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-09-13 11:31:02 +02:00
Stefan Agner
501f88ca86
Avoid non-const globals and enable clang-tidy check ( #1892 )
2021-06-11 08:19:44 +12:00
aebad04c0b
Convert core components to async-def coroutine syntax ( #1658 )
...
Co-authored-by: Guillermo Ruffino <glm.net@gmail.com >
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-05-23 22:10:30 +02:00
Guillermo Ruffino
69879920eb
add-black ( #1593 )
...
* Add black
Update pre commit
Update pre commit
add empty line
* Format with black
2021-03-07 16:03:16 -03:00
Otto Winter
4996967c79
Add CODEOWNERS mechanism ( #1199 )
2020-07-25 15:57:18 +02:00
Otto Winter
766f6c045d
Updates
2019-04-24 23:49:02 +02:00
Otto Winter
6682c43dfa
🏗 Merge C++ into python codebase ( #504 )
...
## Description:
Move esphome-core codebase into esphome (and a bunch of other refactors). See https://github.com/esphome/feature-requests/issues/97
Yes this is a shit ton of work and no there's no way to automate it :( But it will be worth it 👍
Progress:
- Core support (file copy etc): 80%
- Base Abstractions (light, switch): ~50%
- Integrations: ~10%
- Working? Yes, (but only with ported components).
Other refactors:
- Moves all codegen related stuff into a single class: `esphome.codegen` (imported as `cg`)
- Rework coroutine syntax
- Move from `component/platform.py` to `domain/component.py` structure as with HA
- Move all defaults out of C++ and into config validation.
- Remove `make_...` helpers from Application class. Reason: Merge conflicts with every single new integration.
- Pointer Variables are stored globally instead of locally in setup(). Reason: stack size limit.
Future work:
- Rework const.py - Move all `CONF_...` into a conf class (usage `conf.UPDATE_INTERVAL` vs `CONF_UPDATE_INTERVAL`). Reason: Less convoluted import block
- Enable loading from `custom_components` folder.
**Related issue (if applicable):** https://github.com/esphome/feature-requests/issues/97
**Pull request in [esphome-docs](https://github.com/esphome/esphome-docs ) with documentation (if applicable):** esphome/esphome-docs#<esphome-docs PR number goes here>
## Checklist:
- [ ] The code change is tested and works locally.
- [ ] Tests have been added to verify that the new code works (under `tests/` folder).
If user exposed functionality or configuration variables are added/changed:
- [ ] Documentation added/updated in [esphomedocs](https://github.com/OttoWinter/esphomedocs ).
2019-04-17 12:06:00 +02:00