Jesse Hills
b184b01600
Remove a bunch of unnecessary pylint disabling ( #4079 )
2022-11-24 11:09:19 +13:00
Jesse Hills
d220d41182
Bump python min to 3.9 ( #3871 )
2022-10-05 20:09:27 +13:00
Guillermo Ruffino
1444cddda9
Fix-esphome-validation-line-number ( #3815 )
2022-09-20 17:23:55 +12:00
Jan Grewe
84bac8356a
Add Prometheus metrics relabeling ( #3734 )
...
Co-authored-by: Guillermo Ruffino <glm.net@gmail.com>
2022-08-30 10:55:55 +12:00
Jesse Hills
f564be6aea
Do two substitutions passes to allow substitutions inside substitutions ( #3583 )
2022-06-22 08:21:32 +12:00
Jesse Hills
a519e5c475
Fix silent config errors ( #3380 )
2022-04-13 12:26:25 +12:00
Otto Winter
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
dependabot[bot]
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
Jesse Hills
f9b0666adf
Allow using a git source for a package ( #2193 )
2021-09-06 08:23:06 +12:00
Otto Winter
2419bc3678
Improve config final validation ( #1917 )
2021-06-18 07:54:14 +12:00
Guillermo Ruffino
c79d700d03
Add validate to components ( #1631 )
...
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-05-31 10:06:45 +12:00
Otto Winter
229bf719a2
Implement external custom components installing from YAML ( #1630 )
...
* Move components import loading to importlib MetaPathFinder and importlib.resources
* Add external_components component
* Fix
* Fix
* fix cv.url return
* fix validate shorthand git
* implement git refresh
* Use finders from sys.path_hooks instead of looking for __init__.py
* use github:// schema
* error handling
* add test
* fix handling git output
* revert file check handling
* fix test
* allow full component path be specified for local
* fix test
* fix path handling
* lint
Co-authored-by: Guillermo Ruffino <glm.net@gmail.com>
2021-05-07 15:02:17 -03:00
buxtronix
02aa75f68c
BLE client support on ESP32 ( #1177 )
...
Co-authored-by: Ben Buxton <bb@cactii.net>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-05-03 11:10:50 +12:00
Otto Winter
99f14e03d4
Fix colorlog removing colors and refactor color code ( #1671 )
2021-04-08 13:58:01 +02:00
Guillermo Ruffino
d5cf4b7eac
Improve error checking: too many component id candidates ( #1570 )
...
* add error too many candidates
* Improve error checking of ids
2021-03-07 19:59:32 -03: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
Guillermo Ruffino
342d5166a0
More yaml validation ( #1568 )
...
* validate keys
* refactor line info
2021-02-27 19:21:07 -03:00
Guillermo Ruffino
28e39f7f76
Add config validator location ( #1490 )
...
* show validation source location for id
* show validation source location for lambda
* refactor lambda #line position
* account content offset on made lambdas
* lint
* remove redundant check
2021-02-06 12:09:15 -03:00
dependabot[bot]
e7bd93b4b0
Bump pylint from 2.5.3 to 2.6.0 ( #1262 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Otto Winter <otto@otto-winter.com>
2020-09-16 12:12:40 +02: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
Dmitry Berezovsky
e6f42fa6f0
Packages feature ( #1052 )
...
* Started to work on packages feature
* Added some more validation to packages config
* Fixed some linter warnings
* Updated tests
* Reordered consts to avoid linter error
* Reordered consts to avoid linter error
* Refactored test yaml files to integrate into existing test pipeline
Co-authored-by: Dmitry Berezovsky <dmitry.berezovsky@logicify.com>
2020-07-13 11:45:06 -03: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
d09dff3ae3
Clean up YAML Mapping construction ( #910 )
...
* Clean up YAML Mapping construction
Fixes https://github.com/esphome/issues/issues/902
* Clean up DataBase
* Update error messages
2019-12-07 13:43:51 +01:00
Otto Winter
b7dff4bbab
Add magic value REPLACEME ( #881 )
...
* Add magic value REPLACEME
* Lint
2019-12-04 15:58:40 +01:00
Otto Winter
80214640b1
Filter some debug lines from PlatformIO in output ( #771 )
...
* Filter some debug lines from PlatformIO in output
* Lint
* Strip trailing newline from esp-idf output
* Only create global std::string if on esp32
2019-10-19 14:04:14 +02:00
Otto Winter
59091100e4
Fix YAMLError with unicode
2019-06-30 12:19:03 +02:00
Otto Winter
c97a9d83c6
Add better esphomeyaml migration path ( #600 )
...
Fixes https://github.com/esphome/issues/issues/387
2019-06-02 15:26:44 +02:00
Otto Winter
f35f6d2348
Use copy for custom includes ( #568 )
2019-05-29 19:30:35 +02:00
Pavel Pletenev
9ed06444e1
Suggested fix for empty domain ( #555 )
...
* Suggested fix for empty domain
Signed-off-by: delphi <cpp.create@gmail.com>
* Added proposed changes
Signed-off-by: delphi <cpp.create@gmail.com>
2019-05-26 10:28:46 +02:00
Otto Winter
999c1a5357
Warn if not registered properly
2019-05-21 12:23:38 +02:00
Otto Winter
dd79e37933
Lint
2019-05-13 21:53:14 +02:00
Otto Winter
855e9367d4
Update config.py
2019-05-13 12:04:50 +02:00
Otto Winter
db0dd6af09
Add custom component mechanism
2019-05-13 12:03:52 +02:00
Otto Winter
f811b1157c
Updates for 1.13 ( #546 )
...
* Update CI matcher
* Check Executable bit
* Quicklint
* Updates
* Allow pm1.0 and pm10.0 for PMS5003ST
Fixes https://github.com/esphome/feature-requests/issues/225
* PowerSupplyRequester
* Lint
* Include debug data in generated main.cpp
* Updates
* Auto-select bit_depth
* Updates
2019-05-12 23:04:36 +02:00
Otto Winter
f1a0e5a313
Sun support ( #531 )
...
* Sun
* Add sun support
* Lint
* Updates
* Fix elevation
* Lint
* Update mqtt_climate.cpp
2019-05-11 12:31:00 +02:00
Otto Winter
a1a7448868
Dashboard editor live validation ( #540 )
...
* Dashboard editor validation
* Improve range detection
* Lint
2019-05-11 11:41:09 +02:00
Otto Winter
766f6c045d
Updates
2019-04-24 23:49:02 +02:00
Otto Winter
0a0713f0e2
Fixes
2019-04-24 18:11:46 +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
Otto Winter
1c7ca4bc6f
Recommend similar keys for spelling errors ( #458 )
...
* Recommend similar keys for spelling errors
Fixes https://github.com/esphome/feature-requests/issues/68
* Fixes
* Fix
2019-02-26 19:22:33 +01:00
Otto Winter
c2a0c22bd9
Automatically hide secrets in validation ( #455 )
...
* Hide secrets in validation
* Lint
2019-02-26 18:32:20 +01:00
Otto Winter
3d9301a0f7
Rename esphomeyaml to esphome ( #426 )
...
* Rename
* Update
* Add migration
* Fix
* Fix dashboard
* Change test
* Fixes
* Code cleanup
* Fix import order
* Update
* Automate docker builds
* Shellcheck
2019-02-13 16:54:02 +01:00