Skip to content

Commit 58e594d

Browse files
Solving master merge conflicts
2 parents ca91cab + 49db415 commit 58e594d

File tree

198 files changed

+33292
-737
lines changed

Some content is hidden

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

198 files changed

+33292
-737
lines changed

.github/.wordlist.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1006,6 +1006,7 @@ OpenThreadDemo
10061006
openweave
10071007
OperationalCredentials
10081008
operationalDataset
1009+
operationalstate
10091010
opkg
10101011
OPTIGA
10111012
optionMask

.github/workflows/build.yaml

+40-1
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,9 @@ jobs:
157157
run: echo "$CONCURRENCY_CONTEXT"
158158
- name: Checkout
159159
uses: actions/checkout@v4
160+
with:
161+
fetch-depth: 2
162+
persist-credentials: true
160163
- name: Try to ensure the directories for core dumping exist and we
161164
can write them.
162165
run: |
@@ -186,6 +189,10 @@ jobs:
186189
- name: Clean output
187190
run: rm -rf ./out
188191
- name: Run Tests with sanitizers
192+
# Sanitizer tests are not likely to find extra issues so running the same tests
193+
# as above repeatedly on every pull request seems extra time. Instead keep this run
194+
# for master only
195+
if: github.event.pull_request.number == null
189196
env:
190197
LSAN_OPTIONS: detect_leaks=1
191198
run: |
@@ -201,17 +208,34 @@ jobs:
201208
BUILD_TYPE=sanitizers scripts/build/gn_gen.sh --args="$GN_ARGS chip_data_model_check_die_on_failure=true" --export-compile-commands
202209
BUILD_TYPE=sanitizers scripts/tests/gn_tests.sh
203210
done
211+
- name: Generate tests with sanitizers (for tidy)
212+
if: github.event.pull_request.number != null
213+
run: |
214+
rm -rf ./out/sanitizers
215+
BUILD_TYPE=sanitizers scripts/build/gn_gen.sh --args="is_clang=true is_asan=true chip_data_model_check_die_on_failure=true" --export-compile-commands
204216
- name: Ensure codegen is done for sanitize
205217
run: |
206218
./scripts/run_in_build_env.sh "./scripts/run_codegen_targets.sh out/sanitizers"
219+
- name: Find changed files
220+
id: changed-files
221+
uses: tj-actions/changed-files@v45
207222
- name: Clang-tidy validation
208223
# NOTE: clang-tidy crashes on CodegenDataModel_Write due to Nullable/std::optional check.
209224
# See https://github.com/llvm/llvm-project/issues/97426
225+
env:
226+
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
210227
run: |
228+
touch out/changed_files.txt
229+
for file in ${ALL_CHANGED_FILES}; do
230+
echo "$file changed and will be considered for tidy"
231+
echo "$file" >>out/changed_files.txt
232+
done
233+
211234
./scripts/run_in_build_env.sh \
212235
"./scripts/run-clang-tidy-on-compile-commands.py \
213236
--compile-database out/sanitizers/compile_commands.json \
214237
--file-exclude-regex '/(repo|zzz_generated|lwip/standalone)/|-ReadImpl|-InvokeSubscribeImpl|CodegenDataModel_Write|QuieterReporting' \
238+
--file-list-file out/changed_files.txt \
215239
check \
216240
"
217241
- name: Clean output
@@ -382,6 +406,9 @@ jobs:
382406
steps:
383407
- name: Checkout
384408
uses: actions/checkout@v4
409+
with:
410+
fetch-depth: 2
411+
persist-credentials: true
385412
- name: Checkout submodules & Bootstrap
386413
uses: ./.github/actions/checkout-submodules-and-bootstrap
387414
with:
@@ -409,7 +436,7 @@ jobs:
409436
env:
410437
BUILD_TYPE: default
411438
run: |
412-
# We want to build various standalone example apps similar to what examples-linux-standalone.yaml
439+
# We want to build various standalone example apps (similar to what examples-linux-standalone.yaml
413440
# does), so use target_os="all" to get those picked up as part of the "unified" build. But then
414441
# to save CI resources we want to exclude the "host clang" build, which uses the pigweed clang.
415442
scripts/build/gn_gen.sh --args='target_os="all" is_asan=true enable_host_clang_build=false chip_data_model_check_die_on_failure=true' --export-compile-commands
@@ -418,14 +445,26 @@ jobs:
418445
- name: Ensure codegen is done for default
419446
run: |
420447
./scripts/run_in_build_env.sh "./scripts/run_codegen_targets.sh out/default"
448+
- name: Find changed files
449+
id: changed-files
450+
uses: tj-actions/changed-files@v45
421451
- name: Clang-tidy validation
422452
# NOTE: clang-tidy crashes on CodegenDataModel_Write due to Nullable/std::optional check.
423453
# See https://github.com/llvm/llvm-project/issues/97426
454+
env:
455+
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
424456
run: |
457+
touch out/changed_files.txt
458+
for file in ${ALL_CHANGED_FILES}; do
459+
echo "$file changed and will be considered for tidy"
460+
echo "$file" >>out/changed_files.txt
461+
done
462+
425463
./scripts/run_in_build_env.sh \
426464
"./scripts/run-clang-tidy-on-compile-commands.py \
427465
--compile-database out/default/compile_commands.json \
428466
--file-exclude-regex '/(repo|zzz_generated|lwip/standalone)/|CodegenDataModel_Write|QuieterReporting' \
467+
--file-list-file out/changed_files.txt \
429468
check \
430469
"
431470
- name: Uploading diagnostic logs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Copyright (c) 2024 Project CHIP Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Cancel workflow on PR
16+
on:
17+
workflow_dispatch:
18+
inputs:
19+
pull_request_id:
20+
description: 'PR number to consider'
21+
required: true
22+
type: number
23+
commit_sha:
24+
description: 'Cancel runs for this specific SHA'
25+
required: true
26+
type: string
27+
28+
jobs:
29+
cancel_workflow:
30+
name: Report on pull requests
31+
32+
runs-on: ubuntu-latest
33+
34+
# Don't run on forked repos
35+
if: github.repository_owner == 'project-chip'
36+
37+
steps:
38+
- name: Checkout
39+
uses: actions/checkout@v4
40+
- uses: actions/setup-python@v5
41+
with:
42+
python-version: '3.12'
43+
- name: Setup pip modules we use
44+
run: |
45+
pip install \
46+
click \
47+
coloredlogs \
48+
pygithub \
49+
&& echo "DONE installint python prerequisites"
50+
- name: Cancel runs
51+
run: |
52+
scripts/tools/cancel_workflows_for_pr.py \
53+
--pull-request ${{ inputs.pull_request_id }} \
54+
--commit-sha "${{ inputs.commit_sha }}" \
55+
--gh-api-token "${{ secrets.GITHUB_TOKEN }}"

