J. Nick Koston
7976c5e06c
Merge branch 'api_ha_services' into memory_api
2025-07-25 21:39:38 -10:00
J. Nick Koston
1cf5822bf5
Merge remote-tracking branch 'upstream/dev' into api_ha_services
2025-07-25 21:39:09 -10:00
J. Nick Koston
a9d6ece752
[api] Add conditional compilation for Home Assistant state subscriptions ( #9898 )
2025-07-26 01:28:44 -05:00
J. Nick Koston
4da9abe3fa
Merge branch 'api_ha_services' into integration
2025-07-25 15:37:06 -10:00
J. Nick Koston
95b8321284
[api] Add conditional compilation for Home Assistant service subscriptions
2025-07-25 15:26:15 -10:00
J. Nick Koston
9c4fc5d354
fixes
2025-07-25 11:59:13 -10:00
J. Nick Koston
0420bb3862
[api] Add conditional compilation for Home Assistant state subscriptions
2025-07-25 11:47:52 -10:00
J. Nick Koston
a45a45c688
[api] Split frame helper implementation into protocol-specific files ( #9746 )
2025-07-21 13:10:08 +12:00
J. Nick Koston
dd5ba5a90c
Conditionally compile API user services to save 4.3KB flash (follow-up to #9262 ) ( #9451 )
2025-07-11 19:08:03 -10:00
J. Nick Koston
440de12e3f
Don't compile unnecessary platform files (e.g. ESP8266 files on ESP32) ( #9354 )
2025-07-08 09:04:41 +12:00
J. Nick Koston
5b55e205ef
Save flash and RAM by conditionally compiling unused API password code ( #9297 )
2025-07-03 09:42:08 +12:00
J. Nick Koston
aaa7117ec9
Update libsodium to 1.0.20 ( #9240 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-06-30 20:47:04 +12:00
J. Nick Koston
6a354d7c94
Reduce API component memory usage with conditional compilation ( #9262 )
2025-06-30 15:33:35 +12:00
J. Nick Koston
24bbfcdce7
Reduce API memory footprint through bitfield consolidation and type sizing ( #9252 )
2025-06-30 11:42:57 +12:00
J. Nick Koston
2ed5611a08
Replace API deferred queue with efficient message batching system ( #9012 )
2025-06-11 11:49:15 +12:00
Keith Burzinski
2fd5f9ac58
[api] Allow noise encryption key to be set at runtime ( #7296 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2025-04-17 13:15:25 +12:00
Clyde Stubbs
ecd3d838c9
[api] Bump noise-c library version ( #7288 )
2024-08-15 15:35:03 +12:00
Jesse Hills
cb9906b921
[api] `homeassistant.action
replaces
homeassistant.service
` ( #7171 )
2024-08-01 22:38:36 +12:00
Jesse Hills
193bac94f4
Add on_client_connected and disconnected to voice assistant ( #5629 )
2023-10-30 17:16:42 -05:00
Jesse Hills
27b593ba85
Add connection triggers to api ( #5628 )
2023-10-29 21:02:49 -05:00
Jesse Hills
f81c556b63
Update components "if x in config" ( #5181 )
2023-08-02 16:25:26 +12:00
Otto Winter
c08b21b7cd
Bump noise-c from 0.1.3 to 0.1.4 ( #2602 )
2021-10-22 12:12:07 +02:00
Otto Winter
1c58b17235
API encryption switch to libsodium backend ( #2456 )
2021-10-06 22:36:12 +02:00
Otto Winter
e5051eefbc
API encryption ( #2254 )
2021-09-09 09:22:47 +12:00
Otto Winter
2790d72bff
Convert API to use sockets ( #2253 )
...
* Socket component
* Lint
* Lint
* Fix esp8266 missing INADDR_ANY
* API convert to sockets and frame helper
* Fix compile error
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2021-09-08 12:52:57 +02:00
Otto Winter
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
Jesse Hills
703e9673c2
Adds new homeassistant.tag_scanned action ( #1281 )
2020-09-16 12:29:20 +02:00
Otto Winter
4996967c79
Add CODEOWNERS mechanism ( #1199 )
2020-07-25 15:57:18 +02:00
Otto Winter
056c72d50d
Drop Python 2 Support ( #793 )
...
* Remove Python 2 support
* Remove u-strings
* Remove docker symlinks
* Remove from travis
* Update requirements
* Upgrade flake8/pylint
* Fixes
* Manual
* Run pyupgrade
* Lint
* Remove base_int
* Fix
* Update platformio_api.py
* Update component.cpp
2019-12-07 18:28:55 +01:00
Otto Winter
5c56f15c67
Fix homeassistant.service schema lambda ( #833 )
...
* Fix homeassistant.service schema lambda
Fixes https://github.com/esphome/issues/issues/820
* Improve
* Fix
2019-11-05 22:27:35 +01:00
Otto Winter
8dee5c5fe8
Adjust default reboot timeouts
2019-06-30 09:12:48 +02:00
Otto Winter
2712c44004
Update dependencies ( #653 )
...
* Update pio dependencies
* Platformio 4
* Fixes
* Update platformio_api.py
* Lint
2019-06-28 11:29:37 +02:00
Otto Winter
369d175694
Create Protobuf Plugin for automatically generating native API stubs ( #633 )
...
* Create Protobuf Plugin for automatically generating native API stubs
* Format
* Delete api.proto
* Cleanup, use no_delay conditionally
* Updates
* Update
* Lint
* Lint
* Fixes
* Camera
* CustomAPIDevice
* Fix negative VarInt, Add User-defined services arrays
* Home Assistant Event
* Fixes
* Update custom_api_device.h
2019-06-18 19:31:22 +02:00
Otto Winter
953d7f6193
Check lambdas for return statement ( #539 )
2019-05-10 22:13:17 +02:00
Otto Winter
53c182ad37
Fix native API services not registered
...
Fixes https://github.com/esphome/issues/issues/290
2019-05-08 10:37:13 +02:00
Otto Winter
8e75980ebd
Cleanup dashboard JS ( #491 )
...
* Cleanup dashboard JS
* Add vscode
* Save start_mark/end_mark
* Updates
* Updates
* Remove need for cv.nameable
It's a bit hacky but removes so much bloat from integrations
* Add enum helper
* Document APIs, and Improvements
* Fixes
* Fixes
* Update PULL_REQUEST_TEMPLATE.md
* Updates
* Updates
* Updates
2019-04-22 21:56:30 +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