Skip to content

Commit 0a39bbd

Browse files
authored
Merge branch 'espressif:release/v5.4' into release/v5.4
2 parents 25305c0 + 8ea7ae7 commit 0a39bbd

File tree

2,260 files changed

+36072
-18012
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,260 files changed

+36072
-18012
lines changed

.codespellrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
[codespell]
22
skip = build,*.yuv,components/fatfs/src/*,alice.txt,*.rgb,components/wpa_supplicant/*,components/esp_wifi/*,*.pem
3-
ignore-words-list = ser,dout,rsource,fram,inout,shs,ans,aci,unstall,unstalling,hart,wheight,wel,ot,fane,assertIn,registr,oen
3+
ignore-words-list = ser,dout,rsource,fram,inout,shs,ans,aci,unstall,unstalling,hart,wheight,wel,ot,fane,assertIn,registr,oen,parms
44
write-changes = true

.gitlab/CODEOWNERS

Lines changed: 1 addition & 241 deletions
Original file line numberDiff line numberDiff line change
@@ -2,245 +2,5 @@
22
#
33
# https://docs.gitlab.com/ee/user/project/code_owners.html#the-syntax-of-code-owners-files
44
#
5-
# If more than one rule matches a given file, the latest rule is used.
6-
# The file should be generally kept sorted, except when it is necessary
7-
# to use a different order due to the fact above. In that case, use
8-
# '# sort-order-reset' comment line to reset the sort order.
9-
#
10-
# Recipes for a few common cases:
11-
#
12-
# 1. Specific directory with all its contents:
13-
#
14-
# /components/app_trace/
15-
#
16-
# Note the trailing slash!
17-
#
18-
# 2. File with certain extension in any subdirectory of a certain directory:
19-
#
20-
# /examples/**/*.py
21-
#
22-
# This includes an *.py files in /examples/ directory as well.
23-
#
24-
# 3. Contents of a directory with a certain name, anywhere in the tree:
25-
#
26-
# test_*_host/
27-
#
28-
# Will match everything under components/efuse/test_efuse_host/,
29-
# components/heap/test_multi_heap_host/, components/lwip/test_afl_host/, etc.
30-
#
31-
# 4. Same as above, except limited to a specific place in the tree:
32-
#
33-
# /components/esp32*/
34-
#
35-
# Matches everything under /components/esp32, /components/esp32s2, etc.
36-
# Doesn't match /tools/some-test/components/esp32s5.
37-
#
38-
# 5. Specific file:
39-
#
40-
# /tools/tools.json
41-
#
42-
# 6. File with a certain name anywhere in the tree
43-
#
44-
# .gitignore
45-
#
46-
47-
* @esp-idf-codeowners/other
48-
49-
/.* @esp-idf-codeowners/tools
50-
/.codespellrc @esp-idf-codeowners/ci
51-
/.github/workflows/ @esp-idf-codeowners/ci
52-
/.gitlab-ci.yml @esp-idf-codeowners/ci
53-
/.gitlab/ci/ @esp-idf-codeowners/ci
54-
/.pre-commit-config.yaml @esp-idf-codeowners/ci
55-
/.readthedocs.yml @esp-idf-codeowners/docs
56-
/.vale.ini @esp-idf-codeowners/docs
57-
/CMakeLists.txt @esp-idf-codeowners/build-config
58-
/COMPATIBILITY*.md @esp-idf-codeowners/peripherals
59-
/CONTRIBUTING.md @esp-idf-codeowners/docs
60-
/Kconfig @esp-idf-codeowners/build-config
61-
/README*.md @esp-idf-codeowners/docs
62-
/ROADMAP*.md @esp-idf-codeowners/docs
63-
/SUPPORT_POLICY*.md @esp-idf-codeowners/docs
64-
/add_path.sh @esp-idf-codeowners/tools
65-
/conftest.py @esp-idf-codeowners/ci
66-
/export.* @esp-idf-codeowners/tools
67-
/install.* @esp-idf-codeowners/tools
68-
/pytest.ini @esp-idf-codeowners/ci
69-
/sdkconfig.rename @esp-idf-codeowners/build-config
70-
/sonar-project.properties @esp-idf-codeowners/ci
71-
72-
# sort-order-reset
73-
74-
/components/app_trace/ @esp-idf-codeowners/debugging
75-
/components/app_update/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities
76-
/components/bootloader*/ @esp-idf-codeowners/system @esp-idf-codeowners/security
77-
/components/bootloader_support/bootloader_flash/ @esp-idf-codeowners/peripherals
78-
/components/bt/ @esp-idf-codeowners/bluetooth
79-
/components/cmock/ @esp-idf-codeowners/system
80-
/components/console/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities/console
81-
/components/cxx/ @esp-idf-codeowners/system
82-
/components/driver/ @esp-idf-codeowners/peripherals
83-
/components/efuse/ @esp-idf-codeowners/system
84-
/components/esp_adc/ @esp-idf-codeowners/peripherals
85-
/components/esp_app_format/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities
86-
/components/esp_bootloader_format/ @esp-idf-codeowners/system @esp-idf-codeowners/app-utilities
87-
/components/esp_coex/ @esp-idf-codeowners/wifi @esp-idf-codeowners/bluetooth @esp-idf-codeowners/ieee802154
88-
/components/esp_common/ @esp-idf-codeowners/system
89-
/components/esp_driver_*/ @esp-idf-codeowners/peripherals
90-
/components/esp_driver_sdmmc/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/storage
91-
/components/esp_eth/ @esp-idf-codeowners/network
92-
/components/esp_event/ @esp-idf-codeowners/system
93-
/components/esp_gdbstub/ @esp-idf-codeowners/debugging
94-
/components/esp_hid/ @esp-idf-codeowners/bluetooth
95-
/components/esp_http_client/ @esp-idf-codeowners/app-utilities
96-
/components/esp_http_server/ @esp-idf-codeowners/app-utilities
97-
/components/esp_https_ota/ @esp-idf-codeowners/app-utilities
98-
/components/esp_https_server/ @esp-idf-codeowners/app-utilities
99-
/components/esp_hw_support/ @esp-idf-codeowners/system @esp-idf-codeowners/peripherals
100-
/components/esp_hw_support/lowpower/ @esp-idf-codeowners/power-management
101-
/components/esp_lcd/ @esp-idf-codeowners/peripherals
102-
/components/esp_local_ctrl/ @esp-idf-codeowners/app-utilities
103-
/components/esp_mm/ @esp-idf-codeowners/peripherals
104-
/components/esp_netif/ @esp-idf-codeowners/network
105-
/components/esp_netif_stack/ @esp-idf-codeowners/network
106-
/components/esp_partition/ @esp-idf-codeowners/storage
107-
/components/esp_phy/ @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi @esp-idf-codeowners/ieee802154
108-
/components/esp_pm/ @esp-idf-codeowners/power-management @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi @esp-idf-codeowners/system
109-
/components/esp_psram/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/system
110-
/components/esp_ringbuf/ @esp-idf-codeowners/system
111-
/components/esp_rom/ @esp-idf-codeowners/system @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi
112-
/components/esp_security/ @esp-idf-codeowners/security
113-
/components/esp_system/ @esp-idf-codeowners/system
114-
/components/esp_timer/ @esp-idf-codeowners/system
115-
/components/esp-tls/ @esp-idf-codeowners/app-utilities
116-
/components/esp_vfs_*/ @esp-idf-codeowners/storage
117-
/components/esp_vfs_console/ @esp-idf-codeowners/storage @esp-idf-codeowners/system
118-
/components/esp_wifi/ @esp-idf-codeowners/wifi
119-
/components/espcoredump/ @esp-idf-codeowners/debugging
120-
/components/esptool_py/ @esp-idf-codeowners/tools
121-
/components/fatfs/ @esp-idf-codeowners/storage
122-
/components/freertos/ @esp-idf-codeowners/system
123-
/components/hal/ @esp-idf-codeowners/peripherals
124-
/components/hal/test_apps/crypto/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/security
125-
/components/heap/ @esp-idf-codeowners/system
126-
/components/http_parser/ @esp-idf-codeowners/app-utilities
127-
/components/idf_test/ @esp-idf-codeowners/ci
128-
/components/ieee802154/ @esp-idf-codeowners/ieee802154
129-
/components/json/ @esp-idf-codeowners/app-utilities
130-
/components/linux/ @esp-idf-codeowners/system
131-
/components/log/ @esp-idf-codeowners/system
132-
/components/lwip/ @esp-idf-codeowners/lwip
133-
/components/mbedtls/ @esp-idf-codeowners/app-utilities/mbedtls @esp-idf-codeowners/security
134-
/components/mqtt/ @esp-idf-codeowners/network
135-
/components/newlib/ @esp-idf-codeowners/system @esp-idf-codeowners/toolchain
136-
/components/nvs_flash/ @esp-idf-codeowners/storage
137-
/components/nvs_sec_provider/ @esp-idf-codeowners/storage @esp-idf-codeowners/security
138-
/components/openthread/ @esp-idf-codeowners/ieee802154
139-
/components/partition_table/ @esp-idf-codeowners/system
140-
/components/perfmon/ @esp-idf-codeowners/debugging
141-
/components/protobuf-c/ @esp-idf-codeowners/app-utilities
142-
/components/protocomm/ @esp-idf-codeowners/app-utilities/provisioning
143-
/components/pthread/ @esp-idf-codeowners/system
144-
/components/riscv/ @esp-idf-codeowners/system
145-
/components/rt/ @esp-idf-codeowners/system
146-
/components/sdmmc/ @esp-idf-codeowners/storage
147-
/components/soc/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/system
148-
/components/spi_flash/ @esp-idf-codeowners/peripherals
149-
/components/spiffs/ @esp-idf-codeowners/storage
150-
/components/tcp_transport/ @esp-idf-codeowners/network
151-
/components/touch_element/ @esp-idf-codeowners/peripherals
152-
/components/ulp/ @esp-idf-codeowners/system
153-
/components/unity/ @esp-idf-codeowners/ci
154-
/components/usb/ @esp-idf-codeowners/peripherals/usb
155-
/components/vfs/ @esp-idf-codeowners/storage
156-
/components/wear_levelling/ @esp-idf-codeowners/storage
157-
/components/wifi_provisioning/ @esp-idf-codeowners/app-utilities/provisioning
158-
/components/wpa_supplicant/ @esp-idf-codeowners/wifi @esp-idf-codeowners/app-utilities/mbedtls
159-
/components/xtensa/ @esp-idf-codeowners/system
160-
161-
/docs/ @esp-idf-codeowners/docs
162-
/docs/**/api-guides/tools/ @esp-idf-codeowners/tools
163-
/docs/en/api-guides/core_dump.rst @esp-idf-codeowners/debugging
164-
/docs/en/api-guides/jtag-debugging/ @esp-idf-codeowners/debugging
165-
/docs/**/api-reference/bluetooth/ @esp-idf-codeowners/bluetooth
166-
/docs/**/api-reference/network/ @esp-idf-codeowners/network @esp-idf-codeowners/wifi
167-
/docs/**/api-reference/peripherals/ @esp-idf-codeowners/peripherals
168-
/docs/**/api-reference/peripherals/usb* @esp-idf-codeowners/peripherals @esp-idf-codeowners/peripherals/usb
169-
/docs/**/api-reference/peripherals/usb*/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/peripherals/usb
170-
/docs/**/api-reference/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
171-
/docs/**/api-reference/provisioning/ @esp-idf-codeowners/app-utilities/provisioning
172-
/docs/**/api-reference/storage/ @esp-idf-codeowners/storage
173-
/docs/**/api-reference/system/ @esp-idf-codeowners/system
174-
/docs/**/security/ @esp-idf-codeowners/security
175-
/docs/**/migration-guides/ @esp-idf-codeowners/docs @esp-idf-codeowners/all-maintainers
176-
/docs/**/contribute/install-pre-commit-hook.rst @esp-idf-codeowners/ci @esp-idf-codeowners/tools
177-
178-
/examples/README.md @esp-idf-codeowners/docs @esp-idf-codeowners/ci
179-
/examples/**/*.py @esp-idf-codeowners/ci @esp-idf-codeowners/tools
180-
/examples/bluetooth/ @esp-idf-codeowners/bluetooth
181-
/examples/build_system/ @esp-idf-codeowners/build-config
182-
/examples/common_components/ @esp-idf-codeowners/system @esp-idf-codeowners/wifi @esp-idf-codeowners/lwip @esp-idf-codeowners/network
183-
/examples/custom_bootloader/ @esp-idf-codeowners/system
184-
/examples/cxx/ @esp-idf-codeowners/system
185-
/examples/ethernet/ @esp-idf-codeowners/network
186-
/examples/get-started/ @esp-idf-codeowners/system
187-
/examples/ieee802154/ @esp-idf-codeowners/ieee802154
188-
/examples/mesh/ @esp-idf-codeowners/wifi
189-
/examples/network/ @esp-idf-codeowners/network @esp-idf-codeowners/wifi
190-
/examples/openthread/ @esp-idf-codeowners/ieee802154
191-
/examples/peripherals/ @esp-idf-codeowners/peripherals
192-
/examples/peripherals/usb/ @esp-idf-codeowners/peripherals @esp-idf-codeowners/peripherals/usb
193-
/examples/phy/ @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi @esp-idf-codeowners/ieee802154
194-
/examples/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
195-
/examples/provisioning/ @esp-idf-codeowners/app-utilities/provisioning
196-
/examples/security/ @esp-idf-codeowners/security
197-
/examples/storage/ @esp-idf-codeowners/storage
198-
/examples/system/ @esp-idf-codeowners/system
199-
/examples/system/ota/ @esp-idf-codeowners/app-utilities
200-
/examples/wifi/ @esp-idf-codeowners/wifi
201-
/examples/zigbee/ @esp-idf-codeowners/ieee802154
202-
203-
/tools/ @esp-idf-codeowners/tools
204-
/tools/ble/ @esp-idf-codeowners/app-utilities
205-
/tools/catch/ @esp-idf-codeowners/ci
206-
/tools/ci/ @esp-idf-codeowners/ci
207-
/tools/cmake/ @esp-idf-codeowners/build-config
208-
/tools/cmake/toolchain-*.cmake @esp-idf-codeowners/toolchain
209-
/tools/esp_app_trace/ @esp-idf-codeowners/debugging
210-
/tools/esp_prov/ @esp-idf-codeowners/app-utilities
211-
/tools/gdb_panic_server.py @esp-idf-codeowners/debugging
212-
/tools/kconfig*/ @esp-idf-codeowners/build-config
213-
/tools/ldgen/ @esp-idf-codeowners/build-config
214-
/tools/mass_mfg/ @esp-idf-codeowners/app-utilities
215-
/tools/mocks/ @esp-idf-codeowners/system
216-
217-
/tools/test_apps/ @esp-idf-codeowners/ci
218-
/tools/test_apps/README.md @esp-idf-codeowners/docs @esp-idf-codeowners/ci
219-
220-
## Note: owners here should be the same as the owners for the same example subdir, above
221-
/tools/test_apps/build_system/ @esp-idf-codeowners/build-config
222-
/tools/test_apps/configs/ @esp-idf-codeowners/system
223-
/tools/test_apps/linux_compatible/ @esp-idf-codeowners/system
224-
/tools/test_apps/peripherals/ @esp-idf-codeowners/peripherals
225-
/tools/test_apps/phy/ @esp-idf-codeowners/bluetooth @esp-idf-codeowners/wifi @esp-idf-codeowners/ieee802154
226-
/tools/test_apps/protocols/ @esp-idf-codeowners/network @esp-idf-codeowners/app-utilities
227-
/tools/test_apps/security/ @esp-idf-codeowners/security
228-
/tools/test_apps/storage/ @esp-idf-codeowners/storage
229-
/tools/test_apps/system/ @esp-idf-codeowners/system
230-
231-
/tools/test_apps/**/*.py @esp-idf-codeowners/ci @esp-idf-codeowners/tools
232-
233-
/tools/test_build_system/ @esp-idf-codeowners/tools @esp-idf-codeowners/build-config
234-
235-
/tools/tools.json @esp-idf-codeowners/tools @esp-idf-codeowners/toolchain @esp-idf-codeowners/debugging
236-
237-
/tools/unit-test-app/ @esp-idf-codeowners/system @esp-idf-codeowners/tools
238-
239-
# sort-order-reset
240-
241-
/components/**/test_apps/**/*.py @esp-idf-codeowners/ci @esp-idf-codeowners/tools
2425