.github/workflows/examples-bouffalolab.yaml

+12-37
Original file line numberDiff line numberDiff line change
@@ -58,25 +58,15 @@ jobs:
5858
run: |
5959
./scripts/run_in_build_env.sh \
6060
"./scripts/build/build_examples.py \
61-
--target bouffalolab-bl602dk-light-easyflash \
62-
--target bouffalolab-bl602dk-light-mfd-littlefs \
63-
--target bouffalolab-bl602dk-light-rpc-115200-littlefs \
61+
--target bouffalolab-bl602dk-light-mfd-littlefs-rpc-115200 \
6462
build \
6563
--copy-artifacts-to out/artifacts \
6664
"
6765
- name: Prepare some bloat report from the previous builds
6866
run: |
6967
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
70-
bl602 bl602 lighting-app \
71-
out/artifacts/bouffalolab-bl602dk-light-easyflash/chip-bl602-lighting-example.out \
72-
/tmp/bloat_reports/
73-
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
74-
bl602 bl602+mfd lighting-app \
75-
out/artifacts/bouffalolab-bl602dk-light-mfd-littlefs/chip-bl602-lighting-example.out \
76-
/tmp/bloat_reports/
77-
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
78-
bl602 bl602+rpc lighting-app \
79-
out/artifacts/bouffalolab-bl602dk-light-rpc-115200-littlefs/chip-bl602-lighting-example.out \
68+
bl602 bl602+mfd+littlefs+rpc lighting-app \
69+
out/artifacts/bouffalolab-bl602dk-light-mfd-littlefs-rpc-115200/chip-bl602-lighting-example.out \
8070
/tmp/bloat_reports/
8171
- name: Clean out build output
8272
run: rm -rf ./out
@@ -85,35 +75,25 @@ jobs:
8575
run: |
8676
./scripts/run_in_build_env.sh \
8777
"./scripts/build/build_examples.py \
88-
--target bouffalolab-bl706dk-light-easyflash \
89-
--target bouffalolab-bl706dk-light-mfd-littlefs \
90-
--target bouffalolab-bl706dk-light-ethernet-littlefs \
78+
--target bouffalolab-bl706dk-light-ethernet-easyflash \
9179
--target bouffalolab-bl706dk-light-wifi-littlefs \
92-
--target bouffalolab-bl706dk-light-rpc-115200-littlefs \
80+
--target bouffalolab-bl706dk-light-mfd-rpc-littlefs-115200 \
9381
build \
9482
--copy-artifacts-to out/artifacts \
9583
"
9684
- name: Prepare some bloat report from the previous builds
9785
run: |
9886
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
99-
bl702 bl702 lighting-app \
100-
out/artifacts/bouffalolab-bl706dk-light-easyflash/chip-bl702-lighting-example.out \
101-
/tmp/bloat_reports/
102-
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
103-
bl702 bl702+mfd lighting-app \
104-
out/artifacts/bouffalolab-bl706dk-light-mfd-littlefs/chip-bl702-lighting-example.out \
105-
/tmp/bloat_reports/
106-
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
107-
bl702 bl706-eth lighting-app \
108-
out/artifacts/bouffalolab-bl706dk-light-ethernet-littlefs/chip-bl702-lighting-example.out \
87+
bl702 bl702+eth lighting-app \
88+
out/artifacts/bouffalolab-bl706dk-light-ethernet-easyflash/chip-bl702-lighting-example.out \
10989
/tmp/bloat_reports/
11090
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
111-
bl702 bl706-wifi lighting-app \
91+
bl702 bl702+wifi lighting-app \
11292
out/artifacts/bouffalolab-bl706dk-light-wifi-littlefs/chip-bl702-lighting-example.out \
11393
/tmp/bloat_reports/
11494
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
115-
bl702 bl702+rpc lighting-app \
116-
out/artifacts/bouffalolab-bl706dk-light-rpc-115200-littlefs/chip-bl702-lighting-example.out \
95+
bl702 bl706+mfd+rpc+littlefs lighting-app \
96+
out/artifacts/bouffalolab-bl706dk-light-mfd-rpc-littlefs-115200/chip-bl702-lighting-example.out \
11797
/tmp/bloat_reports/
11898
- name: Clean out build output
11999
run: rm -rf ./out
@@ -123,19 +103,14 @@ jobs:
123103
run: |
124104
./scripts/run_in_build_env.sh \
125105
"./scripts/build/build_examples.py \
126-
--target bouffalolab-bl704ldk-light-easyflash \
127106
--target bouffalolab-bl704ldk-light-mfd-littlefs \
128107
build \
129108
--copy-artifacts-to out/artifacts \
130109
"
131110
- name: Prepare some bloat report from the previous builds
132111
run: |
133112
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
134-
bl702l bl702l lighting-app \
135-
out/artifacts/bouffalolab-bl704ldk-light-easyflash/chip-bl702l-lighting-example.out \
136-
/tmp/bloat_reports/
137-
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
138-
bl702l bl702l+mfd lighting-app \
113+
bl702l bl702l+mfd+littlefs lighting-app \
139114
out/artifacts/bouffalolab-bl704ldk-light-mfd-littlefs/chip-bl702l-lighting-example.out \
140115
/tmp/bloat_reports/
141116
- name: Clean out build output
@@ -145,4 +120,4 @@ jobs:
145120
uses: ./.github/actions/upload-size-reports
146121
if: ${{ !env.ACT }}
147122
with:
148-
platform-name: BouffaloLab
123+
platform-name: BouffaloLab

