d20d613c1d
[substitutions] !include ${filename}, Substitutions in include filename paths (package refactor part 5) ( #12213 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-04-07 15:12:55 -10:00
Javier Peletier and J. Nick Koston
df4318505f
[substitutions] refactor substitute() as a pure function (package refactor part 3) ( #15031 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
2026-03-23 14:28:04 -10:00
bf6000ef3d
[substitutions] substitutions pass and !include redesign (package refactor part 2b) ( #14918 )
...
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
2026-03-23 12:50:28 -10:00
Javier Peletier
6d0527ff2a
[substitutions] fix jinja parsing strings that look like sets as sets ( #11611 )
2025-10-31 14:04:55 -05:00
51e080c2d3
[substitutions] fix #11077 Preserve ESPHomeDatabase (document metadata) in substitutions ( #11087 )
...
Co-authored-by: J. Nick Koston <nick+github@koston.org >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: J. Nick Koston <nick@koston.org >
2025-10-27 19:46:26 +00:00
Javier Peletier
a59b1494d8
[substitutions] Recursive substitutions and better jinja error handling and debug help ( #10806 )
2025-10-20 14:17:16 +13:00
J. Nick Koston and Copilot
f2e0a412db
[substitutions] Fix AttributeError when using packages with substitutions ( #11274 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-16 16:23:20 +13:00
Javier Peletier
fd3c05b42e
[substitutions] fix #10825 set evaluation error ( #10830 )
2025-10-01 14:33:56 +13:00
Javier Peletier
7629903afb
[substitutions] implement !literal ( #10785 )
2025-09-22 16:32:59 +12:00
Jesse Hills and Copilot
c14c4fb658
[substitutions] Add some safe built-in functions to jinja parsing ( #10178 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-11 16:12:54 -05:00
J. Nick Koston
ffebd30033
[ruff] Enable SIM rules and fix code simplification violations ( #9872 )
2025-07-25 18:26:08 +12:00
Javier Peletier
9e002cd7a3
[substitutions] Fix #7189 ( #9469 )
2025-07-14 09:58:52 +12:00
dependabot[bot] and J. Nick Koston
0138ef36cf
Bump ruff from 0.12.2 to 0.12.3 ( #9446 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org >
2025-07-12 04:01:54 +00:00
Javier Peletier
8c34b72b62
Jinja expressions in configs (Take #3 ) ( #8955 )
2025-07-01 14:57:00 +12:00
dependabot[bot]
4adda632bb
Bump ruff from 0.9.2 to 0.11.0 ( #8409 )
2025-03-20 09:51:23 -10:00
Jesse Hills
7c243dafb3
[core] Fix some extends cases ( #6748 )
2024-05-16 14:11:54 +12:00
Jesse Hills
a700ae481d
Fix command line substitutions without any yaml substitutions ( #6644 )
2024-04-29 07:33:52 +12:00
Joel Goguen
b3ed988119
Allow substitutions to be valid names ( #4726 )
2023-05-17 16:33:08 +12:00
tljuniper and Jesse Hills
7466773ac8
substitutions: Don't warn when passwords look like a substitution ( #4161 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com >
2023-03-05 20:28:46 +00:00
jimtng
5aa42e5e66
Add variable substitutions for !include ( #3510 )
2022-05-31 16:45:18 +12:00
Joshua Spence
28b65cb810
Perform merges when substituting dict keys ( #3062 )
2022-01-25 11:46:42 +13:00
dependabot[bot] and Otto winter
dbb195691b
Bump pylint from 2.10.2 to 2.11.1 ( #2334 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com >
2021-09-19 19:22:28 +02:00
Otto Winter
2376a2c941
Convert components to async-def syntax ( #1821 )
2021-05-24 10:58:29 +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
Robert Resch
6588e9380e
Replace substitutions in substitutions first ( #1567 )
2021-02-27 18:47:12 -03:00
Guillermo Ruffino
25924ca4e8
fix substitution losing track of document range ( #1547 )
2021-02-19 21:52:42 -03:00
Otto Winter
4996967c79
Add CODEOWNERS mechanism ( #1199 )
2020-07-25 15:57:18 +02:00
Otto Winter
4752096520
Don't remove location information for packages ( #1133 )
2020-07-15 15:27:24 +02:00
Alex Mekkering
ecb1c77f8b
Add support for command-line substitutions ( #1014 )
...
* Add support for command-line substitutions
* Fix flake8
* pylint fixes
2020-06-21 15:33:01 -03: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
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