243-
# ignore lists
244-
/tools/ci/check_copyright_config.yaml @esp-idf-codeowners/all-maintainers
245-
/tools/ci/check_copyright_ignore.txt @esp-idf-codeowners/all-maintainers
246-
/tools/ci/mypy_ignore_list.txt @esp-idf-codeowners/tools
6+
* @esp-idf-codeowners/all-maintainers

.gitlab/ci/build.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
.build_template:
22
stage: build
33
extends:
4-
- .after_script:build:ccache:upload-when-fail
4+
- .after_script:build:ccache-show-stats:upload-failed-job-logs
55
image: $ESP_ENV_IMAGE
66
tags:
77
- build
@@ -16,7 +16,7 @@
1616
extends:
1717
- .build_template
1818
- .before_script:build
19-
- .after_script:build:ccache
19+
- .after_script:build:ccache-show-stats
2020
dependencies: # set dependencies to null to avoid missing artifacts issue
2121
needs:
2222
- job: fast_template_app
@@ -246,15 +246,16 @@ pytest_build_system_macos:
246246
extends:
247247
- .test_build_system_template
248248
- .before_script:build:macos
249-
- .after_script:build:macos:upload-when-fail
249+
- .after_script:build:macos:upload-failed-job-logs:ccache-show-stats
250250
- .rules:build:macos
251251
tags:
252252
- macos_shell
253253
parallel: 3
254254
variables:
255255
PYENV_VERSION: "3.8"
256-
CI_CCACHE_DISABLE: "1" # ccache: error: Read-only file system
257-
256+
# CCACHE_DIR: "/cache/idf_ccache". On macOS, you cannot write to this folder due to insufficient permissions.
257+
CCACHE_DIR: "" # ccache will use "$HOME/Library/Caches/ccache".
258+
CCACHE_MAXSIZE: "5G" # To preserve the limited Macbook storage. CCACHE automatically prunes old caches to fit the set limit.
258259
build_docker:
259260
extends:
260261
- .before_script:minimal
@@ -309,7 +310,11 @@ generate_build_child_pipeline:
309310
- non_test_related_apps.txt
310311
expire_in: 1 week
311312
when: always
313+
variables:
314+
PYTEST_IGNORE_COLLECT_IMPORT_ERROR: "1"
312315
script:
316+
# requires basic pytest dependencies
317+
- run_cmd bash install.sh --enable-pytest
313318
- run_cmd python tools/ci/dynamic_pipelines/scripts/generate_build_child_pipeline.py
314319

