Skip to content

Commit 7526e0d

Browse files
Merge branch 'master' into feature/closure-lcd-interface
2 parents 36b56a7 + 18b2ec9 commit 7526e0d

File tree

1,953 files changed

+73216
-43635
lines changed

Some content is hidden

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

1,953 files changed

+73216
-43635
lines changed

.gemini/styleguide.md

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,37 @@
1-
# Gemini Code Review Instructions
1+
<!--
2+
IMPORTANT: This file should be kept in sync with the copilot instructions file. Any changes made here should be reflected there, and vice-versa, to maintain consistent review instructions for both AI tools.
3+
-->
4+
# Code Review Instructions
25

36
- Do not comment on content for XML files or .matter content for clusters
4-
- The SDK is implementing an in-progress matter specification that may not be available yet.
5-
Assume the matter specification is unknown and out of scope. Do not make uninformed assumptions
6-
about the Matter specification, or its contents.
7+
- The SDK is implementing an in-progress matter specification that may not be
8+
available yet. Assume the matter specification is unknown and out of scope. Do
9+
not make uninformed assumptions about the Matter specification, or its
10+
contents.
711
- Do not comment unless a change is probably desirable
812
- Do not repeat yourself. Be concise without losing meaning
9-
- Do not over-explain what you see in the code. Only describe code if there are specific questions or concerns (or if a question is asked)
10-
- Ensure that extensions or fixes to existing code should match the prevailing style of the original code
13+
- Do not over-explain what you see in the code. Only describe code if there are
14+
specific questions or concerns (or if a question is asked)
15+
- Ensure that extensions or fixes to existing code should match the prevailing
16+
style of the original code
1117
- Look for common typos and suggest fixes
1218
- Wrong years and years in the future are OK. Humans will catch these issues.
13-
- The SDK uses automated code formatting. Do not comment on whitespace, line length or other formatting
14-
or whitespace issues. A code formatter will handle this.
19+
- The SDK uses automated code formatting. Do not comment on whitespace, line
20+
length or other formatting or whitespace issues. A code formatter will handle
21+
this.
1522

1623
## Development guides
1724

18-
The SDK source code contains guides for development best practices in `docs/guides`, `docs/testing` and other `docs` locations.
19-
Use these as a reference for finding common patterns and potential issues in new code. In particular:
20-
- [docs/guides/writing_clusters](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/writing_clusters.md) describes how cluster handling
21-
is to be implemented
22-
- [docs/guides/migrating_ember_cluster_to_code_driven.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/migrating_ember_cluster_to_code_driven.md)
23-
describes how ember clusters can be migrated to code driven
24-
- [docs/testing/unit_testing.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/unit_testing.md)
25-
describes how to implement unit testing
26-
- [docs/testing/integration_tests.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/integration_tests.md)
27-
describes how to implement integration tests.
28-
25+
The SDK source code contains guides for development best practices in
26+
`docs/guides`, `docs/testing` and other `docs` locations. Use these as a
27+
reference for finding common patterns and potential issues in new code. In
28+
particular:
2929

30+
- [docs/guides/writing_clusters](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/writing_clusters.md)
31+
describes how cluster handling is to be implemented
32+
- [docs/guides/migrating_ember_cluster_to_code_driven.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/migrating_ember_cluster_to_code_driven.md)
33+
describes how ember clusters can be migrated to code driven
34+
- [docs/testing/unit_testing.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/unit_testing.md)
35+
describes how to implement unit testing
36+
- [docs/testing/integration_tests.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/integration_tests.md)
37+
describes how to implement integration tests.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: 'Delete Cache'
2+
description: 'Deletes a GitHub Actions cache by key using the GitHub API'
3+
inputs:
4+
cache-key:
5+
required: true
6+
description: 'The cache key to delete'
7+
github-token:
8+
required: true
9+
description: 'GitHub token for API authentication'
10+
runs:
11+
using: "composite"
12+
steps:
13+
- name: Delete cache
14+
uses: actions/github-script@v7
15+
env:
16+
CACHE_KEY: ${{ inputs.cache-key }}
17+
with:
18+
github-token: ${{ inputs.github-token }}
19+
script: |
20+
const owner = context.repo.owner;
21+
const repo = context.repo.repo;
22+
const key = process.env.CACHE_KEY;
23+
const ref = context.ref;
24+
25+
core.info(`Attempting to delete cache: ${key}`);
26+
27+
try {
28+
await github.rest.actions.deleteActionsCacheByKey({
29+
owner: owner,
30+
repo: repo,
31+
key: key,
32+
ref: ref
33+
});
34+
core.info(`Successfully deleted cache`);
35+
} catch (e) {
36+
if (e.status === 404) {
37+
core.info(`Cache not found (first run or already deleted)`);
38+
} else {
39+
core.warning(`Failed to delete cache: ${e.message}`);
40+
}
41+
}

