Skip to content

Commit b510cc9

Browse files
Merge branch 'master' into TC-SC-4.1-automation-latest
2 parents 09d64c9 + cc93907 commit b510cc9

File tree

566 files changed

+23007
-4219
lines changed

Some content is hidden

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

566 files changed

+23007
-4219
lines changed

.github/workflows/chef.yaml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
if: github.actor != 'restyled-io[bot]'
9797

9898
container:
99-
image: ghcr.io/project-chip/chip-build-esp32:172
99+
image: ghcr.io/project-chip/chip-build-esp32:174
100100
options: --user root
101101

102102
steps:
@@ -106,6 +106,16 @@ jobs:
106106
uses: ./.github/actions/checkout-submodules-and-bootstrap
107107
with:
108108
platform: esp32
109+
110+
# We cannot add esp-idf-kconfig==2.5.0 to rquirements.txt because it
111+
# will break the nuttx workflow which requires the older version of
112+
# the kconfiglib and esp-idf-kconfig==2.5.0 installs newer version
113+
# so, install it in in the virtual environment here
114+
- name: Install esp-idf-kconfig
115+
run: |
116+
./scripts/run_in_build_env.sh \
117+
"pip install esp-idf-kconfig==2.5.0"
118+
109119
- name: CI Examples ESP32
110120
shell: bash
111121
run: |

.github/workflows/examples-esp32.yaml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,10 @@ jobs:
5555
with:
5656
gh-context: ${{ toJson(github) }}
5757

58-
# Install esp-idf-kconfig==2.5.0 in the virtual environment here
59-
# so it will not affect other workflows
58+
# We cannot add esp-idf-kconfig==2.5.0 to rquirements.txt because it
59+
# will break the nuttx workflow which requires the older version of
60+
# the kconfiglib and esp-idf-kconfig==2.5.0 installs newer version
61+
# so, install it in in the virtual environment here
6062
- name: Install esp-idf-kconfig
6163
run: |
6264
./scripts/run_in_build_env.sh \
@@ -79,6 +81,9 @@ jobs:
7981
out/esp32-c3devkit-all-clusters/chip-all-clusters-app.elf \
8082
/tmp/bloat_reports/
8183
84+
- name: Remove built artifacts for all-clusters
85+
run: rm -rf out/esp32-c3devkit-all-clusters
86+
8287
- name: Prepare code pregen and ensure compile time pregen not possible
8388
run: |
8489
./scripts/run_in_build_env.sh "./scripts/codepregen.py ./zzz_pregenerated"
@@ -104,6 +109,9 @@ jobs:
104109
mv scripts/codegen.py.renamed scripts/codegen.py
105110
mv scripts/tools/zap/generate.py.renamed scripts/tools/zap/generate.py
106111
112+
- name: Remove built artifacts for all-clusters-minimal
113+
run: rm -rf out/esp32-m5stack-all-clusters-minimal
114+
107115
- name: Check for changed paths
108116
uses: dorny/paths-filter@v3
109117
id: changed_paths
@@ -139,6 +147,9 @@ jobs:
139147
--copy-artifacts-to out/artifacts \
140148
"
141149
150+
- name: Remove built artifacts for all-clusters-rpc-ipv6only
151+
run: rm -rf out/esp32-devkitc-all-clusters-rpc-ipv6only
152+
142153
- name: Build example Lighting App (Target:ESP32C6)
143154
run: scripts/examples/esp_example.sh lighting-app sdkconfig.wifi_thread.defaults esp32c6
144155

.github/workflows/tests.yaml

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -795,6 +795,35 @@ jobs:
795795
- name: ccache stats
796796
run: ccache -s
797797