.github/workflows/examples-esp32.yaml

+9-6
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,11 @@ jobs:
105105
example_binaries/esp32-build/chip-all-clusters-app.elf \
106106
/tmp/bloat_reports/
107107
108-
- name: Build example Pigweed App
109-
run: scripts/examples/esp_example.sh pigweed-app sdkconfig.defaults
110-
111108
- name: Build example Lighting App (Target:ESP32H2)
112109
run: scripts/examples/esp_example.sh lighting-app sdkconfig.defaults.esp32h2 esp32h2
113110

114-
- name: Build example Lock App (Target:ESP32C6)
115-
run: scripts/examples/esp_example.sh lock-app sdkconfig.defaults.esp32c6 esp32c6
111+
- name: Build example Lighting App (Target:ESP32C6)
112+
run: scripts/examples/esp_example.sh lighting-app sdkconfig.defaults.esp32c6 esp32c6
116113

117114
- name: Uploading Size Reports
118115
uses: ./.github/actions/upload-size-reports
@@ -124,7 +121,7 @@ jobs:
124121
name: ESP32_1
125122

126123
runs-on: ubuntu-latest
127-
if: github.actor != 'restyled-io[bot]'
124+
if: github.actor != 'restyled-io[bot]' && github.repository_owner == 'espressif'
128125