.github/actions/setup-ccache/action.yml

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,23 @@ runs:
2323
using: "composite"
2424
steps:
2525
- name: Configure ccache
26-
shell: bash
27-
run: |
28-
mkdir -p .ccache
29-
echo "CCACHE_BASEDIR=${{ github.workspace }}" >> $GITHUB_ENV
30-
echo "CCACHE_SLOPPINESS=time_macros" >> $GITHUB_ENV
31-
echo "CCACHE_DIR=${{ github.workspace }}/.ccache" >> $GITHUB_ENV
32-
echo "CCACHE_COMPILERCHECK=content" >> $GITHUB_ENV
33-
echo "CCACHE_MAXSIZE=5G" >> $GITHUB_ENV
34-
echo "CCACHE_COMPRESS=1" >> $GITHUB_ENV
35-
echo "CCACHE_COMPRESSLEVEL=6" >> $GITHUB_ENV
26+
uses: pyTooling/Actions/[email protected]
27+
with:
28+
main: |
29+
mkdir -p .ccache
30+
echo "CCACHE_NOHASHDIR=1" >> $GITHUB_ENV
31+
echo "CCACHE_BASEDIR=${{ github.workspace }}" >> $GITHUB_ENV
32+
echo "CCACHE_NODIRECT=1" >> $GITHUB_ENV
33+
echo "CCACHE_PREFIX_CPP=${{ github.workspace }}/scripts/helpers/ccache-prefix-cpp.sh" >> $GITHUB_ENV
34+
echo "CCACHE_SLOPPINESS=time_macros" >> $GITHUB_ENV
35+
echo "CCACHE_DIR=${{ github.workspace }}/.ccache" >> $GITHUB_ENV
36+
echo "CCACHE_COMPILERCHECK=content" >> $GITHUB_ENV
37+
echo "CCACHE_MAXSIZE=5G" >> $GITHUB_ENV
38+
echo "CCACHE_COMPRESS=1" >> $GITHUB_ENV
39+
echo "CCACHE_COMPRESSLEVEL=6" >> $GITHUB_ENV
40+
echo "CHIP_PW_COMMAND_LAUNCHER=ccache" >> $GITHUB_ENV
41+
post: |
42+
ccache --show-stats
3643
- name: Optionally disable ccache
3744
if: ${{ inputs.disable == 'true' }}
3845
shell: bash
@@ -42,14 +49,11 @@ runs:
4249
id: cache-vars
4350
shell: bash
4451
run: |
45-
CACHE_WEEK=$(date +%G-%V)
46-
echo "CACHE_WEEK=${CACHE_WEEK}" >> "$GITHUB_ENV"
47-
4852
CACHE_SUFFIX="${{ inputs.cache-suffix }}"
4953
if [ -n "$CACHE_SUFFIX" ]; then
50-
CCACHE_KEY="ccache-${{ runner.os }}-${{ inputs.build-variant }}-w${CACHE_WEEK}-${CACHE_SUFFIX}"
54+
CCACHE_KEY="ccache-${{ runner.os }}-${{ inputs.build-variant }}-${CACHE_SUFFIX}"
5155
else
52-
CCACHE_KEY="ccache-${{ runner.os }}-${{ inputs.build-variant }}-w${CACHE_WEEK}"
56+
CCACHE_KEY="ccache-${{ runner.os }}-${{ inputs.build-variant }}"
5357
fi
5458
echo "CCACHE_KEY=${CCACHE_KEY}" >> "$GITHUB_ENV"
5559
echo "cache_key=${CCACHE_KEY}" >> "$GITHUB_OUTPUT"