315320
build_child_pipeline:

.gitlab/ci/common.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ variables:
4040
GIT_FETCH_EXTRA_FLAGS: "--no-recurse-submodules --prune --prune-tags"
4141
# we're using .cache folder for caches
4242
GIT_CLEAN_FLAGS: -ffdx -e .cache/
43-
LATEST_GIT_TAG: v5.4-dev
43+
LATEST_GIT_TAG: v5.4-beta1
4444

4545
SUBMODULE_FETCH_TOOL: "tools/ci/ci_fetch_submodule.py"
4646
# by default we will fetch all submodules
@@ -61,9 +61,6 @@ variables:
6161
SONARQUBE_SCANNER_IMAGE: "${CI_DOCKER_REGISTRY}/sonarqube-scanner:5"
6262
PRE_COMMIT_IMAGE: "${CI_DOCKER_REGISTRY}/esp-idf-pre-commit:1"
6363

64-
# target test repo parameters
65-
TEST_ENV_CONFIG_REPO: "https://gitlab-ci-token:${BOT_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/qa/ci-test-runner-configs.git"
66-
6764
# cache python dependencies
6865
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
6966

@@ -91,7 +88,7 @@ variables:
9188
CI_CLANG_DISTRO_URL: ""
9289

9390
# Set this variable to specify the file name for the known failure cases.
94-
KNOWN_FAILURE_CASES_FILE_NAME: "master.txt"
91+
KNOWN_FAILURE_CASES_FILE_NAME: "5.4.txt"
9592