129126
container:
130127
image: ghcr.io/project-chip/chip-build-esp32:81
@@ -168,3 +165,9 @@ jobs:
168165

169166
- name: Build example LIT ICD App (Target:ESP32H2)
170167
run: scripts/examples/esp_example.sh lit-icd-app sdkconfig.defaults esp32h2
168+
169+
- name: Build example Pigweed App
170+
run: scripts/examples/esp_example.sh pigweed-app sdkconfig.defaults
171+
172+
- name: Build example Lock App (Target:ESP32C6)
173+
run: scripts/examples/esp_example.sh lock-app sdkconfig.defaults.esp32c6 esp32c6

.github/workflows/qemu.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
BUILD_TYPE: esp32-qemu
3939

4040
runs-on: ubuntu-latest
41-
if: github.actor != 'restyled-io[bot]'
41+
if: github.actor != 'restyled-io[bot]' && github.repository_owner == 'espressif'
4242

4343
container:
4444
image: ghcr.io/project-chip/chip-build-esp32-qemu:81

.github/workflows/tests.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,7 @@ jobs:
210210
src/app/zap-templates/zcl/data-model/chip/sample-mei-cluster.xml \
211211
src/app/zap-templates/zcl/data-model/chip/electrical-energy-measurement-cluster.xml \
212212
src/app/zap-templates/zcl/data-model/chip/electrical-power-measurement-cluster.xml \
213+
src/app/zap-templates/zcl/data-model/chip/zone-management-cluster.xml \
213214
"
214215
- name: Build Apps
215216
run: |

config/esp32/components/chip/idf_component.yml

+8
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,14 @@ dependencies:
2626
- if: "idf_version >=5.0"
2727
- if: "target != esp32h2"
2828

29+
# This matches the dependency of esp_insights
30+
espressif/esp_diag_data_store:
31+
version: "1.0.1"
32+
require: public
33+
rules:
34+
- if: "idf_version >=5.0"
35+
- if: "target != esp32h2"
36+
2937
espressif/esp_rcp_update:
3038
version: "1.2.0"
3139
rules:

0 commit comments

Comments
 (0)