.github/copilot-instructions.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<!--
2+
IMPORTANT: This file should be kept in sync with the Gemini instructions file. Any changes made here should be reflected there, and vice-versa, to maintain consistent review instructions for both AI tools.
3+
-->
4+
# Code Review Instructions
5+
6+
- Do not comment on content for XML files or .matter content for clusters
7+
- The SDK is implementing an in-progress matter specification that may not be
8+
available yet. Assume the matter specification is unknown and out of scope. Do
9+
not make uninformed assumptions about the Matter specification, or its
10+
contents.
11+
- Do not comment unless a change is probably desirable
12+
- Do not repeat yourself. Be concise without losing meaning
13+
- Do not over-explain what you see in the code. Only describe code if there are
14+
specific questions or concerns (or if a question is asked)
15+
- Ensure that extensions or fixes to existing code should match the prevailing
16+
style of the original code
17+
- Look for common typos and suggest fixes
18+
- Wrong years and years in the future are OK. Humans will catch these issues.
19+
- The SDK uses automated code formatting. Do not comment on whitespace, line
20+
length or other formatting or whitespace issues. A code formatter will handle
21+
this.
22+
23+
## Development guides
24+
25+
The SDK source code contains guides for development best practices in
26+
`docs/guides`, `docs/testing` and other `docs` locations. Use these as a
27+
reference for finding common patterns and potential issues in new code. In
28+
particular:
29+
30+
- [docs/guides/writing_clusters](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/writing_clusters.md)
31+
describes how cluster handling is to be implemented
32+
- [docs/guides/migrating_ember_cluster_to_code_driven.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/guides/migrating_ember_cluster_to_code_driven.md)
33+
describes how ember clusters can be migrated to code driven
34+
- [docs/testing/unit_testing.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/unit_testing.md)
35+
describes how to implement unit testing
36+
- [docs/testing/integration_tests.md](https://github.com/project-chip/connectedhomeip/blob/master/docs/testing/integration_tests.md)
37+
describes how to implement integration tests.

.github/dependabot.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ updates:
2424
- dependency-name: "third_party/mbedtls/repo"
2525
- dependency-name: "third_party/openthread/repo"
2626

27+
- dependency-name: "third_party/amazon-kinesis-video-streams-webrtc-sdk-c/repo"
2728
- dependency-name: "third_party/ameba/repo"
2829
- dependency-name: "third_party/android_deps/repo"
2930
- dependency-name: "third_party/asr/repo"
@@ -41,9 +42,6 @@ updates:
4142
- dependency-name: "third_party/libdatachannel/repo"
4243
- dependency-name: "third_party/libwebsockets/repo"
4344
- dependency-name: "third_party/lwip/repo"
44-
- dependency-name: "third_party/mbed-mcu-boot/repo"
45-
- dependency-name: "third_party/mbed-os-cypress-capsense-button/repo"
46-
- dependency-name: "third_party/mbed-os-posix-socket/repo"
4745
- dependency-name: "third_party/mbedtls/repo"
4846
- dependency-name: "third_party/mt793x_sdk/repo"
4947
- dependency-name: "third_party/mynewt-core/repo"

.github/workflows/bloat_check.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
runs-on: ubuntu-latest
3535

3636
container:
37-
image: ghcr.io/project-chip/chip-build:169
37+
image: ghcr.io/project-chip/chip-build:174
3838

3939
steps:
4040
- name: Checkout

.github/workflows/build.yaml

Lines changed: 14 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
if: github.actor != 'restyled-io[bot]'
4444

4545
container:
46-
image: ghcr.io/project-chip/chip-build:169
46+
image: ghcr.io/project-chip/chip-build:174
4747
volumes:
4848
- "/:/runner-root-volume"
4949
- "/tmp/log_output:/tmp/test_logs"
@@ -72,7 +72,7 @@ jobs:
7272
platform: linux
7373
- name: Initialize CodeQL
7474
if: ${{ inputs.run-codeql }}
75-
uses: github/codeql-action/init@v3
75+
uses: github/codeql-action/init@v4
7676
with:
7777
languages: "cpp"
7878
queries: security-extended, security-and-quality
@@ -120,7 +120,7 @@ jobs:
120120
if: inputs.run-codeql != true
121121
run: scripts/run_in_build_env.sh "ninja -C ./out"
122122
- name: Uploading core files
123-
uses: actions/upload-artifact@v4
123+
uses: actions/upload-artifact@v5
124124
if: ${{ failure() && !env.ACT }}
125125
with:
126126
name: crash-core-linux-gcc-debug
@@ -138,7 +138,7 @@ jobs:
138138
# If re-enabling, some subset of this should be picked
139139
#
140140
# - name: Uploading objdir for debugging
141-
# uses: actions/upload-artifact@v4
141+
# uses: actions/upload-artifact@v5
142142
# if: ${{ failure() && !env.ACT }}
143143
# with:
144144
# name: crash-objdir-linux-gcc-debug
@@ -153,7 +153,7 @@ jobs:
153153
if: github.actor != 'restyled-io[bot]' && inputs.run-codeql != true
154154

155155
container:
156-
image: ghcr.io/project-chip/chip-build:169
156+
image: ghcr.io/project-chip/chip-build:174
157157
volumes:
158158
- "/:/runner-root-volume"
159159
- "/tmp/log_output:/tmp/test_logs"
@@ -187,7 +187,7 @@ jobs:
187187
# deactivate until a better workaround is found
188188
# - name: Initialize CodeQL
189189
# if: ${{ inputs.run-codeql }}
190-
# uses: github/codeql-action/init@v3
190+
# uses: github/codeql-action/init@v4
191191
# with:
192192
# languages: "cpp"
193193
- name: Setup and Build Simulated Device
@@ -235,11 +235,6 @@ jobs:
235235
- name: Find changed files
236236
id: changed-files
237237
uses: tj-actions/changed-files@v47
238-
with:
239-
# Exclude all files under "third_party/"
240-
files-ignore: |
241-
third_party/
242-
243238
- name: Clang-tidy validation
244239
# NOTE: clang-tidy crashes on CodegenDataModel_Write due to Nullable/std::optional check.
245240
# See https://github.com/llvm/llvm-project/issues/97426
@@ -303,7 +298,7 @@ jobs:
303298
# language: cpp
304299

305300
- name: Uploading core files
306-
uses: actions/upload-artifact@v4
301+
uses: actions/upload-artifact@v5
307302
if: ${{ failure() && !env.ACT }}
308303
with:
309304
name: crash-core-linux
@@ -316,7 +311,7 @@ jobs:
316311
# If re-enabling, some subset of this should be picked
317312
#
318313
# - name: Uploading objdir for debugging
319-
# uses: actions/upload-artifact@v4
314+
# uses: actions/upload-artifact@v5
320315
# if: ${{ failure() && !env.ACT }}
321316
# with:
322317
# name: crash-objdir-linux
@@ -331,7 +326,7 @@ jobs:
331326
if: github.actor != 'restyled-io[bot]' && inputs.run-codeql != true
332327

333328
container:
334-
image: ghcr.io/project-chip/chip-build:169
329+
image: ghcr.io/project-chip/chip-build:174
335330
volumes:
336331
- "/:/runner-root-volume"
337332
- "/tmp/log_output:/tmp/test_logs"
@@ -394,7 +389,7 @@ jobs:
394389
if: github.actor != 'restyled-io[bot]' && inputs.run-codeql != true
395390

396391
container:
397-
image: ghcr.io/project-chip/chip-build:169
392+
image: ghcr.io/project-chip/chip-build:174
398393
volumes:
399394
- "/:/runner-root-volume"
400395
- "/tmp/log_output:/tmp/test_logs"
@@ -423,7 +418,7 @@ jobs:
423418
424419
build_darwin:
425420
name: Build on Darwin (clang, simulated)
426-
runs-on: macos-13
421+
runs-on: macos-14
427422
if: github.actor != 'restyled-io[bot]' && inputs.run-codeql != true
428423

429424
steps:
@@ -442,7 +437,7 @@ jobs:
442437
# Build on Darwin + CodeQL often takes 6 hours (which is more than the maximum allowed by GitHub Runners), Deactivate it until we can investigate this
443438
# - name: Initialize CodeQL
444439
# if: ${{ inputs.run-codeql }}
445-
# uses: github/codeql-action/init@v3
440+
# uses: github/codeql-action/init@v4
446441
# with:
447442
# languages: "cpp"
448443

@@ -492,7 +487,7 @@ jobs:
492487
check \
493488
"
494489
- name: Uploading diagnostic logs
495-
uses: actions/upload-artifact@v4
490+
uses: actions/upload-artifact@v5
496491
if: ${{ failure() && !env.ACT }}
497492
with:
498493
name: crash-log-darwin
@@ -518,7 +513,7 @@ jobs:
518513
runs-on: ubuntu-latest
519514

520515
container:
521-
image: ghcr.io/project-chip/chip-build:169
516+
image: ghcr.io/project-chip/chip-build:174
522517
options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0
523518
net.ipv4.conf.all.forwarding=0 net.ipv6.conf.all.forwarding=0"
524519

.github/workflows/cert_test_checks.yaml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@ name: Certification test checks
1616

1717
on:
1818
pull_request:
19-
paths:
20-
- "src/app/tests/suites/certification/**"
2119
permissions:
2220
contents: read
2321

@@ -33,7 +31,8 @@ jobs:
3331
- name: Checkout
3432
uses: actions/checkout@v5
3533
with:
36-
fetch-depth: 0
34+
# Clone more than one commit because we need HEAD^..HEAD diff
35+
fetch-depth: 2
3736
- name: Run checks
3837
run: |
3938
python3 scripts/tests/matter_yaml_linter.py

0 commit comments

Comments
 (0)