9693
IDF_CI_BUILD: 1
9794

@@ -230,13 +227,14 @@ variables:
230227
- *setup_tools_and_idf_python_venv
231228
- fetch_submodules
232229

233-
.after_script:build:macos:upload-when-fail:
230+
.after_script:build:macos:upload-failed-job-logs:ccache-show-stats:
234231
after_script:
235232
# macos is running shell executor, which means it would use
236233
# the system installed /usr/local/bin/python3 by default.
237234
# Ensure pyenv and PYENV_VERSION installed
238235
- eval "$(pyenv init -)"
239236
- *upload_failed_job_log_artifacts
237+
- *show_ccache_statistics
240238

241239
.before_script:build:
242240
before_script:
@@ -247,11 +245,11 @@ variables:
247245
- export EXTRA_CFLAGS=${PEDANTIC_CFLAGS}
248246
- export EXTRA_CXXFLAGS=${PEDANTIC_CXXFLAGS}
249247

250-
.after_script:build:ccache:
248+
.after_script:build:ccache-show-stats:
251249
after_script:
252250
- *show_ccache_statistics
253251

254-
.after_script:build:ccache:upload-when-fail:
252+
.after_script:build:ccache-show-stats:upload-failed-job-logs:
255253
after_script:
256254
- *show_ccache_statistics
257255
- *upload_failed_job_log_artifacts

.gitlab/ci/host-test.yml

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,22 +34,16 @@ check_public_headers:
3434
- IDF_TARGET=esp32p4 python tools/ci/check_public_headers.py --jobs 4 --prefix riscv32-esp-elf-
3535
- IDF_TARGET=esp32c61 python tools/ci/check_public_headers.py --jobs 4 --prefix riscv32-esp-elf-
3636

37-
test_nvs_on_host:
38-
extends: .host_test_template
39-
script:
40-
- cd components/nvs_flash/test_nvs_host
41-
- make test
42-
4337
test_nvs_coverage:
4438
extends:
4539
- .host_test_template
4640
- .rules:labels:nvs_coverage
4741
artifacts:
4842
paths:
49-
- components/nvs_flash/test_nvs_host/coverage_report
43+
- components/nvs_flash/host_test/nvs_host_test/coverage_report
5044
script:
51-
- cd components/nvs_flash/test_nvs_host
52-
- make coverage_report
45+
- cd components/nvs_flash/host_test/nvs_host_test
46+
- idf.py build coverage
5347
# the 'long' host tests take approx 11 hours on our current runners. Adding some margin here for possible CPU contention
5448
timeout: 18 hours
5549

0 commit comments

Comments
 (0)