798+
- name: Build linux-x64-requestor-app
799+
env:
800+
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache"
801+
run: >-
802+
./scripts/run_in_build_env.sh "./scripts/build/build_examples.py
803+
--target linux-x64-ota-requestor-${BUILD_VARIANT}-tsan-clang-test
804+
--pw-command-launcher=ccache build --copy-artifacts-to objdir-clone
805+
&& rm -rf out/linux-x64-ota-requestor-${BUILD_VARIANT}-tsan-clang-test"
806+
807+
- name: Build linux-x64-provider-app
808+
env:
809+
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache"
810+
run: >-
811+
./scripts/run_in_build_env.sh "./scripts/build/build_examples.py
812+
--target linux-x64-ota-provider-${BUILD_VARIANT}-tsan-clang-test
813+
--pw-command-launcher=ccache build --copy-artifacts-to objdir-clone
814+
&& rm -rf out/linux-x64-ota-provider-${BUILD_VARIANT}-tsan-clang-test"
815+
816+
- name: Build Software Update ota images with new version.
817+
env:
818+
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache"
819+
run: >-
820+
./scripts/run_in_build_env.sh "./scripts/build/build_ota_images.sh --out-prefix out/su_ota_images_min --max-range 2
821+
&& mv out/su_ota_images_min-v*/*.ota objdir-clone
822+
&& rm -rf out/su_ota_images_min-v*"
823+
824+
- name: ccache stats
825+
run: ccache -s
826+
798827
- name: Install push_av_server dependencies
799828
run: >-
800829
./scripts/run_in_python_env.sh out/venv \
@@ -822,19 +851,25 @@ jobs:
822851
echo "FABRIC_SYNC_APP: objdir-clone/linux-x64-fabric-sync-${BUILD_VARIANT}-clang/fabric-sync" >> /tmp/test_env.yaml
823852
echo "LIGHTING_APP_NO_UNIQUE_ID: objdir-clone/linux-x64-light-data-model-no-unique-id-${BUILD_VARIANT}-clang/chip-lighting-app" >> /tmp/test_env.yaml
824853
echo "TERMS_AND_CONDITIONS_APP: objdir-clone/linux-x64-terms-and-conditions/chip-terms-and-conditions-app" >> /tmp/test_env.yaml
854+
echo "OTA_PROVIDER_APP: objdir-clone/linux-x64-ota-provider-${BUILD_VARIANT}-tsan-clang-test/chip-ota-provider-app" >> /tmp/test_env.yaml
855+
echo "OTA_REQUESTOR_APP: objdir-clone/linux-x64-ota-requestor-${BUILD_VARIANT}-tsan-clang-test/chip-ota-requestor-app" >> /tmp/test_env.yaml
825856
echo "TRACE_APP: out/trace_data/app-{SCRIPT_BASE_NAME}" >> /tmp/test_env.yaml
826857
echo "JF_CONTROL_APP: objdir-clone/linux-x64-jf-control-app/jfc-app" >> /tmp/test_env.yaml
827858
echo "JF_ADMIN_APP: objdir-clone/linux-x64-jf-admin-app/jfa-app" >> /tmp/test_env.yaml
828859
echo "CLOSURE_APP: objdir-clone/linux-x64-closure-${BUILD_VARIANT}-tsan-clang-test-unified/closure-app" >> /tmp/test_env.yaml
829860
echo "WATER_LEAK_DETECTOR_APP: objdir-clone/linux-x64-water-leak-detector-${BUILD_VARIANT}-tsan-clang-test-unified/water-leak-detector-app" >> /tmp/test_env.yaml
830861
echo "PUSH_AV_SERVER: src/tools/push_av_server/server.py" >> /tmp/test_env.yaml
831862
863+
# SU OTA Images
864+
echo "SU_OTA_REQUESTOR_V2: objdir-clone/chip-ota-requestor-app_v2.min.ota" >> /tmp/test_env.yaml
865+
832866
# Generic trace setups after applications
833867
echo "TRACE_TEST_JSON: out/trace_data/test-{SCRIPT_BASE_NAME}" >> /tmp/test_env.yaml
834868
echo "TRACE_TEST_PERFETTO: out/trace_data/test-{SCRIPT_BASE_NAME}" >> /tmp/test_env.yaml
835869
836870
- name: Verify Testing Support
837871
run: |
872+
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/test_ota_images_versions.py -i objdir-clone/chip-ota-requestor-app_v2.min.ota -v 2'
838873
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/test_IDM_10_4.py'
839874
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/test_TC_ICDM_2_1_full_pics.py'
840875
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/test_TC_ICDM_2_1_min_pics.py'
@@ -853,7 +888,6 @@ jobs:
853888
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/TestSpecParsingSelection.py'
854889
scripts/run_in_python_env.sh out/venv 'python3 src/python_testing/test_testing/TestSpecParsingSupport.py'
855890
scripts/run_in_python_env.sh out/venv 'PYTHONPATH=src/python_testing:$PYTHONPATH python3 -m unittest discover -s src/python_testing/mdns_discovery/tests -p "test_*.py"'
856-
857891
- name: Run Tests
858892
run: |
859893
mkdir -p out/trace_data

.restyled.yaml

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -224,21 +224,12 @@ restylers:
224224
- "**/*.sh"
225225
- "**/*.bash"
226226
- name: autopep8
227-
image: restyled/restyler-autopep8:v2.3.1
228-
command:
229-
- autopep8
230-
- "--in-place"
231-
arguments: []
232-
include:
233-
- "**/*.py"
234-
interpreters:
235-
- python
227+
image: public.ecr.aws/restyled-io/restyler-autopep8:v2.3
236228
- name: isort
237-
image: restyled/restyler-isort:v5.11.2
229+
image: public.ecr.aws/restyled-io/restyler-isort:v7.0
230+
- name: ruff
231+
image: public.ecr.aws/restyled-io/restyler-ruff:v0.14
238232
command:
239-
- isort
240-
arguments: []
241-
include:
242-
- "**/*.py"
243-
interpreters:
244-
- python
233+
- ruff
234+
- check
235+
- --fix-only

