mirror of
https://github.com/esphome/esphome.git
synced 2025-10-12 06:43:48 +01:00
Merge remote-tracking branch 'upstream/dev' into integration
This commit is contained in:
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
@@ -391,7 +391,7 @@ jobs:
|
||||
./script/test_build_components -e compile -c ${{ matrix.file }}
|
||||
|
||||
test-build-components-splitter:
|
||||
name: Split components for testing into 20 groups maximum
|
||||
name: Split components for testing into 10 components per group
|
||||
runs-on: ubuntu-24.04
|
||||
needs:
|
||||
- common
|
||||
@@ -402,10 +402,10 @@ jobs:
|
||||
steps:
|
||||
- name: Check out code from GitHub
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
- name: Split components into 20 groups
|
||||
- name: Split components into groups of 10
|
||||
id: split
|
||||
run: |
|
||||
components=$(echo '${{ needs.determine-jobs.outputs.changed-components }}' | jq -c '.[]' | shuf | jq -s -c '[_nwise(20) | join(" ")]')
|
||||
components=$(echo '${{ needs.determine-jobs.outputs.changed-components }}' | jq -c '.[]' | shuf | jq -s -c '[_nwise(10) | join(" ")]')
|
||||
echo "components=$components" >> $GITHUB_OUTPUT
|
||||
|
||||
test-build-components-split:
|
||||
|
@@ -105,9 +105,9 @@ class Canbus : public Component {
|
||||
CallbackManager<void(uint32_t can_id, bool extended_id, bool rtr, const std::vector<uint8_t> &data)>
|
||||
callback_manager_{};
|
||||
|
||||
virtual bool setup_internal();
|
||||
virtual Error send_message(struct CanFrame *frame);
|
||||
virtual Error read_message(struct CanFrame *frame);
|
||||
virtual bool setup_internal() = 0;
|
||||
virtual Error send_message(struct CanFrame *frame) = 0;
|
||||
virtual Error read_message(struct CanFrame *frame) = 0;
|
||||
};
|
||||
|
||||
template<typename... Ts> class CanbusSendAction : public Action<Ts...>, public Parented<Canbus> {
|
||||
|
@@ -304,6 +304,17 @@ def _format_framework_espidf_version(ver: cv.Version, release: str) -> str:
|
||||
return f"pioarduino/framework-espidf@https://github.com/pioarduino/esp-idf/releases/download/v{str(ver)}/esp-idf-v{str(ver)}.zip"
|
||||
|
||||
|
||||
def _is_framework_url(source: str) -> str:
|
||||
# platformio accepts many URL schemes for framework repositories and archives including http, https, git, file, and symlink
|
||||
import urllib.parse
|
||||
|
||||
try:
|
||||
parsed = urllib.parse.urlparse(source)
|
||||
except ValueError:
|
||||
return False
|
||||
return bool(parsed.scheme)
|
||||
|
||||
|
||||
# NOTE: Keep this in mind when updating the recommended version:
|
||||
# * New framework historically have had some regressions, especially for WiFi.
|
||||
# The new version needs to be thoroughly validated before changing the
|
||||
@@ -386,7 +397,7 @@ def _check_versions(value):
|
||||
value[CONF_SOURCE] = value.get(
|
||||
CONF_SOURCE, _format_framework_arduino_version(version)
|
||||
)
|
||||
if value[CONF_SOURCE].startswith("http"):
|
||||
if _is_framework_url(value[CONF_SOURCE]):
|
||||
value[CONF_SOURCE] = (
|
||||
f"pioarduino/framework-arduinoespressif32@{value[CONF_SOURCE]}"
|
||||
)
|
||||
@@ -399,7 +410,7 @@ def _check_versions(value):
|
||||
CONF_SOURCE,
|
||||
_format_framework_espidf_version(version, value.get(CONF_RELEASE, None)),
|
||||
)
|
||||
if value[CONF_SOURCE].startswith("http"):
|
||||
if _is_framework_url(value[CONF_SOURCE]):
|
||||
value[CONF_SOURCE] = f"pioarduino/framework-espidf@{value[CONF_SOURCE]}"
|
||||
|
||||
if CONF_PLATFORM_VERSION not in value:
|
||||
|
@@ -21,11 +21,11 @@ template<uint8_t N> class MCP23XXXBase : public Component, public gpio_expander:
|
||||
|
||||
protected:
|
||||
// read a given register
|
||||
virtual bool read_reg(uint8_t reg, uint8_t *value);
|
||||
virtual bool read_reg(uint8_t reg, uint8_t *value) = 0;
|
||||
// write a value to a given register
|
||||
virtual bool write_reg(uint8_t reg, uint8_t value);
|
||||
virtual bool write_reg(uint8_t reg, uint8_t value) = 0;
|
||||
// update registers with given pin value.
|
||||
virtual void update_reg(uint8_t pin, bool pin_value, uint8_t reg_a);
|
||||
virtual void update_reg(uint8_t pin, bool pin_value, uint8_t reg_a) = 0;
|
||||
|
||||
bool open_drain_ints_;
|
||||
};
|
||||
|
@@ -11,7 +11,7 @@ pyserial==3.5
|
||||
platformio==6.1.18 # When updating platformio, also update /docker/Dockerfile
|
||||
esptool==5.1.0
|
||||
click==8.1.7
|
||||
esphome-dashboard==20250904.0
|
||||
esphome-dashboard==20251009.0
|
||||
aioesphomeapi==41.13.0
|
||||
zeroconf==0.148.0
|
||||
puremagic==1.30
|
||||
|
@@ -1,7 +1,7 @@
|
||||
pylint==3.3.9
|
||||
flake8==7.3.0 # also change in .pre-commit-config.yaml when updating
|
||||
ruff==0.14.0 # also change in .pre-commit-config.yaml when updating
|
||||
pyupgrade==3.20.0 # also change in .pre-commit-config.yaml when updating
|
||||
pyupgrade==3.21.0 # also change in .pre-commit-config.yaml when updating
|
||||
pre-commit
|
||||
|
||||
# Unit tests
|
||||
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO17
|
||||
rx_pin: GPIO16
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO4
|
||||
rx_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO17
|
||||
rx_pin: GPIO16
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO4
|
||||
rx_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
step_pin: GPIO22
|
||||
dir_pin: GPIO23
|
||||
sleep_pin: GPIO25
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
step_pin: GPIO2
|
||||
dir_pin: GPIO3
|
||||
sleep_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
packages:
|
||||
base: !include common.yaml
|
||||
|
||||
sensor:
|
||||
- id: !extend my_sensor
|
||||
pin: A0
|
@@ -1,6 +0,0 @@
|
||||
packages:
|
||||
base: !include common.yaml
|
||||
|
||||
sensor:
|
||||
- id: !extend my_sensor
|
||||
pin: 4
|
@@ -1,6 +0,0 @@
|
||||
packages:
|
||||
base: !include common.yaml
|
||||
|
||||
sensor:
|
||||
- id: !extend my_sensor
|
||||
pin: 1
|
@@ -1,6 +0,0 @@
|
||||
packages:
|
||||
base: !include common.yaml
|
||||
|
||||
sensor:
|
||||
- id: !extend my_sensor
|
||||
pin: 1
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO16
|
||||
mosi_pin: GPIO17
|
||||
miso_pin: GPIO15
|
||||
cs_pin: GPIO12
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO6
|
||||
mosi_pin: GPIO7
|
||||
miso_pin: GPIO5
|
||||
cs_pin: GPIO2
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,4 +0,0 @@
|
||||
substitutions:
|
||||
pin: GPIO2
|
||||
|
||||
<<: !include common-ard-esp32_rmt_led_strip.yaml
|
@@ -1,4 +0,0 @@
|
||||
substitutions:
|
||||
pin: GPIO2
|
||||
|
||||
<<: !include common-ard-esp32_rmt_led_strip.yaml
|
@@ -1,4 +0,0 @@
|
||||
substitutions:
|
||||
pin: GPIO2
|
||||
|
||||
<<: !include common-ard-fastled.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
irq0_pin: GPIO13
|
||||
irq1_pin: GPIO15
|
||||
reset_pin: GPIO16
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
irq0_pin: GPIO6
|
||||
irq1_pin: GPIO7
|
||||
reset_pin: GPIO10
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
irq_pin: GPIO15
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
irq_pin: GPIO6
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO16
|
||||
mosi_pin: GPIO17
|
||||
miso_pin: GPIO15
|
||||
irq_pin: GPIO13
|
||||
cs_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO6
|
||||
mosi_pin: GPIO7
|
||||
miso_pin: GPIO5
|
||||
irq_pin: GPIO9
|
||||
cs_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,17 +0,0 @@
|
||||
spi:
|
||||
- id: spi_main_lcd
|
||||
clk_pin: 16
|
||||
mosi_pin: 17
|
||||
miso_pin: 15
|
||||
|
||||
display:
|
||||
- platform: ili9xxx
|
||||
id: main_lcd
|
||||
model: ili9342
|
||||
cs_pin: 12
|
||||
dc_pin: 13
|
||||
reset_pin: 21
|
||||
invert_colors: false
|
||||
|
||||
packages:
|
||||
animation: !include common.yaml
|
@@ -1,17 +0,0 @@
|
||||
spi:
|
||||
- id: spi_main_lcd
|
||||
clk_pin: 6
|
||||
mosi_pin: 7
|
||||
miso_pin: 5
|
||||
|
||||
display:
|
||||
- platform: ili9xxx
|
||||
id: main_lcd
|
||||
model: ili9342
|
||||
cs_pin: 8
|
||||
dc_pin: 9
|
||||
reset_pin: 10
|
||||
invert_colors: false
|
||||
|
||||
packages:
|
||||
animation: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO22
|
||||
sda_pin: GPIO21
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
<<: !include common.yaml
|
||||
|
||||
wifi:
|
||||
ssid: MySSID
|
||||
password: password1
|
@@ -1,5 +0,0 @@
|
||||
<<: !include common.yaml
|
||||
|
||||
wifi:
|
||||
ssid: MySSID
|
||||
password: password1
|
@@ -1,11 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
irq_pin: GPIO15
|
||||
|
||||
packages:
|
||||
as3935: !include common.yaml
|
||||
|
||||
# Trigger issue: https://github.com/esphome/issues/issues/6990
|
||||
# Compile with no binary sensor results in error
|
||||
binary_sensor: !remove
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
irq_pin: GPIO6
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO16
|
||||
mosi_pin: GPIO17
|
||||
miso_pin: GPIO15
|
||||
irq_pin: GPIO13
|
||||
cs_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,8 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO6
|
||||
mosi_pin: GPIO7
|
||||
miso_pin: GPIO5
|
||||
irq_pin: GPIO9
|
||||
cs_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
dir_pin: GPIO15
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,6 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
dir_pin: GPIO6
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO16
|
||||
sda_pin: GPIO17
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO16
|
||||
mosi_pin: GPIO17
|
||||
miso_pin: GPIO15
|
||||
cs_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO6
|
||||
mosi_pin: GPIO7
|
||||
miso_pin: GPIO5
|
||||
cs_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO16
|
||||
mosi_pin: GPIO17
|
||||
miso_pin: GPIO15
|
||||
cs_pin: GPIO5
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,7 +0,0 @@
|
||||
substitutions:
|
||||
clk_pin: GPIO6
|
||||
mosi_pin: GPIO7
|
||||
miso_pin: GPIO5
|
||||
cs_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,4 +0,0 @@
|
||||
substitutions:
|
||||
pin: GPIO2
|
||||
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO22
|
||||
sda_pin: GPIO21
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
scl_pin: GPIO5
|
||||
sda_pin: GPIO4
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,2 +0,0 @@
|
||||
packages:
|
||||
common: !include common.yaml
|
@@ -1,2 +0,0 @@
|
||||
packages:
|
||||
common: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1 +0,0 @@
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO12
|
||||
rx_pin: GPIO14
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO7
|
||||
rx_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO12
|
||||
rx_pin: GPIO14
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO7
|
||||
rx_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO12
|
||||
rx_pin: GPIO14
|
||||
|
||||
<<: !include common.yaml
|
@@ -1,5 +0,0 @@
|
||||
substitutions:
|
||||
tx_pin: GPIO7
|
||||
rx_pin: GPIO8
|
||||
|
||||
<<: !include common.yaml
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user