Commit Graph

190 Commits

Author SHA1 Message Date
Dave T
899aa31df3
Mark repo as safe directory to git config (#5102) 2023-07-17 09:19:08 +12:00
dentra
7a551081ee
web server esp idf suppport (#3500)
* initial web_server_idf implementation

* initial web_server_idf implementation

* fix lint errors

* fix lint errors

* add captive_portal support

* fix lint errors

* fix lint errors

* add url decode

* Increase the max supported size of headers section in HTTP request

* add ota support

* add mulipart form data support (ota required)

* make linter happy

* make linter happy

* make linter happy

* fix review marks

* add DefaultHeaders support

* add DefaultHeaders support

* unify file names

* using std::isnan

* parse multipart requests only when ota enabled

* parse multipart requests only when ota enabled

* parse multipart requests only when ota enabled

* parse multipart requests only when ota enabled

* parse multipart requests only when ota enabled

* drop multipart request support

* drop multipart request support

* drop multipart request support

* OTA is disabled by default

* fail when OTA enabled on IDF framework

* changing file permissions to remove execute bit

* return back PGM_P and strncpy_P macro

* temp web_server fix to be compat with 2022.12

* fix config handling w/o web_server

* fix compilation with "local"

* fully remove all idf ota

* merge with esphome 2023.6

* add core/hal to web_server_base

* Update esphome/components/web_server_base/__init__.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

* Update __init__.py

* Update __init__.py

---------

Co-authored-by: Keith Burzinski <kbx81x@gmail.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-07-11 19:08:03 -05:00
Kamil Trzciński
677b2c6618
display: split DisplayBuffer and Display (#5001) 2023-07-05 14:33:26 -05:00
Jimmy Hedman
fe0404a084
Some tests wasn't running (locally) (#5050) 2023-07-05 10:33:46 +12:00
Guillermo Ruffino
2a2d20a7fc
support empty schemas and one platform components (#4999) 2023-06-26 09:38:36 +12:00
Jesse Hills
e8ce7048d8
Fix pypi release (#4983) 2023-06-21 16:36:54 +12:00
Jesse Hills
f7c0ec6595
proto generation updates (#4653) 2023-06-12 17:00:34 +12:00
guillempages
8a518f0def
Add transparency support to all image types (#4600) 2023-05-22 08:03:21 +12:00
Jesse Hills
c835b67bac
Add host target platform (#4783)
Co-authored-by: Otto winter <otto@otto-winter.com>
2023-05-10 11:38:18 +12:00
Guillermo Ruffino
3498aade85
update schema gen to 2023.4.0 (#4772) 2023-05-04 10:18:45 +12:00
Jesse Hills
57e909e790
Only pre-install libraries in docker images (#4766) 2023-05-01 15:57:57 +12:00
Jesse Hills
6476357596
Expand the platformio dep installer to also install platforms and tools (#4716) 2023-04-27 12:26:06 +12:00
Jesse Hills
99638190cb
VSCode / devcontainer updates (#4647) 2023-04-03 19:44:46 +00:00
github-actions[bot]
a014d853a4
Synchronise Device Classes from Home Assistant (#4633)
* Synchronise Device Classes from Home Assistant

* Remove count do the `DEVICE_CLASSES` list is also updated

* Format file

---------

Co-authored-by: esphomebot <esphome@nabucasa.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-03-29 02:47:00 +00:00
Oxan van Leeuwen
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
Adam Jacques
66eecd3675
NeoPixel - Add support for ESP32-S3 (#4435) 2023-02-19 13:38:27 +00:00
Oxan van Leeuwen
9aed758d1b
Automate syncing device classes with HA (#4438)
* Sync device classes with HA

* Rename blacklist
2023-02-16 00:28:12 +00:00
Jesse Hills
6ad9baa870
Add API for dashboard to get boards list (#4154) 2022-12-07 16:07:51 +13:00
Jesse Hills
eb664b99ba
preprocess out proto_enum_to_string if not needed (#4119) 2022-11-30 08:30:00 +13:00
Jesse Hills
56de8e5cc4
Always use generated api options from aioesphomeapi (#4116) 2022-11-29 16:14:45 +13:00
Guillermo Ruffino
c1f696c32a
fix display_menu recursive schema gen (#4045) 2022-11-21 21:43:01 -03:00
Jesse Hills
c2e198311c
Update esp32 arduino and platform versions (#3564) 2022-11-21 11:49:30 +13:00
Jesse Hills
6153bcc6ad
Initial Support for RP2040 platform (#3284)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-10-20 16:50:39 +13:00
Jesse Hills
d220d41182
Bump python min to 3.9 (#3871) 2022-10-05 20:09:27 +13:00
André Klitzing
72cce391ab
Fix some typos found by codespell (#3598) 2022-06-27 18:02:46 -03:00
Guillermo Ruffino
f002a23d2d
Language schema 202204 (#3492) 2022-06-17 13:46:20 +12:00
Adrián Panella
b0bd9e0a34
protobuf: fix incomplete 64 bits implementation (#3341) 2022-04-04 08:38:44 +12:00
Guillermo Ruffino
05dc97099a
New vscode schema gen (#3336) 2022-04-03 19:30:22 +12:00
Otto Winter
34c9d8be50
Lint trailing whitespace (#3230) 2022-02-19 14:46:27 +01:00
Jesse Hills
40e06c9819
Raise minimum python version to 3.8 (#3176) 2022-02-10 09:55:11 +01:00
Jesse Hills
5c22065135
Change most references from hassio to ha-addon (#3178) 2022-02-09 23:46:20 +13:00
Keilin Bickar
21803607e7
Add new Lock core component (#2958)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-02-04 07:24:31 +13:00
Jesse Hills
ef832becf1
Create base touchscreen component and refactor ektf2232 (#3083)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2022-01-26 16:26:46 +13:00
Oxan van Leeuwen
2a84db7f85
Refactor fan platform to resemble climate/cover platforms (#2848)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
Co-authored-by: rob-deutsch <robzyb+altgithub@gmail.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-01-23 22:21:54 +13:00
Oxan van Leeuwen
d8e719d1c4
Support clang-tidy for ESP32 variants (#3001) 2022-01-05 21:30:15 +01:00
Oxan van Leeuwen
ffea3597f4
Set correct include_dir in platformio.ini (#2999) 2022-01-04 21:59:34 +01:00
Oxan van Leeuwen
193d3e0206
Fix clang-tidy with multiple ESP32 toolchains installed (#2998) 2022-01-05 08:34:17 +13:00
Stefan Agner
72fa68849f
Don't use pyproject.toml for esphome build (#2980) 2022-01-03 22:11:28 +13:00
Oxan van Leeuwen
607601b3a4
Enable a bunch of clang-tidy checks (#2149) 2021-12-02 09:03:51 +13:00
Oxan van Leeuwen
c9190574a9
Fix CI check for Windows line endings (#2831) 2021-12-01 17:14:25 +13:00
Oxan van Leeuwen
ab027a6ae2
Fix too-broad matcher for custom CI script (#2829) 2021-11-30 09:35:52 +01:00
Jesse Hills
b5639a6472
Add support for button entities (#2824) 2021-11-30 08:00:51 +13:00
Oxan van Leeuwen
00965fe19e
Consistently format errors in CI scripts (#2762) 2021-11-26 09:54:11 +13:00
Jesse Hills
5ff7c8418c
Implement Improv via Serial component (#2423)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-11-11 08:55:45 +13:00
Otto Winter
8aa72f4c1e
Neopixelbus redo method definitions (#2616) 2021-11-11 07:35:31 +13:00
Oxan van Leeuwen
0e4f1ac40d
Fix default environment for clang-tidy (#2420)
* Drop unnecessary platformio call from script/lint-cpp

* Default environment for clang-tidy to esp32-tidy
2021-09-30 16:24:02 +02:00
Otto Winter
aec02afcdc
Fix clang-tidy header filter (#2385)
* Fix clang-tidy header filter

* Allow private members

* Fix clang-tidy detections

* Run clang-format

* Fix remaining detections

* Fix graph

* Run clang-format
2021-09-24 18:02:28 +02:00
Oxan van Leeuwen
637b55bfbf
Allow compilation against IDF from repository (#2355)
* Fix src_filter in platformio.ini after src_dir change

* Add -Wno-nonnull-compare to platformio.ini as well

* Create default sdkconfig for static analysis

* Add more compiler flags to clang ignore list

* Clean-up platformio.ini

* Remove unnecessary blank line

* Fix accidentally dropped library

* Don't gitignore sdkconfig.defaults

Co-authored-by: Otto winter <otto@otto-winter.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-09-21 17:12:17 +02: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
Otto Winter
272ceadbb0
Redo docker build system with buildkit+multi-stage and cache pio packages (#2338) 2021-09-20 09:07:38 +02:00
Oxan van Leeuwen
924df1e7de
Run clang-tidy against Arduino 3 (#2146)
* Add macros header with more usable Arduino version defines

* Change Arduino version checking to use our version defines

* Add missing ESP8266 check

* Rename Arduino version macro to ARDUINO_VERSION_CODE

* Upgrade clang-tidy to use Arduino 3

* Fix clang-tidy warnings

* Upgrade NeoPixelBus to upstream 2.6.7

* Use Arduino-version-appropriate API to set redirect flags

* Remove now unnecessary CLANG_TIDY ifdefs

* Add preprocessor hackery to avoid including pgmspace.h

* Bump base image to 4.1.1 and update lint

* Fix nfctag

* Fix make_unique ambiguous

* Fix ignore name

* Fix ambiguous v2

* Remove unused begin

* Cast time_t to prevent issues on platforms where time_t is 32bit

Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-13 18:55:04 +02:00
Oxan van Leeuwen
40c474cd83
Run clang-tidy against ESP32 (#2147)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-13 18:11:27 +02:00
Jesse Hills
cc52f37933
Revert "Dont dump legacy fields (#2241)" (#2259)
This reverts commit 97eba1eecc.
2021-09-09 09:29:08 +12:00
Otto Winter
f924e80f43
Socket component (#2250) 2021-09-08 15:41:42 +12:00
Jesse Hills
97eba1eecc
Dont dump legacy fields (#2241) 2021-09-06 08:36:55 +12:00
Jesse Hills
ff6bed54c6
Remove last_reset_type and convert all those sensors to TOTAL_INCREASING (#2233) 2021-09-06 08:30:47 +12:00
Guillermo Ruffino
37f322585e
Glmnet schema 202105 (#2220) 2021-08-31 06:48:19 +12:00
Otto Winter
854f4a8896
Format dev temp idedata (#2142) 2021-08-10 11:14:04 +02:00
Oxan van Leeuwen
bf5f846fc6
Refactor clang-tidy script to use actual compiler flags and includes (#2133)
Co-authored-by: Otto winter <otto@otto-winter.com>
2021-08-09 22:43:18 +02:00
Oxan van Leeuwen
926bcc71ae
Only compile protobuf dumping when very verbose logging is enabled (#2139) 2021-08-09 22:32:06 +02:00
Jesse Hills
76991cdcc4
Add select entities and implement template select (#2067)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2021-08-02 20:00:51 +12:00
Oxan van Leeuwen
a3dcac62f9
Fix a bunch of typos (#2058)
Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Otto Winter <otto@otto-winter.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-07-26 14:48:57 +02:00
Oxan van Leeuwen
3749c11f21
Fix clang-format script behaviour without -i + code cleanup (#2002)
Co-authored-by: Stefan Agner <stefan@agner.ch>
2021-07-26 09:54:32 +12:00
Otto Winter
cc7dbeada6
Refactor docker build system and workflows (#2023) 2021-07-15 21:30:04 +02:00
SenexCrenshaw
0651716b96
Nextion upload and sensors (#1464)
Co-authored-by: Senex Crenshaw <senexcrenshaw@gmail.com>
2021-07-15 12:51:15 +12:00
Jesse Hills
dd37a4e04c
Add Number entities (from Home Assistant) (#1971)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2021-07-13 07:20:12 +12:00
Otto Winter
871c0ee2a5
Rework climate traits (#1941)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-06-21 21:17:01 +02:00
Jesse Hills
b8a7741c61
Update generation script to add const (#1945) 2021-06-21 21:27:35 +12:00
Stefan Agner
f9a31c1abb
Fix error print in script/helpers.py (#1935) 2021-06-18 13:49:25 +12:00
Otto Winter
424c34225f
Run script/setup in devcontainer instead of pip install (#1913) 2021-06-15 20:19:21 +12:00
dentra
c411043681
Adds support cpp to vscode (#1828)
Co-authored-by: Stefan Agner <stefan@agner.ch>
2021-06-15 10:45:22 +12:00
Stefan Agner
13fe9e83fa
Use Clang 11 (#1846) 2021-06-08 22:16:17 +02:00
Otto Winter
4711f36a1f
Bump base image to 3.4.0 (#1879) 2021-06-08 22:03:04 +02:00
Jesse Hills
a70a205ace
Improv - BLE WiFi provisioning (#1807)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-06-08 11:56:21 +12:00
Oxan van Leeuwen
33625e2dd3
CLI user experience improvements (#1805)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-06-08 11:14:12 +12:00
Jesse Hills
4ffa68b773
Merge branch 'master' into dev 2021-05-19 14:02:04 +12:00
Jesse Hills
9a7a205510
Generate protobuf code closer to formatted files (#1790) 2021-05-17 10:54:17 +12:00
Guillermo Ruffino
3d6dcc9eee
Add more json schema generation features (#1690)
* some enums

* extract enums, light effects remote_receiver etc

* more pins schema

* update to core changes
2021-05-14 20:35:39 -03:00
Jesse Hills
44562dbef1
Merge branch 'dev' into bump-1.18.0b1 2021-05-10 07:54:06 +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
Otto Winter
7964b724ed
Rewrite sun component calculations (#1661) 2021-04-07 12:16:36 +02:00
Jesse Hills
e2e074a3fd
Fix bump script for double quotes 2021-03-22 20:12:11 +13:00
Otto Winter
5eeb110d74
Bundle platformio lib_deps in docker images (#1625) 2021-03-20 18:43:31 +01:00
Steve Baxter
a77784a6da
Implement pulse_meter as an improvement on pulse_counter and pulse_width for meters (#1434) 2021-03-19 21:16:27 +13:00
Massimiliano Ravelli
28a72fa56b
Fixed component_tests config (#1608) 2021-03-12 19:58:43 -03:00
Guillermo Ruffino
5e5f8d5f9b
schema-dump-pins (#1596)
* schema dump idea

accept boolean or anything default

accept null also for full dicts

added some common validators

more simple validators

support multi_conf

better handle automations

updates

updates

handle lists

removed not needed class

move to own folder

generalized for automations lists, etc

updates

updates

clean up

clean up

fix automations

made comment optional

basic docs support

added more docs

fixes docs handling

updates

updates

fix components parent

updates

updates

updates

Fix inkplate 6 registration

updates

Disable logging for vscode add on

better handle buses

keep extended order as in CONFIGs

updates

updates

updates

disable comments

moved to scripts/build_jsonschema

added configurable decorators

path handling

fix handle list_schema

fixes and cleanup

add jschema_extractor to maybe

updates

lint

no schema in git

add generated loggers list

* lint

* support pin schema
2021-03-08 22:53:20 -03:00
Guillermo Ruffino
1e227e8051
Schema dump (#1564)
* schema dump idea

accept boolean or anything default

accept null also for full dicts

added some common validators

more simple validators

support multi_conf

better handle automations

updates

updates

handle lists

removed not needed class

move to own folder

generalized for automations lists, etc

updates

updates

clean up

clean up

fix automations

made comment optional

basic docs support

added more docs

fixes docs handling

updates

updates

fix components parent

updates

updates

updates

Fix inkplate 6 registration

updates

Disable logging for vscode add on

better handle buses

keep extended order as in CONFIGs

updates

updates

updates

disable comments

moved to scripts/build_jsonschema

added configurable decorators

path handling

fix handle list_schema

fixes and cleanup

add jschema_extractor to maybe

updates

lint

no schema in git

add generated loggers list

* lint
2021-03-07 21:05:08 -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
59cdc32970
Add rc522 (#1298)
* wip

* first working

* feat complete

* add CODEOWNERS

* renamed to spi, reset optional

* add test

* fix CODEOWNERS
2020-10-27 12:41:57 +13:00
Otto Winter
ccb6fc3010
Bump docker base image to 2.6.0 (#1245) 2020-08-08 18:42:21 +02:00
Otto Winter
f9fceb7ffc
Fix ci-custom.py const.py ordered check and improve code (#1222) 2020-07-29 18:19:48 +02:00
Otto Winter
52639a0a7c
Cleanup web server prometheus integration (#1192) 2020-07-27 12:07:05 +02:00
Jesse Hills
25ad33a377
Add @jesserockz to codeowners (#1202)
Co-authored-by: Otto Winter <otto@otto-winter.com>
2020-07-26 14:33:16 +02:00
Otto Winter
abc83f6cb0
Fix typo in bump-version script once again 2020-07-26 13:50:45 +02:00
Otto Winter
f61a82a568
Fix bump-version string format 2020-07-26 10:16:54 +02:00
Otto Winter
1c3ed71d36
Fix bump-version script 2020-07-25 23:19:10 +02:00
Otto Winter
bf3b678727
Update bump-version script 2020-07-25 19:26:30 +02:00
Otto Winter
4996967c79
Add CODEOWNERS mechanism (#1199) 2020-07-25 15:57:18 +02:00
Otto Winter
0fc8e8d483
Fix SN74HC595 doesn't use ESPHome HAL and add lint checks for it (#1188) 2020-07-25 14:22:56 +02:00
Otto Winter
0afa41d08a
Add bump version script (#1153) 2020-07-17 14:32:23 +02:00