build/chip/chip_test_suite.gni

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ template("chip_test_suite") {
9595
} else {
9696
public_deps += [ "${chip_root}/src/platform/logging:default" ]
9797
}
98+
public_deps += [ "${chip_root}/src/lib/support/tests:pw-test-macros" ]
9899

99100
if (chip_device_platform == "esp32") {
100101
complete_static_lib = true

config/common/cmake/make_gn_args.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,12 @@ def write_gn_args(args):
5656
filtered_value = filter(lambda v: v != "D", filtered_value)
5757
filtered_value = filter(lambda v: v != "isystem", filtered_value)
5858
# Escaped quote and dollar sign characters
59-
filtered_value = map(lambda v: v.replace('"', '\\"'), filtered_value)
60-
filtered_value = map(lambda v: v.replace('$', '\\$'), filtered_value)
59+
filtered_value = (v.replace('"', '\\"') for v in filtered_value)
60+
filtered_value = (v.replace('$', '\\$') for v in filtered_value)
6161
# Remove white spaces around the argument and remove internal whitespace
6262
# for correct splitting in string_split() function
63-
filtered_value = map(lambda v: v.strip(), filtered_value)
64-
filtered_value = map(lambda v: v.replace(' ', ''), filtered_value)
63+
filtered_value = (v.strip() for v in filtered_value)
64+
filtered_value = (v.replace(' ', '') for v in filtered_value)
6565
# Remove duplicates
6666
filtered_value = list(dict.fromkeys(filtered_value))
6767

config/esp32/components/chip/create_args_gn.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,13 @@
4444
compile_commands = json.load(compile_commands_json)
4545

4646
def get_compile_flags(src_file):
47-
compile_command = list(map(lambda res: res["command"],
48-
filter(lambda cmd: cmd["file"] == src_file, compile_commands)))
47+
compile_command = [
48+
res["command"]
49+
for res in filter(lambda cmd: cmd["file"] == src_file, compile_commands)
50+
]
4951

5052
if len(compile_command) != 1:
51-
raise Exception("Failed to resolve compile flags for %s", src_file)
53+
raise Exception(f"Failed to resolve compile flags for {src_file}")
5254

5355
compile_command = compile_command[0]
5456
# Trim compiler, input and output
@@ -57,12 +59,10 @@ def get_compile_flags(src_file):
5759
replace = "-I%s" % args.idf_path
5860
replace_with = "-isystem%s" % args.idf_path
5961

60-
compile_flags = list(map(lambda f: ('"%s"' % f).replace(
61-
replace, replace_with), compile_flags))
62+
compile_flags = [f'"{f}"'.replace(replace, replace_with) for f in compile_flags]
6263

6364
if args.filter_out:
64-
filter_out = list(map(lambda f: ('"%s"' % f),
65-
args.filter_out.split(';')))
65+
filter_out = [f'"{f}"' for f in args.filter_out.split(';')]
6666
compile_flags = [c for c in compile_flags if c not in filter_out]
6767

6868
return compile_flags

config/nxp/cmake/Kconfig.matter.common

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,13 @@ config CHIP_ICD_UAT_SUPPORT
400400
Enables the User Active Mode Trigger (UAT) support in Matter. It allows the User to use application specific
401401
means (e.g. button press) to trigger an ICD device to enter the active mode and become responsive.
402402

403+
config CHIP_ICD_DSLS_SUPPORT
404+
bool "Intermittently Connected Device Dynamic SIT LIT support"
405+
depends on CHIP_ICD_LIT_SUPPORT
406+
help
407+
Enables the Dynamic SIT LIT support in Matter. It allows the application to dynamically switch between
408+
SIT and LIT modes, as long as the requirements for these modes are met (e.g. device has at least one active ICD client).
409+
403410
config CHIP_ICD_CLIENTS_PER_FABRIC
404411
int "Intermittently Connected Device number of clients per fabric"
405412
default 2

config/nxp/cmake/common.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ matter_add_gn_arg_bool("chip_enable_ethernet" CONFIG_CHIP_ETHERNET)
4949
matter_add_gn_arg_bool("chip_system_config_provide_statistics" CONFIG_CHIP_STATISTICS)
5050
matter_add_gn_arg_bool("chip_enable_icd_server" CONFIG_CHIP_ENABLE_ICD_SUPPORT)
5151
matter_add_gn_arg_bool("chip_enable_icd_lit" CONFIG_CHIP_ICD_LIT_SUPPORT)
52+
matter_add_gn_arg_bool("chip_enable_icd_dsls" CONFIG_CHIP_ICD_DSLS_SUPPORT)
5253
matter_add_gn_arg_bool("chip_enable_ota_requestor" CONFIG_CHIP_OTA_REQUESTOR)
5354
matter_add_gn_arg_bool("chip_system_config_use_openthread_inet_endpoints" CONFIG_CHIP_USE_OT_ENDPOINT)
5455

credentials/fetch_paa_certs_from_dcl.py

100644100755
File mode changed.

0 commit comments

Comments
 (0)