Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add some bits to exercise global structs/enums to Unit Testing cluster. #34540

Merged
merged 1 commit into from
Aug 1, 2024

Conversation

bzbarsky-apple
Copy link
Contributor

@bzbarsky-apple bzbarsky-apple commented Jul 26, 2024

  • Adds things to the Unit Testing cluster XML.
  • This requires those things to be enabled in all-clusters-app, all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
  • That requires an implementation in test-cluster-server
  • At which point might as well add a YAML test to exercise it all.

skip-protocol-compatibility, because this is only changing the Unit Testing cluster (adding fields to structs there).

Copy link

semanticdiff-com bot commented Jul 26, 2024

Review changes with SemanticDiff.

Analyzed 10 of 61 files.

Overall, the semantic diff is 2% smaller than the GitHub diff.

File Information
Filename Status
zzz_generated/darwin-framework-tool/zap-generated/cluster/Commands.h Unsupported file format
zzz_generated/chip-tool/zap-generated/cluster/Commands.h Unsupported file format
zzz_generated/chip-tool/zap-generated/cluster/ComplexArgumentParser.cpp Unsupported file format
zzz_generated/chip-tool/zap-generated/cluster/ComplexArgumentParser.h Unsupported file format
zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.cpp Unsupported file format
zzz_generated/chip-tool/zap-generated/cluster/logging/DataModelLogger.h Unsupported file format
zzz_generated/app-common/app-common/zap-generated/callback.h Unsupported file format
zzz_generated/app-common/app-common/zap-generated/cluster-objects.cpp Unsupported file format
zzz_generated/app-common/app-common/zap-generated/cluster-objects.h Unsupported file format
zzz_generated/app-common/app-common/zap-generated/ids/Attributes.h Unsupported file format
zzz_generated/app-common/app-common/zap-generated/ids/Commands.h Unsupported file format
zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.cpp Unsupported file format
zzz_generated/app-common/app-common/zap-generated/attributes/Accessors.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRAttributeSpecifiedCheck.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRAttributeTLVValueDecoder.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRBaseClusters.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRClusterConstants.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRClusterNames.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRClusters.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRClusters.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloadsObjc.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRCommandPayloads_Internal.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTREventTLVValueDecoder.mm Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.h Unsupported file format
src/darwin/Framework/CHIP/zap-generated/MTRStructsObjc.mm Unsupported file format
src/darwin/Framework/CHIP/templates/availability.yaml Unsupported file format
✔️ src/controller/python/chip/clusters/CHIPClusters.py Analyzed
✔️ src/controller/python/chip/clusters/Objects.py Analyzed
src/controller/java/zap-generated/CHIPAttributeTLVValueDecoder.cpp Unsupported file format
src/controller/java/zap-generated/CHIPEventTLVValueDecoder.cpp Unsupported file format
src/controller/java/tests/chip/devicecontroller/cluster/ChipClusterEventStructTest.kt Unsupported file format
src/controller/java/tests/chip/devicecontroller/cluster/ChipClusterStructTest.kt Unsupported file format
src/controller/java/generated/java/matter/controller/cluster/files.gni Unsupported file format
src/controller/java/generated/java/matter/controller/cluster/structs/UnitTestingClusterNestedStruct.kt Unsupported file format
src/controller/java/generated/java/matter/controller/cluster/structs/UnitTestingClusterSimpleStruct.kt Unsupported file format
src/controller/java/generated/java/matter/controller/cluster/structs/UnitTestingClusterTestGlobalStruct.kt Unsupported file format
src/controller/java/generated/java/matter/controller/cluster/clusters/UnitTestingCluster.kt Unsupported file format
✔️ src/controller/java/generated/java/chip/devicecontroller/ChipClusters.java Analyzed
✔️ src/controller/java/generated/java/chip/devicecontroller/ChipStructs.java 5.79% smaller
✔️ src/controller/java/generated/java/chip/devicecontroller/ClusterIDMapping.java 0.94% smaller
✔️ src/controller/java/generated/java/chip/devicecontroller/ClusterInfoMapping.java Analyzed
✔️ src/controller/java/generated/java/chip/devicecontroller/ClusterReadMapping.java Analyzed
✔️ src/controller/java/generated/java/chip/devicecontroller/ClusterWriteMapping.java Analyzed
src/controller/java/generated/java/chip/devicecontroller/cluster/files.gni Unsupported file format
src/controller/java/generated/java/chip/devicecontroller/cluster/structs/UnitTestingClusterNestedStruct.kt Unsupported file format
src/controller/java/generated/java/chip/devicecontroller/cluster/structs/UnitTestingClusterSimpleStruct.kt Unsupported file format
src/controller/java/generated/java/chip/devicecontroller/cluster/structs/UnitTestingClusterTestGlobalStruct.kt Unsupported file format
src/controller/data_model/controller-clusters.matter Unsupported file format
✔️ src/app/zap-templates/zcl/zcl-with-test-extensions.json 50.0% smaller
✔️ src/app/zap-templates/zcl/zcl.json 50.0% smaller
src/app/zap-templates/zcl/data-model/chip/test-cluster.xml Unsupported file format
src/app/tests/suites/TestCluster.yaml Unsupported file format
src/app/clusters/test-cluster-server/test-cluster-server.cpp Unsupported file format
examples/chef/devices/rootnode_contactsensor_27f76aeaf5.matter Unsupported file format
examples/chef/devices/rootnode_contactsensor_27f76aeaf5.zap Unsupported file format
examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter Unsupported file format
examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.zap Unsupported file format
examples/all-clusters-app/all-clusters-common/all-clusters-app.matter Unsupported file format
examples/all-clusters-app/all-clusters-common/all-clusters-app.zap Unsupported file format

Copy link

github-actions bot commented Jul 26, 2024

PR #34540: Size comparison from 95bf668 to a64c81e

Full report (50 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, mbed, nrfconnect, nxp, psoc6, qpg, stm32)
platform target config section 95bf668 a64c81e change % change
bl602 lighting-app bl602 FLASH 1274146 1274146 0 0.0
RAM 95424 95424 0 0.0
bl602+mfd FLASH 1288404 1288404 0 0.0
RAM 95568 95568 0 0.0
bl602+rpc FLASH 1313114 1313114 0 0.0
RAM 103848 103848 0 0.0
bl702 lighting-app bl702 FLASH 1095040 1095040 0 0.0
RAM 15245 15245 0 0.0
bl702+mfd FLASH 1105734 1105734 0 0.0
RAM 15397 15397 0 0.0
bl702+rpc FLASH 1185106 1185106 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 878084 878084 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1130780 1130780 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1081938 1081938 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1093200 1093200 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109276 109276 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117020 117020 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606670 606670 0 0.0
RAM 204564 204564 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204836 204836 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77740 77740 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72808 72808 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609737 609737 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625433 625433 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593661 593661 0 0.0
RAM 67852 67852 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134568 134568 0 0.0
lock-app BRD4338a FLASH 734684 734676 -8 -0.0
RAM 208004 208004 0 0.0
window-app BRD4187C FLASH 1014772 1014772 0 0.0
RAM 126648 126648 0 0.0
esp32 all-clusters-app c3devkit DRAM 91020 91092 72 0.1
FLASH 1482368 1483058 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117500 117572 72 0.1
FLASH 1551631 1552327 696 0.0
IRAM 125403 125403 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226720 226720 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897228 897820 592 0.1
RAM 141608 141680 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962828 963420 592 0.1
RAM 140712 140784 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140464 140536 72 0.1
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70104 70104 0 0.0
k32w1+release FLASH 591808 591808 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69608 69608 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82912 82912 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622948 1623940 992 0.1
RAM 209776 209848 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533444 1534436 992 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199848 199848 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224328 224328 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104680 104680 0 0.0
lock-app qpg6105+debug FLASH 612288 612288 0 0.0
RAM 99320 99320 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144300 144300 0 0.0

@bzbarsky-apple bzbarsky-apple added the skip-protocol-compatibility Marker that protocol backwards compatibility checks are to be skipped label Jul 26, 2024
@github-actions github-actions bot added the tools label Jul 26, 2024
Copy link

github-actions bot commented Jul 26, 2024

PR #34540: Size comparison from ade5285 to 1925a98

Increases above 0.2%:

platform target config section ade5285 1925a98 change % change
linux chip-tool debug FLASH 12336940 12412094 75154 0.6
RAM 553458 555314 1856 0.3
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
fabric-admin debug FLASH 11343039 11416541 73502 0.6
RAM 550298 552122 1824 0.3
shell debug FLASH 2991613 3000013 8400 0.3
tv-casting-app debug FLASH 10549533 10625709 76176 0.7
RAM 638984 641256 2272 0.4
tizen all-clusters-app arm FLASH 1669024 1674536 5512 0.3
chip-tool-ubsan arm FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9
Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section ade5285 1925a98 change % change
bl602 lighting-app bl602 FLASH 1274146 1274146 0 0.0
RAM 95424 95424 0 0.0
bl602+mfd FLASH 1288404 1288404 0 0.0
RAM 95568 95568 0 0.0
bl602+rpc FLASH 1313114 1313114 0 0.0
RAM 103848 103848 0 0.0
bl702 lighting-app bl702 FLASH 1095040 1095040 0 0.0
RAM 15245 15245 0 0.0
bl702+mfd FLASH 1105734 1105734 0 0.0
RAM 15397 15397 0 0.0
bl702+rpc FLASH 1185106 1185106 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 878084 878084 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1130780 1130780 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1081938 1081938 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1093200 1093200 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109276 109276 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117020 117020 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606670 606670 0 0.0
RAM 204564 204564 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204836 204836 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77740 77740 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72808 72808 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609737 609737 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625433 625433 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593661 593661 0 0.0
RAM 67852 67852 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134568 134568 0 0.0
lock-app BRD4338a FLASH 734684 734676 -8 -0.0
RAM 208004 208004 0 0.0
window-app BRD4187C FLASH 1014772 1014772 0 0.0
RAM 126648 126648 0 0.0
esp32 all-clusters-app c3devkit DRAM 91020 91092 72 0.1
FLASH 1482368 1483058 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117500 117572 72 0.1
FLASH 1551631 1552327 696 0.0
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4632 4632 0 0.0
FLASH 2710575 2710575 0 0.0
RAM 125200 125200 0 0.0
all-clusters-app debug unknown 5416 5416 0 0.0
FLASH 5902302 5910828 8526 0.1
RAM 499576 500088 512 0.1
all-clusters-minimal-app debug unknown 5312 5312 0 0.0
FLASH 5306932 5315328 8396 0.2
RAM 235920 235984 64 0.0
bridge-app debug unknown 5296 5296 0 0.0
FLASH 4707164 4707164 0 0.0
RAM 214048 214048 0 0.0
chip-tool debug unknown 5784 5784 0 0.0
FLASH 12336940 12412094 75154 0.6
RAM 553458 555314 1856 0.3
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11343039 11416541 73502 0.6
RAM 550298 552122 1824 0.3
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4463202 4463202 0 0.0
RAM 199248 199248 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5631521 5631521 0 0.0
RAM 224464 224464 0 0.0
lock-app debug unknown 5232 5232 0 0.0
FLASH 4757958 4757958 0 0.0
RAM 200704 200704 0 0.0
ota-provider-app debug unknown 4608 4608 0 0.0
FLASH 4402420 4402420 0 0.0
RAM 194880 194880 0 0.0
ota-requestor-app debug unknown 4544 4544 0 0.0
FLASH 4540568 4540568 0 0.0
RAM 199416 199416 0 0.0
shell debug unknown 4176 4176 0 0.0
FLASH 2991613 3000013 8400 0.3
RAM 154056 154152 96 0.1
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259844 4259844 0 0.0
RAM 236360 236360 0 0.0
tv-app debug unknown 5504 5504 0 0.0
FLASH 5983421 5983517 96 0.0
RAM 578144 578560 416 0.1
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10549533 10625709 76176 0.7
RAM 638984 641256 2272 0.4
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226720 226720 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897228 897820 592 0.1
RAM 141608 141680 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962828 963420 592 0.1
RAM 140712 140784 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140464 140536 72 0.1
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70104 70104 0 0.0
k32w1+release FLASH 591808 591808 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69608 69608 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82912 82912 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622948 1623940 992 0.1
RAM 209776 209848 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533444 1534436 992 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199848 199848 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224328 224328 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104680 104680 0 0.0
lock-app qpg6105+debug FLASH 612288 612288 0 0.0
RAM 99320 99320 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144300 144300 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619026 619026 0 0.0
RAM 50660 50660 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 669320 670074 754 0.1
RAM 147936 148008 72 0.0
all-clusters-minimal-app tlsr9528a FLASH 765338 766092 754 0.1
RAM 110136 110208 72 0.1
bridge-app tlsr9258a FLASH 677604 677604 0 0.0
RAM 91316 91316 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620618 620618 0 0.0
RAM 50704 50704 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706462 706462 0 0.0
RAM 74032 74032 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 617384 617384 0 0.0
RAM 144124 144124 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 803464 803464 0 0.0
RAM 99052 99052 0 0.0
lock-app-dfu tlsr9528a FLASH 652396 652396 0 0.0
RAM 66736 66736 0 0.0
ota-requestor-app tlsr9258a FLASH 695640 695640 0 0.0
RAM 91000 91000 0 0.0
pump-app-usb tlsr9518adk80d FLASH 629972 629972 0 0.0
RAM 55480 55480 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607574 607574 0 0.0
RAM 52724 52724 0 0.0
shell tlsr9518adk80d FLASH 466654 466654 0 0.0
RAM 68412 68412 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627232 627232 0 0.0
RAM 52332 52332 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651396 651396 0 0.0
RAM 56360 56360 0 0.0
thermostat tlsr9518adk80d FLASH 626282 626282 0 0.0
RAM 53048 53048 0 0.0
window-covering tlsr9118bdk40d FLASH 521442 521442 0 0.0
RAM 97256 97256 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669024 1674536 5512 0.3
RAM 48924 48996 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9

Copy link

github-actions bot commented Jul 26, 2024

PR #34540: Size comparison from 93e5e85 to a320909

Increases above 0.2%:

platform target config section 93e5e85 a320909 change % change
linux chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
tizen all-clusters-app arm FLASH 1669056 1674568 5512 0.3
chip-tool-ubsan arm FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 93e5e85 a320909 change % change
bl602 lighting-app bl602 FLASH 1274146 1274146 0 0.0
RAM 95424 95424 0 0.0
bl602+mfd FLASH 1288404 1288404 0 0.0
RAM 95568 95568 0 0.0
bl602+rpc FLASH 1313114 1313114 0 0.0
RAM 103848 103848 0 0.0
bl702 lighting-app bl702 FLASH 1095040 1095040 0 0.0
RAM 15245 15245 0 0.0
bl702+mfd FLASH 1105734 1105734 0 0.0
RAM 15397 15397 0 0.0
bl702+rpc FLASH 1185106 1185106 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 878084 878084 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1130780 1130780 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1081938 1081938 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1093200 1093200 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109276 109276 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117020 117020 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606670 606670 0 0.0
RAM 204564 204564 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204836 204836 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77740 77740 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72808 72808 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609737 609737 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625433 625433 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593661 593661 0 0.0
RAM 67852 67852 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134568 134568 0 0.0
lock-app BRD4338a FLASH 734684 734676 -8 -0.0
RAM 208004 208004 0 0.0
window-app BRD4187C FLASH 1014772 1014772 0 0.0
RAM 126648 126648 0 0.0
esp32 all-clusters-app c3devkit DRAM 91028 91100 72 0.1
FLASH 1482400 1483090 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117500 117572 72 0.1
FLASH 1551663 1552359 696 0.0
IRAM 125403 125403 0 0.0
linux chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259844 4259844 0 0.0
RAM 236360 236360 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226720 226720 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897260 897852 592 0.1
RAM 141609 141681 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962860 963452 592 0.1
RAM 140713 140785 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140464 140536 72 0.1
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70104 70104 0 0.0
k32w1+release FLASH 591808 591808 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69608 69608 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82912 82912 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622980 1623972 992 0.1
RAM 209776 209848 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533444 1534436 992 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199848 199848 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224328 224328 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104680 104680 0 0.0
lock-app qpg6105+debug FLASH 612288 612288 0 0.0
RAM 99320 99320 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144300 144300 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619026 619026 0 0.0
RAM 50660 50660 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 669320 670074 754 0.1
RAM 147940 148012 72 0.0
all-clusters-minimal-app tlsr9528a FLASH 765338 766092 754 0.1
RAM 110136 110208 72 0.1
bridge-app tlsr9258a FLASH 677604 677604 0 0.0
RAM 91316 91316 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620618 620618 0 0.0
RAM 50704 50704 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706462 706462 0 0.0
RAM 74032 74032 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 617384 617384 0 0.0
RAM 144124 144124 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 803464 803464 0 0.0
RAM 99052 99052 0 0.0
lock-app-dfu tlsr9528a FLASH 652396 652396 0 0.0
RAM 66736 66736 0 0.0
ota-requestor-app tlsr9258a FLASH 695640 695640 0 0.0
RAM 91000 91000 0 0.0
pump-app-usb tlsr9518adk80d FLASH 629972 629972 0 0.0
RAM 55480 55480 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607574 607574 0 0.0
RAM 52724 52724 0 0.0
shell tlsr9518adk80d FLASH 466654 466654 0 0.0
RAM 68412 68412 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627232 627232 0 0.0
RAM 52332 52332 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651396 651396 0 0.0
RAM 56360 56360 0 0.0
thermostat tlsr9518adk80d FLASH 626282 626282 0 0.0
RAM 53048 53048 0 0.0
window-covering tlsr9118bdk40d FLASH 521442 521442 0 0.0
RAM 97256 97256 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669056 1674568 5512 0.3
RAM 48924 48996 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9

@tehampson
Copy link
Contributor

skip-protocol-compatibility, because this is only changing the Unit Testing cluster (adding fields to structs there).

Dumb question if you are adding and not changing any attributes in testing cluster why do you need to skip backwards compatibility checker? It should pass without skipping

@bzbarsky-apple
Copy link
Contributor Author

@tehampson The checker triggers on any change to the set of members of a struct.

Copy link

github-actions bot commented Jul 26, 2024

PR #34540: Size comparison from 55786a0 to 94b3e1a

Increases above 0.2%:

platform target config section 55786a0 94b3e1a change % change
linux chip-tool debug FLASH 12336940 12412094 75154 0.6
RAM 553458 555314 1856 0.3
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
fabric-admin debug FLASH 11343039 11416541 73502 0.6
RAM 550298 552122 1824 0.3
shell debug FLASH 2991645 3000045 8400 0.3
tv-casting-app debug FLASH 10549533 10625709 76176 0.7
RAM 638984 641256 2272 0.4
tizen all-clusters-app arm FLASH 1669056 1674568 5512 0.3
chip-tool-ubsan arm FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9
Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 55786a0 94b3e1a change % change
bl602 lighting-app bl602 FLASH 1274146 1274146 0 0.0
RAM 95424 95424 0 0.0
bl602+mfd FLASH 1288404 1288404 0 0.0
RAM 95568 95568 0 0.0
bl602+rpc FLASH 1313114 1313114 0 0.0
RAM 103848 103848 0 0.0
bl702 lighting-app bl702 FLASH 1095040 1095040 0 0.0
RAM 15245 15245 0 0.0
bl702+mfd FLASH 1105734 1105734 0 0.0
RAM 15397 15397 0 0.0
bl702+rpc FLASH 1185106 1185106 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 878084 878084 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1130780 1130780 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1081938 1081938 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1093200 1093200 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109276 109276 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117020 117020 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606670 606670 0 0.0
RAM 204564 204564 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204836 204836 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77740 77740 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72808 72808 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609737 609737 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629365 629365 0 0.0
RAM 73428 73428 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625433 625433 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645141 645141 0 0.0
RAM 76444 76444 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593661 593661 0 0.0
RAM 67852 67852 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613513 613513 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134568 134568 0 0.0
lock-app BRD4338a FLASH 734684 734676 -8 -0.0
RAM 208004 208004 0 0.0
window-app BRD4187C FLASH 1014772 1014772 0 0.0
RAM 126648 126648 0 0.0
esp32 all-clusters-app c3devkit DRAM 91028 91100 72 0.1
FLASH 1482400 1483090 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117500 117572 72 0.1
FLASH 1551663 1552359 696 0.0
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4632 4632 0 0.0
FLASH 2710575 2710575 0 0.0
RAM 125200 125200 0 0.0
all-clusters-app debug unknown 5416 5416 0 0.0
FLASH 5902334 5910860 8526 0.1
RAM 499608 500120 512 0.1
all-clusters-minimal-app debug unknown 5312 5312 0 0.0
FLASH 5306932 5315328 8396 0.2
RAM 235920 235984 64 0.0
bridge-app debug unknown 5296 5296 0 0.0
FLASH 4707164 4707164 0 0.0
RAM 214048 214048 0 0.0
chip-tool debug unknown 5784 5784 0 0.0
FLASH 12336940 12412094 75154 0.6
RAM 553458 555314 1856 0.3
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035964 11105516 69552 0.6
RAM 603176 605064 1888 0.3
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11343039 11416541 73502 0.6
RAM 550298 552122 1824 0.3
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4463202 4463202 0 0.0
RAM 199248 199248 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5631521 5631521 0 0.0
RAM 224464 224464 0 0.0
lock-app debug unknown 5232 5232 0 0.0
FLASH 4757958 4757958 0 0.0
RAM 200704 200704 0 0.0
ota-provider-app debug unknown 4608 4608 0 0.0
FLASH 4402420 4402420 0 0.0
RAM 194880 194880 0 0.0
ota-requestor-app debug unknown 4544 4544 0 0.0
FLASH 4540568 4540568 0 0.0
RAM 199416 199416 0 0.0
shell debug unknown 4176 4176 0 0.0
FLASH 2991645 3000045 8400 0.3
RAM 154088 154184 96 0.1
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259844 4259844 0 0.0
RAM 236360 236360 0 0.0
tv-app debug unknown 5504 5504 0 0.0
FLASH 5983421 5983517 96 0.0
RAM 578144 578560 416 0.1
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10549533 10625709 76176 0.7
RAM 638984 641256 2272 0.4
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226720 226720 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897260 897852 592 0.1
RAM 141609 141681 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962860 963452 592 0.1
RAM 140713 140785 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140464 140536 72 0.1
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70104 70104 0 0.0
k32w1+release FLASH 591808 591808 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69608 69608 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82912 82912 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622980 1623972 992 0.1
RAM 209776 209848 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533444 1534436 992 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199848 199848 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224328 224328 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104680 104680 0 0.0
lock-app qpg6105+debug FLASH 612288 612288 0 0.0
RAM 99320 99320 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144300 144300 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619026 619026 0 0.0
RAM 50660 50660 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 669320 670074 754 0.1
RAM 147940 148012 72 0.0
all-clusters-minimal-app tlsr9528a FLASH 765338 766092 754 0.1
RAM 110136 110208 72 0.1
bridge-app tlsr9258a FLASH 677604 677604 0 0.0
RAM 91316 91316 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620618 620618 0 0.0
RAM 50704 50704 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706462 706462 0 0.0
RAM 74032 74032 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 617384 617384 0 0.0
RAM 144124 144124 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 803464 803464 0 0.0
RAM 99052 99052 0 0.0
lock-app-dfu tlsr9528a FLASH 652396 652396 0 0.0
RAM 66736 66736 0 0.0
ota-requestor-app tlsr9258a FLASH 695640 695640 0 0.0
RAM 91000 91000 0 0.0
pump-app-usb tlsr9518adk80d FLASH 629972 629972 0 0.0
RAM 55480 55480 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607574 607574 0 0.0
RAM 52724 52724 0 0.0
shell tlsr9518adk80d FLASH 466654 466654 0 0.0
RAM 68412 68412 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627232 627232 0 0.0
RAM 52332 52332 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651396 651396 0 0.0
RAM 56360 56360 0 0.0
thermostat tlsr9518adk80d FLASH 626282 626282 0 0.0
RAM 53048 53048 0 0.0
window-covering tlsr9118bdk40d FLASH 521442 521442 0 0.0
RAM 97256 97256 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669056 1674568 5512 0.3
RAM 48924 48996 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381678 16510702 129024 0.8
RAM 7190408 7256968 66560 0.9

@bzbarsky-apple bzbarsky-apple force-pushed the global-codegen-cpp branch 2 times, most recently from d69259c to c2b3b9c Compare July 28, 2024 04:36
Copy link

github-actions bot commented Jul 28, 2024

PR #34540: Size comparison from 44c725d to c2b3b9c

Increases above 0.2%:

platform target config section 44c725d c2b3b9c change % change
tizen all-clusters-app arm FLASH 1669080 1674584 5504 0.3
chip-tool-ubsan arm FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9
Full report (11 builds for cc32xx, mbed, nrfconnect, qpg, stm32, tizen)
platform target config section 44c725d c2b3b9c change % change
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606674 606674 0 0.0
RAM 204580 204580 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204852 204852 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226728 226728 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897260 897852 592 0.1
RAM 141613 141685 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962860 963452 592 0.1
RAM 140717 140789 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140468 140540 72 0.1
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104688 104688 0 0.0
lock-app qpg6105+debug FLASH 612264 612264 0 0.0
RAM 99328 99328 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144308 144308 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669080 1674584 5504 0.3
RAM 48940 49012 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9

Copy link

github-actions bot commented Jul 28, 2024

PR #34540: Size comparison from 44c725d to 2e5017f

Increases above 0.2%:

platform target config section 44c725d 2e5017f change % change
linux chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035980 11105596 69616 0.6
RAM 603176 605368 2192 0.4
tizen all-clusters-app arm FLASH 1669080 1674584 5504 0.3
chip-tool-ubsan arm FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 44c725d 2e5017f change % change
bl602 lighting-app bl602 FLASH 1274158 1274158 0 0.0
RAM 95432 95432 0 0.0
bl602+mfd FLASH 1288416 1288416 0 0.0
RAM 95584 95584 0 0.0
bl602+rpc FLASH 1313126 1313126 0 0.0
RAM 103856 103856 0 0.0
bl702 lighting-app bl702 FLASH 1095052 1095052 0 0.0
RAM 15257 15257 0 0.0
bl702+mfd FLASH 1105746 1105746 0 0.0
RAM 15401 15401 0 0.0
bl702+rpc FLASH 1185118 1185118 0 0.0
RAM 24253 24253 0 0.0
bl706-eth FLASH 878096 878096 0 0.0
RAM 27360 27360 0 0.0
bl706-wifi FLASH 1130792 1130792 0 0.0
RAM 14693 14693 0 0.0
bl702l lighting-app bl702l FLASH 1081950 1081950 0 0.0
RAM 21812 21812 0 0.0
bl702l+mfd FLASH 1093212 1093212 0 0.0
RAM 21964 21964 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109284 109284 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117028 117028 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105640 105640 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606674 606674 0 0.0
RAM 204580 204580 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204852 204852 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77748 77748 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72816 72816 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609713 609713 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629341 629341 0 0.0
RAM 73436 73436 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629341 629341 0 0.0
RAM 73436 73436 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625409 625409 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645117 645117 0 0.0
RAM 76452 76452 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645117 645117 0 0.0
RAM 76452 76452 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593637 593637 0 0.0
RAM 67860 67860 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134576 134576 0 0.0
lock-app BRD4338a FLASH 734652 734644 -8 -0.0
RAM 208008 208008 0 0.0
window-app BRD4187C FLASH 1014740 1014740 0 0.0
RAM 126656 126656 0 0.0
esp32 all-clusters-app c3devkit DRAM 91036 91108 72 0.1
FLASH 1482400 1483090 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117516 117588 72 0.1
FLASH 1551667 1552359 692 0.0
IRAM 125403 125403 0 0.0
linux chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035980 11105596 69616 0.6
RAM 603176 605368 2192 0.4
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259860 4259860 0 0.0
RAM 236368 236368 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226728 226728 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897260 897852 592 0.1
RAM 141613 141685 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962860 963452 592 0.1
RAM 140717 140789 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140468 140540 72 0.1
nxp contact k32w0+release FLASH 576084 576084 0 0.0
RAM 70112 70112 0 0.0
k32w1+release FLASH 591784 591784 0 0.0
RAM 74152 74152 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69616 69616 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82928 82928 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622980 1623972 992 0.1
RAM 209792 209864 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533428 1534436 1008 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199856 199856 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224344 224344 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104688 104688 0 0.0
lock-app qpg6105+debug FLASH 612264 612264 0 0.0
RAM 99328 99328 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144308 144308 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619000 619000 0 0.0
RAM 50664 50664 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 669332 670086 754 0.1
RAM 147944 148016 72 0.0
all-clusters-minimal-app tlsr9528a FLASH 765350 766104 754 0.1
RAM 110140 110212 72 0.1
bridge-app tlsr9258a FLASH 677616 677616 0 0.0
RAM 91320 91320 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620592 620592 0 0.0
RAM 50708 50708 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706436 706436 0 0.0
RAM 74036 74036 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 617396 617396 0 0.0
RAM 144128 144128 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 803476 803476 0 0.0
RAM 99056 99056 0 0.0
lock-app-dfu tlsr9528a FLASH 652370 652370 0 0.0
RAM 66740 66740 0 0.0
ota-requestor-app tlsr9258a FLASH 695652 695652 0 0.0
RAM 91004 91004 0 0.0
pump-app-usb tlsr9518adk80d FLASH 629946 629946 0 0.0
RAM 55484 55484 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607548 607548 0 0.0
RAM 52728 52728 0 0.0
shell tlsr9518adk80d FLASH 466654 466654 0 0.0
RAM 68412 68412 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627334 627334 0 0.0
RAM 52344 52344 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651370 651370 0 0.0
RAM 56364 56364 0 0.0
thermostat tlsr9518adk80d FLASH 626256 626256 0 0.0
RAM 53052 53052 0 0.0
window-covering tlsr9118bdk40d FLASH 521454 521454 0 0.0
RAM 97260 97260 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669080 1674584 5504 0.3
RAM 48940 49012 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9

Copy link

github-actions bot commented Jul 28, 2024

PR #34540: Size comparison from 44c725d to bbaf1af

Increases above 0.2%:

platform target config section 44c725d bbaf1af change % change
linux chip-tool debug FLASH 12336968 12412186 75218 0.6
RAM 553458 555634 2176 0.4
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035980 11105596 69616 0.6
RAM 603176 605368 2192 0.4
fabric-admin debug FLASH 11343067 11416665 73598 0.6
RAM 550298 552442 2144 0.4
shell debug FLASH 2991677 3000077 8400 0.3
tv-casting-app debug FLASH 10549677 10625933 76256 0.7
RAM 638984 641576 2592 0.4
tizen all-clusters-app arm FLASH 1669080 1674584 5504 0.3
chip-tool-ubsan arm FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9
Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 44c725d bbaf1af change % change
bl602 lighting-app bl602 FLASH 1274158 1274158 0 0.0
RAM 95432 95432 0 0.0
bl602+mfd FLASH 1288416 1288416 0 0.0
RAM 95584 95584 0 0.0
bl602+rpc FLASH 1313126 1313126 0 0.0
RAM 103856 103856 0 0.0
bl702 lighting-app bl702 FLASH 1095052 1095052 0 0.0
RAM 15257 15257 0 0.0
bl702+mfd FLASH 1105746 1105746 0 0.0
RAM 15401 15401 0 0.0
bl702+rpc FLASH 1185118 1185118 0 0.0
RAM 24253 24253 0 0.0
bl706-eth FLASH 878096 878096 0 0.0
RAM 27360 27360 0 0.0
bl706-wifi FLASH 1130792 1130792 0 0.0
RAM 14693 14693 0 0.0
bl702l lighting-app bl702l FLASH 1081950 1081950 0 0.0
RAM 21812 21812 0 0.0
bl702l+mfd FLASH 1093212 1093212 0 0.0
RAM 21964 21964 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 800212 800212 0 0.0
RAM 109284 109284 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117028 117028 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808652 808652 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762416 762416 0 0.0
RAM 105448 105448 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747068 747068 0 0.0
RAM 105640 105640 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606674 606674 0 0.0
RAM 204580 204580 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652210 652210 0 0.0
RAM 204852 204852 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 669281 669281 0 0.0
RAM 77748 77748 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 689141 689141 0 0.0
RAM 80380 80380 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 646077 646077 0 0.0
RAM 72816 72816 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609713 609713 0 0.0
RAM 70884 70884 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629341 629341 0 0.0
RAM 73436 73436 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629341 629341 0 0.0
RAM 73436 73436 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625409 625409 0 0.0
RAM 73900 73900 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645117 645117 0 0.0
RAM 76452 76452 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645117 645117 0 0.0
RAM 76452 76452 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593637 593637 0 0.0
RAM 67860 67860 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70492 70492 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70492 70492 0 0.0
efr32 lighting-app BRD4187C FLASH 927248 927240 -8 -0.0
RAM 134576 134576 0 0.0
lock-app BRD4338a FLASH 734652 734644 -8 -0.0
RAM 208008 208008 0 0.0
window-app BRD4187C FLASH 1014740 1014740 0 0.0
RAM 126656 126656 0 0.0
esp32 all-clusters-app c3devkit DRAM 91036 91108 72 0.1
FLASH 1482400 1483090 690 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117516 117588 72 0.1
FLASH 1551667 1552359 692 0.0
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4632 4632 0 0.0
FLASH 2710603 2710603 0 0.0
RAM 125200 125200 0 0.0
all-clusters-app debug unknown 5416 5416 0 0.0
FLASH 5902364 5910954 8590 0.1
RAM 499608 500440 832 0.2
all-clusters-minimal-app debug unknown 5312 5312 0 0.0
FLASH 5306962 5315358 8396 0.2
RAM 235920 235984 64 0.0
bridge-app debug unknown 5296 5296 0 0.0
FLASH 4707194 4707194 0 0.0
RAM 214048 214048 0 0.0
chip-tool debug unknown 5784 5784 0 0.0
FLASH 12336968 12412186 75218 0.6
RAM 553458 555634 2176 0.4
chip-tool-ipv6only arm64 unknown 20192 20272 80 0.4
FLASH 11035980 11105596 69616 0.6
RAM 603176 605368 2192 0.4
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11343067 11416665 73598 0.6
RAM 550298 552442 2144 0.4
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4463230 4463230 0 0.0
RAM 199248 199248 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5631553 5631553 0 0.0
RAM 224464 224464 0 0.0
lock-app debug unknown 5232 5232 0 0.0
FLASH 4757986 4757986 0 0.0
RAM 200704 200704 0 0.0
ota-provider-app debug unknown 4608 4608 0 0.0
FLASH 4402450 4402450 0 0.0
RAM 194880 194880 0 0.0
ota-requestor-app debug unknown 4544 4544 0 0.0
FLASH 4540596 4540596 0 0.0
RAM 199416 199416 0 0.0
shell debug unknown 4176 4176 0 0.0
FLASH 2991677 3000077 8400 0.3
RAM 154088 154184 96 0.1
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259860 4259860 0 0.0
RAM 236368 236368 0 0.0
tv-app debug unknown 5504 5504 0 0.0
FLASH 5983453 5983613 160 0.0
RAM 578176 578912 736 0.1
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10549677 10625933 76256 0.7
RAM 638984 641576 2592 0.4
mbed lock-app-release cy8cproto_062_4343w FLASH 1503444 1503444 0 0.0
RAM 226728 226728 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 897260 897852 592 0.1
RAM 141613 141685 72 0.1
nrf7002dk_nrf5340_cpuapp FLASH 962860 963452 592 0.1
RAM 140717 140789 72 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 832644 833236 592 0.1
RAM 140468 140540 72 0.1
nxp contact k32w0+release FLASH 576084 576084 0 0.0
RAM 70112 70112 0 0.0
k32w1+release FLASH 591784 591784 0 0.0
RAM 74152 74152 0 0.0
light k32w0+release FLASH 611696 611696 0 0.0
RAM 69616 69616 0 0.0
k32w1+release FLASH 676528 676528 0 0.0
RAM 82928 82928 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1622980 1623972 992 0.1
RAM 209792 209864 72 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1533428 1534436 1008 0.1
RAM 206584 206656 72 0.0
light cy8ckit_062s2_43012 FLASH 1460468 1460468 0 0.0
RAM 199856 199856 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459668 1459668 0 0.0
RAM 224344 224344 0 0.0
qpg lighting-app qpg6105+debug FLASH 653084 653084 0 0.0
RAM 104688 104688 0 0.0
lock-app qpg6105+debug FLASH 612264 612264 0 0.0
RAM 99328 99328 0 0.0
stm32 light STM32WB5MM-DK FLASH 475408 475408 0 0.0
RAM 144308 144308 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619000 619000 0 0.0
RAM 50664 50664 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 669332 670086 754 0.1
RAM 147944 148016 72 0.0
all-clusters-minimal-app tlsr9528a FLASH 765350 766104 754 0.1
RAM 110140 110212 72 0.1
bridge-app tlsr9258a FLASH 677616 677616 0 0.0
RAM 91320 91320 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620592 620592 0 0.0
RAM 50708 50708 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706436 706436 0 0.0
RAM 74036 74036 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 617396 617396 0 0.0
RAM 144128 144128 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 803476 803476 0 0.0
RAM 99056 99056 0 0.0
lock-app-dfu tlsr9528a FLASH 652370 652370 0 0.0
RAM 66740 66740 0 0.0
ota-requestor-app tlsr9258a FLASH 695652 695652 0 0.0
RAM 91004 91004 0 0.0
pump-app-usb tlsr9518adk80d FLASH 629946 629946 0 0.0
RAM 55484 55484 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607548 607548 0 0.0
RAM 52728 52728 0 0.0
shell tlsr9518adk80d FLASH 466654 466654 0 0.0
RAM 68412 68412 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627334 627334 0 0.0
RAM 52344 52344 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651370 651370 0 0.0
RAM 56364 56364 0 0.0
thermostat tlsr9518adk80d FLASH 626256 626256 0 0.0
RAM 53052 53052 0 0.0
window-covering tlsr9118bdk40d FLASH 521454 521454 0 0.0
RAM 97260 97260 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1669080 1674584 5504 0.3
RAM 48940 49012 72 0.1
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16381774 16511110 129336 0.8
RAM 7190464 7257016 66552 0.9

@bzbarsky-apple bzbarsky-apple changed the title Implement cluster-objects codegen for global structs/enums. Add some bits to exercise global structs/enums to Unit Testing cluster. Jul 30, 2024
@bzbarsky-apple bzbarsky-apple force-pushed the global-codegen-cpp branch 2 times, most recently from a979184 to e2582df Compare July 30, 2024 03:36
Copy link

github-actions bot commented Jul 30, 2024

PR #34540: Size comparison from 085f57f to e2582df

Full report (4 builds for cc32xx, mbed, stm32)
platform target config section 085f57f e2582df change % change
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 610134 610134 0 0.0
RAM 205380 205380 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652614 652614 0 0.0
RAM 205620 205620 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503716 1503716 0 0.0
RAM 227296 227296 0 0.0
stm32 light STM32WB5MM-DK FLASH 477448 477448 0 0.0
RAM 144756 144756 0 0.0

Copy link

github-actions bot commented Jul 30, 2024

PR #34540: Size comparison from ccd8da9 to a81220d

Increases above 0.2%:

platform target config section ccd8da9 a81220d change % change
tizen all-clusters-app arm FLASH 1682740 1693388 10648 0.6
chip-tool-ubsan arm FLASH 16453810 16600234 146424 0.9
RAM 7226512 7293072 66560 0.9
Full report (20 builds for cc13x4_26x4, cc32xx, mbed, nrfconnect, nxp, qpg, stm32, tizen)
platform target config section ccd8da9 a81220d change % change
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 802336 802336 0 0.0
RAM 109844 109844 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 817028 817028 0 0.0
RAM 117444 117444 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 809008 809008 0 0.0
RAM 111724 111724 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762772 762772 0 0.0
RAM 105864 105864 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747424 747424 0 0.0
RAM 106056 106056 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 610150 610150 0 0.0
RAM 205380 205380 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652630 652630 0 0.0
RAM 205620 205620 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503716 1503716 0 0.0
RAM 227296 227296 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 901780 903332 1552 0.2
RAM 142084 142202 118 0.1
nrf7002dk_nrf5340_cpuapp FLASH 876288 877632 1344 0.2
RAM 140223 140341 118 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 836704 838252 1548 0.2
RAM 140944 141062 118 0.1
nxp contact k32w0+release FLASH 576396 576396 0 0.0
RAM 70416 70416 0 0.0
k32w1+release FLASH 592104 592104 0 0.0
RAM 74456 74456 0 0.0
light k32w0+release FLASH 612024 612024 0 0.0
RAM 69920 69920 0 0.0
k32w1+release FLASH 676936 676936 0 0.0
RAM 83232 83232 0 0.0
qpg lighting-app qpg6105+debug FLASH 655100 655100 0 0.0
RAM 105148 105148 0 0.0
lock-app qpg6105+debug FLASH 612536 612536 0 0.0
RAM 99632 99632 0 0.0
stm32 light STM32WB5MM-DK FLASH 477472 477472 0 0.0
RAM 144756 144756 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1682740 1693388 10648 0.6
RAM 51668 51796 128 0.2
chip-tool-ubsan arm unknown 2404 2404 0 0.0
FLASH 16453810 16600234 146424 0.9
RAM 7226512 7293072 66560 0.9

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.
Copy link

github-actions bot commented Jul 30, 2024

PR #34540: Size comparison from 9032548 to a7c59e2

Increases above 0.2%:

platform target config section 9032548 a7c59e2 change % change
linux all-clusters-app debug FLASH 5969744 5987422 17678 0.3
RAM 506456 507480 1024 0.2
all-clusters-minimal-app debug FLASH 5333072 5350554 17482 0.3
chip-tool debug FLASH 12404086 12479148 75062 0.6
RAM 556154 558330 2176 0.4
chip-tool-ipv6only arm64 unknown 20272 20352 80 0.4
FLASH 11090156 11159804 69648 0.6
RAM 606056 608248 2192 0.4
fabric-admin debug FLASH 11384219 11457625 73406 0.6
RAM 552890 555066 2176 0.4
shell debug FLASH 3019005 3036461 17456 0.6
RAM 158472 158792 320 0.2
tv-casting-app debug FLASH 10607853 10683933 76080 0.7
RAM 642984 645576 2592 0.4
telink all-clusters-app tlsr9118bdk40d FLASH 673682 675424 1742 0.3
all-clusters-minimal-app tlsr9528a FLASH 769602 771344 1742 0.2
tizen all-clusters-app arm FLASH 1682740 1693388 10648 0.6
chip-tool-ubsan arm FLASH 16464306 16610906 146600 0.9
RAM 7230432 7296984 66552 0.9
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 9032548 a7c59e2 change % change
bl602 lighting-app bl602 FLASH 1277116 1277116 0 0.0
RAM 95888 95888 0 0.0
bl602+mfd FLASH 1291374 1291374 0 0.0
RAM 96040 96040 0 0.0
bl602+rpc FLASH 1316084 1316084 0 0.0
RAM 104312 104312 0 0.0
bl702 lighting-app bl702 FLASH 1098268 1098268 0 0.0
RAM 15241 15241 0 0.0
bl702+mfd FLASH 1108962 1108962 0 0.0
RAM 15385 15385 0 0.0
bl702+rpc FLASH 1188334 1188334 0 0.0
RAM 24237 24237 0 0.0
bl706-eth FLASH 881302 881302 0 0.0
RAM 27344 27344 0 0.0
bl706-wifi FLASH 1134400 1134400 0 0.0
RAM 14677 14677 0 0.0
bl702l lighting-app bl702l FLASH 1085422 1085422 0 0.0
RAM 21796 21796 0 0.0
bl702l+mfd FLASH 1096428 1096428 0 0.0
RAM 21948 21948 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 802352 802352 0 0.0
RAM 109844 109844 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 817044 817044 0 0.0
RAM 117444 117444 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 809024 809024 0 0.0
RAM 111724 111724 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 762788 762788 0 0.0
RAM 105864 105864 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 747440 747440 0 0.0
RAM 106056 106056 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 610150 610150 0 0.0
RAM 205380 205380 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652630 652630 0 0.0
RAM 205620 205620 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 671409 671409 0 0.0
RAM 78348 78348 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 691261 691261 0 0.0
RAM 80980 80980 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 691261 691261 0 0.0
RAM 80980 80980 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 648197 648197 0 0.0
RAM 73416 73416 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 610049 610049 0 0.0
RAM 71340 71340 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629685 629685 0 0.0
RAM 73892 73892 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629685 629685 0 0.0
RAM 73892 73892 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625753 625753 0 0.0
RAM 74356 74356 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 645469 645469 0 0.0
RAM 76908 76908 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 645469 645469 0 0.0
RAM 76908 76908 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 599477 599477 0 0.0
RAM 68364 68364 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 619329 619329 0 0.0
RAM 70996 70996 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 619329 619329 0 0.0
RAM 70996 70996 0 0.0
efr32 lighting-app BRD4187C FLASH 929424 929424 0 0.0
RAM 135148 135148 0 0.0
lock-app BRD4338a FLASH 735092 735092 0 0.0
RAM 208436 208436 0 0.0
window-app BRD4187C FLASH 1015188 1015188 0 0.0
RAM 127084 127084 0 0.0
esp32 all-clusters-app c3devkit DRAM 91564 91684 120 0.1
FLASH 1488800 1490546 1746 0.1
IRAM 75570 75570 0 0.0
m5stack DRAM 118052 118172 120 0.1
FLASH 1557639 1559379 1740 0.1
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4632 4632 0 0.0
FLASH 2729707 2729707 0 0.0
RAM 128272 128272 0 0.0
all-clusters-app debug unknown 5416 5416 0 0.0
FLASH 5969744 5987422 17678 0.3
RAM 506456 507480 1024 0.2
all-clusters-minimal-app debug unknown 5312 5312 0 0.0
FLASH 5333072 5350554 17482 0.3
RAM 239632 239936 304 0.1
bridge-app debug unknown 5296 5296 0 0.0
FLASH 4710520 4710520 0 0.0
RAM 216960 216960 0 0.0
chip-tool debug unknown 5832 5832 0 0.0
FLASH 12404086 12479148 75062 0.6
RAM 556154 558330 2176 0.4
chip-tool-ipv6only arm64 unknown 20272 20352 80 0.4
FLASH 11090156 11159804 69648 0.6
RAM 606056 608248 2192 0.4
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11384219 11457625 73406 0.6
RAM 552890 555066 2176 0.4
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4466508 4466508 0 0.0
RAM 202128 202128 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5644433 5644433 0 0.0
RAM 228048 228048 0 0.0
lock-app debug unknown 5232 5232 0 0.0
FLASH 4761306 4761306 0 0.0
RAM 203616 203616 0 0.0
ota-provider-app debug unknown 4608 4608 0 0.0
FLASH 4405696 4405696 0 0.0
RAM 197760 197760 0 0.0
ota-requestor-app debug unknown 4544 4544 0 0.0
FLASH 4543842 4543842 0 0.0
RAM 202296 202296 0 0.0
shell debug unknown 4176 4176 0 0.0
FLASH 3019005 3036461 17456 0.6
RAM 158472 158792 320 0.2
thermostat-no-ble arm64 unknown 9344 9344 0 0.0
FLASH 4343564 4343564 0 0.0
RAM 242112 242112 0 0.0
tv-app debug unknown 5504 5504 0 0.0
FLASH 5987589 5987781 192 0.0
RAM 582720 583456 736 0.1
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10607853 10683933 76080 0.7
RAM 642984 645576 2592 0.4
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 901796 903344 1548 0.2
RAM 142084 142202 118 0.1
nrf7002dk_nrf5340_cpuapp FLASH 876356 877700 1344 0.2
RAM 140223 140341 118 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 836716 838268 1552 0.2
RAM 140944 141062 118 0.1
nxp contact k32w0+release FLASH 576412 576412 0 0.0
RAM 70416 70416 0 0.0
k32w1+release FLASH 592120 592120 0 0.0
RAM 74456 74456 0 0.0
light k32w0+release FLASH 612040 612040 0 0.0
RAM 69920 69920 0 0.0
k32w1+release FLASH 676952 676952 0 0.0
RAM 83232 83232 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1628748 1631180 2432 0.1
RAM 210760 210888 128 0.1
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1538468 1540892 2424 0.2
RAM 207536 207664 128 0.1
light cy8ckit_062s2_43012 FLASH 1463124 1463124 0 0.0
RAM 200776 200776 0 0.0
lock cy8ckit_062s2_43012 FLASH 1460148 1460148 0 0.0
RAM 225120 225120 0 0.0
qpg lighting-app qpg6105+debug FLASH 655108 655108 0 0.0
RAM 105148 105148 0 0.0
lock-app qpg6105+debug FLASH 612544 612544 0 0.0
RAM 99632 99632 0 0.0
stm32 light STM32WB5MM-DK FLASH 477488 477488 0 0.0
RAM 144756 144756 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 619320 619320 0 0.0
RAM 50936 50936 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 673682 675424 1742 0.3
RAM 149412 149532 120 0.1
all-clusters-minimal-app tlsr9528a FLASH 769602 771344 1742 0.2
RAM 110612 110732 120 0.1
bridge-app tlsr9258a FLASH 677934 677934 0 0.0
RAM 91624 91624 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 620912 620912 0 0.0
RAM 50980 50980 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 706776 706776 0 0.0
RAM 74316 74316 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 619700 619700 0 0.0
RAM 145580 145580 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 805786 805786 0 0.0
RAM 99504 99504 0 0.0
lock-app-dfu tlsr9528a FLASH 652690 652690 0 0.0
RAM 67012 67012 0 0.0
ota-requestor-app tlsr9258a FLASH 695968 695968 0 0.0
RAM 91308 91308 0 0.0
pump-app-usb tlsr9518adk80d FLASH 630268 630268 0 0.0
RAM 55756 55756 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607868 607868 0 0.0
RAM 53000 53000 0 0.0
shell tlsr9518adk80d FLASH 466794 466794 0 0.0
RAM 68660 68660 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 627680 627680 0 0.0
RAM 52696 52696 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651690 651690 0 0.0
RAM 56636 56636 0 0.0
thermostat tlsr9518adk80d FLASH 631456 631456 0 0.0
RAM 53376 53376 0 0.0
window-covering tlsr9118bdk40d FLASH 521830 521830 0 0.0
RAM 98536 98536 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1682740 1693388 10648 0.6
RAM 51668 51796 128 0.2
chip-tool-ubsan arm unknown 2404 2404 0 0.0
FLASH 16464306 16610906 146600 0.9
RAM 7230432 7296984 66552 0.9

@mergify mergify bot merged commit 22c65cb into project-chip:master Aug 1, 2024
72 checks passed
hasty pushed a commit to hasty/connectedhomeip that referenced this pull request Aug 1, 2024
…r. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.
@bzbarsky-apple bzbarsky-apple deleted the global-codegen-cpp branch August 1, 2024 19:16
mergify bot pushed a commit that referenced this pull request Aug 5, 2024
* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (#34650)

* Fix most TC-SWTCH-2.4 remaining issues (#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue #34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (#34679)

* Dump details about leaked ExchangeContexts before aborting (#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (#34692)

* adding parallel execution to restyle-diff (#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (#34440)

* Pull request #1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
woody-apple pushed a commit that referenced this pull request Aug 9, 2024
* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (#34650)

* Fix most TC-SWTCH-2.4 remaining issues (#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue #34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (#34679)

* Dump details about leaked ExchangeContexts before aborting (#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (#34692)

* adding parallel execution to restyle-diff (#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (#34440)

* Pull request #1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Document GetAtomicWriteTimeout

* Restyled patch

* Switch to enum for atomic write state

* Use std::optional<timeout> instead of magic zero value

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
austina-csa pushed a commit to austina-csa/connectedhomeip that referenced this pull request Aug 12, 2024
…ect-chip#34823)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (project-chip#34650)

* Fix most TC-SWTCH-2.4 remaining issues (project-chip#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue project-chip#34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (project-chip#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (project-chip#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (project-chip#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (project-chip#34679)

* Dump details about leaked ExchangeContexts before aborting (project-chip#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (project-chip#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (project-chip#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (project-chip#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (project-chip#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (project-chip#34692)

* adding parallel execution to restyle-diff (project-chip#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (project-chip#34440)

* Pull request project-chip#1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (project-chip#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (project-chip#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Document GetAtomicWriteTimeout

* Restyled patch

* Switch to enum for atomic write state

* Use std::optional<timeout> instead of magic zero value

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
mergify bot pushed a commit that referenced this pull request Aug 23, 2024
* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (#34650)

* Fix most TC-SWTCH-2.4 remaining issues (#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue #34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (#34679)

* Dump details about leaked ExchangeContexts before aborting (#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (#34692)

* adding parallel execution to restyle-diff (#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (#34440)

* Pull request #1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Namespace workaround for compilers on other platforms

* Apply suggestions from code review

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
mergify bot pushed a commit that referenced this pull request Aug 27, 2024
…35161)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (#34650)

* Fix most TC-SWTCH-2.4 remaining issues (#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue #34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (#34679)

* Dump details about leaked ExchangeContexts before aborting (#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (#34692)

* adding parallel execution to restyle-diff (#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (#34440)

* Pull request #1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Allow null BuiltIn field when saving Presets

* Namespace workaround for compilers on other platforms

* Fix bad merge

* Fix readability issue

* Force built-in to false on new presets

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
PeterC1965 pushed a commit to PeterC1965/connectedhomeip that referenced this pull request Aug 28, 2024
* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (project-chip#34650)

* Fix most TC-SWTCH-2.4 remaining issues (project-chip#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue project-chip#34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (project-chip#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (project-chip#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (project-chip#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (project-chip#34679)

* Dump details about leaked ExchangeContexts before aborting (project-chip#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (project-chip#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (project-chip#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (project-chip#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (project-chip#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (project-chip#34692)

* adding parallel execution to restyle-diff (project-chip#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (project-chip#34440)

* Pull request project-chip#1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (project-chip#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (project-chip#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Namespace workaround for compilers on other platforms

* Apply suggestions from code review

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
PeterC1965 pushed a commit to PeterC1965/connectedhomeip that referenced this pull request Aug 28, 2024
…roject-chip#35161)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (project-chip#34650)

* Fix most TC-SWTCH-2.4 remaining issues (project-chip#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue project-chip#34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (project-chip#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (project-chip#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (project-chip#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (project-chip#34679)

* Dump details about leaked ExchangeContexts before aborting (project-chip#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (project-chip#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (project-chip#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (project-chip#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (project-chip#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (project-chip#34692)

* adding parallel execution to restyle-diff (project-chip#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (project-chip#34440)

* Pull request project-chip#1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (project-chip#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (project-chip#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Allow null BuiltIn field when saving Presets

* Namespace workaround for compilers on other platforms

* Fix bad merge

* Fix readability issue

* Force built-in to false on new presets

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
mergify bot pushed a commit that referenced this pull request Aug 29, 2024
…are set manually (#35223)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (#34650)

* Fix most TC-SWTCH-2.4 remaining issues (#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue #34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (#34679)

* Dump details about leaked ExchangeContexts before aborting (#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (#34692)

* adding parallel execution to restyle-diff (#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (#34440)

* Pull request #1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Allow null BuiltIn field when saving Presets

* Namespace workaround for compilers on other platforms

* Fix bad merge

* Fix readability issue

* Force built-in to false on new presets

* [HVAC] Clear ActivePresetHandle attribute when changing relevant setpoint attributes

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
shgutte pushed a commit to shgutte/connectedhomeip that referenced this pull request Sep 10, 2024
…roject-chip#35161)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (project-chip#34650)

* Fix most TC-SWTCH-2.4 remaining issues (project-chip#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue project-chip#34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (project-chip#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (project-chip#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (project-chip#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (project-chip#34679)

* Dump details about leaked ExchangeContexts before aborting (project-chip#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (project-chip#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (project-chip#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (project-chip#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (project-chip#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (project-chip#34692)

* adding parallel execution to restyle-diff (project-chip#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (project-chip#34440)

* Pull request project-chip#1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (project-chip#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (project-chip#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Allow null BuiltIn field when saving Presets

* Namespace workaround for compilers on other platforms

* Fix bad merge

* Fix readability issue

* Force built-in to false on new presets

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
shgutte pushed a commit to shgutte/connectedhomeip that referenced this pull request Sep 10, 2024
…are set manually (project-chip#35223)

* Add support for Presets attributes and commands to the Thermostat cluster

Clean up the Thermostat cluster and remove the TemperatureSetpointHoldPolicy attribute
and SetTemperatureSetpointHoldPolicy command

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn.

* Fix build error for Linux configure build of all-clusters-app

* Fix Darwin CI issues

Editorial fixes

* Restyled by clang-format

* More fixes

* Restyled by clang-format

* BUILD.gn fixes for CI

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Address review comments.

* Restyled by clang-format

* Regenerate Thermostat XML from spec

* Move atomic enum to global-enums.xml, actually

# Conflicts:
#	src/app/zap-templates/zcl/data-model/chip/global-structs.xml

* Regenerate XML and convert thermostat-server to atomic writes

* Pull in ACCapacityFormat typo un-fix

* Update Test_TC_TSTAT_1_1 to know about AtomicResponse command.

* Restyled patch

* Fix weird merge with upstream

* Fix emberAfIsTypeSigned not understanding temperature type

* Merge fixes from atomic write branch

* Relocate thermostat-manager sample code to all-clusters-common

* Fix g++ build error on linux

* Fix C formatter for long int, cast whole expression

* Sync cast fix with master

* Add thermostat-common dependency to thermostat app under linux

* Remove MatterPostAttributeChangeCallback from thermostat-manager, as it conflicts with other implementations

* Convert Atomic enums and structs to global

* Restyled patch

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Regen with alchemy 0.6.1

* Updates based on comments

* Add TC_MCORE_FS_1_3.py test implementation (project-chip#34650)

* Fix most TC-SWTCH-2.4 remaining issues (project-chip#34677)

- Move 2.4 in a better place in the file
- Add test steps properly
- Allow default button press position override

Issue project-chip#34656

Testing done:

- Test still passes on DUT with automation

* Initial test script for Fabric Sync TC_MCORE_FS_1_2 (project-chip#34675)

* Initial test script for Fabric Sync TC_MCORE_FS_1_2

* Apply suggestions from code review

Co-authored-by: C Freeman <[email protected]>

* Address Review Comments

* Address review comments

* Fix default timeout after other timeouts changed

* Restyled by autopep8

* Fix linter error

---------

Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Test automation for FabricSync ICD BridgedDeviceBasicInfoCluster (project-chip#34628)

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* wip most steps implemented

* using SIGSTOP and SIGCONT to control ICD server pausing

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* more comments addressed

* lint pass

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: C Freeman <[email protected]>

* comments addressed, incl TH_SERVER configurable

* added setupQRCode and setupManualCode as options for DUT commissioning

* Restyled by autopep8

* Restyled by isort

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* Update src/python_testing/TC_BRBINFO_4_1.py

Co-authored-by: Terence Hampson <[email protected]>

* comments addressed

* Restyled by autopep8

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* ServiceArea test scripts (project-chip#34548)

* initial commit

* fix bugs

* fix issues reported by the linter

* fix bug in checking for unique areaDesc

* add TC 1.5

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: William <[email protected]>

* address code review comments

* fix issue introduced by the previous commit

* address code review feedback

* Update src/python_testing/TC_SEAR_1_2.py

Co-authored-by: Kiel Oleson <[email protected]>

* address code review feedback

* remove PICS checked by the TC_SEAR_1.6

* more code review updates

* Restyled by autopep8

---------

Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Restyled.io <[email protected]>

* Remove manual tests for Thermostat presets (project-chip#34679)

* Dump details about leaked ExchangeContexts before aborting (project-chip#34617)

* Dump details about leaked ExchangeContexts before aborting

This is implemented via a VerifyOrDieWithObject() variant of the existing
VerifyOrDie() macro that calls a DumpToLog() method on the provided object if
it exists (otherwise this is simply a no-op).

If CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE is not enabled, VerifyOrDieWithObject()
simply behaves like a plain VerifyOrDie(). DumpToLog() implementations can use
ChipLogFormatRtti to log type information about an object (usually a delegate);
if RTTI is disabled this simply outputs whether the object was null or not.

* Address review comments

* Make gcc happy and improve documentation

* Remove unused include

* Fix compile error without CHIP_CONFIG_VERBOSE_VERIFY_OR_DIE

* Avoid unused parameter warning

* [TI] CC13x4_26x4 build fixes (project-chip#34682)

* lwip pbuf, map file, and hex creation when OTA is disabled

* added cc13x4 family define around the non OTA hex creation

* whitespace fix

* reversed custom factoy data flash with cc13x4 check

* more whitespace fixes

* [ICD] Add missing polling function to NoWifi connectivity manager (project-chip#34684)

* Add missing polling function to NoWifi connectivity manager

* Update GenericConnectivityManagerImpl_NoWiFi.h

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Boris Zbarsky <[email protected]>

* [OPSTATE] Add Q test script for CountdownTime (project-chip#34632)

* Add Q test

* Added test to test set

* Remove unused var

* Restyled by autopep8

* Restyled by isort

* Fix name

* Use pics over other method

* Removed unused stuff

* Added pipe commands

* Fix reset

* Get example to report appropriate changes.

* WiP

* Added some comments

* Changes to make things work

* Removed dev msgs

* Missed some

* Removed dev msgs

* Straggler

* Restyled by clang-format

* Restyled by autopep8

* Restyled by isort

* Commented unused var

* Update examples/all-clusters-app/linux/AllClustersCommandDelegate.cpp

* Fix bug

---------

Co-authored-by: Restyled.io <[email protected]>

* YAML update to BRBINFO, ProductId (project-chip#34513)

* Bridged Device Information Cluster, Attribute ProductID test reflects marking as O, not X

* Update src/app/tests/suites/certification/Test_TC_BRBINFO_2_1.yaml

Co-authored-by: Terence Hampson <[email protected]>

* corrected pics

* corrected pics

* WIP Bridged ICD, commissioning to both fabrics

* wip testing sending KeepActive

* update to bridged-device-basic-information.xml and zap generated files

* removed unrelated file

---------

Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>

* Fix simplified Linux tv-casting-app gn build error. (project-chip#34692)

* adding parallel execution to restyle-diff (project-chip#34663)

* adding parallel execution to restyle-diff

* using xargs to call restyle-paths

* fixing Copyright year

* restyle the restyler

* Add some bits to exercise global structs/enums to Unit Testing cluster. (project-chip#34540)

* Adds things to the Unit Testing cluster XML.
* This requires those things to be enabled in all-clusters-app,
  all-clusters-minimal-app, and one of the chef contact sensors to pass CI.
* That requires an implementation in test-cluster-server
* At which point might as well add a YAML test to exercise it all.

* [Silabs] Port platform specific Multi-Chip OTA work  (project-chip#34440)

* Pull request project-chip#1836: Cherry multi ota

Merge in WMN_TOOLS/matter from cherry-multi-ota to silabs_slc_1.3

Squashed commit of the following:

commit 4320bb46571658bc44fb82345348265def394991
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:26:07 2024 -0400

    remove some unwanted diffs in provision files

commit be160931dc600de7e7ead378b70d6a43c3945e46
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 14:24:25 2024 -0400

    revert changes to generator.project.mak

commit 14b6605887166e6d5284a61feb2bf407d850bdcf
Author: Michael Rupp <[email protected]>
Date:   Fri May 10 13:06:12 2024 -0400

    revert NVM key changes and script changes

... and 8 more commits

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by autopep8

* remove unused libs caught by linter

* update doctree with new readmes

* rerun CI, cirque failing for unknown reasons

* fix include guards in provision examples

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <[email protected]>

* Add python tests for Thermostat presets feature (project-chip#34693)

* Add python tests for Thermostat presets feature

* Restyled by autopep8

* Restyled by isort

* Update the PICS code for presets attribute

---------

Co-authored-by: Restyled.io <[email protected]>

* removing unneccessary git fetch (project-chip#34698)

* Restyle patch

* Regen to fix ordering of global structs

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Return correct AtomicResponse when committing or rolling back

* Patch tests for atomic write of presets

* Fix tests to work with the new setup.

Specific changes:

* Enable SetActivePresetRequest command in all-clusters-app.
* Fix assignment of a PresetStructWithOwnedMembers to another
  PresetStructWithOwnedMembers to actually work correctly.
* Move constraint checks that happen on write from commit to write.
* Fix sending of atomic responses to not have use-stack-after-return.
* Fix PICS for the tests involved.

* Fix PICS values for atomic requests

* Remove PresetsSchedulesEditable and QueuedPreset from various places

* Restyled patch

* Restyled patch, again

* Remove PICS value for PresetsSchedulesEditable

* clang-tidy fixes

* clang-tidy fixes

* Clear associated atomic writes when fabric is removed

* Add tests for fabric removal and lockout of clients outside of atomic write

* Python linter

* Restyled patch

* Clear timer when fabric is removed

* Check for open atomic write before resetting

* Revert auto delegate declaration on lines where there's no collision

* Allow Thermostat delegate to provide timeout for atomic requests

* Relocate thermostat example code to thermostat-common

* Remove thermostat-manager code, replace with thermostat delegate

* Sync atomic write error order with spec

* Restyle patch

* Drop memset of atomic write sessions

* Add PreCommit stage to allow rollback of multiple attributes when only one fails

* Separate OnTimerExpired method, vs ResetWrite

* Method documentation

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Remove unused InWrite check

* Drop imcode alias

* Switch AtomicWriteState to enum class

* DRY up atomic write manager

* Apply suggestions from code review

Co-authored-by: Nivi Sarkar <[email protected]>

* Drop duplicate doc comments

* Rename GetAtomicWriteScopedNodeId to GetAtomicWriteOriginatorScopedNodeId

* Updates based on comments

* Add MatterReportingAttributeChangeCallback calls for updated attributes

* Relocate thermostat example code to thermostat-common, and remove thermostat-manager

* Merge atomic write code back into thermostat-server

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix build after suggestions

* Actually track attribute IDs associated with atomic write

* Only commit presets if all attribute precommits were successful

* Fix scope on err

* Add documentation to methods

* Remove duplicate preset check.

* Move various functions into anonymous namespaces, or Thermostat namespace

* Drop impossible non-atomic attribute status after rollback

* Allow null BuiltIn field when saving Presets

* Namespace workaround for compilers on other platforms

* Fix bad merge

* Fix readability issue

* Force built-in to false on new presets

* [HVAC] Clear ActivePresetHandle attribute when changing relevant setpoint attributes

* Apply suggestions from code review

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Nivedita Sarkar <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Nivi Sarkar <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Terence Hampson <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>
Co-authored-by: Chris Letnick <[email protected]>
Co-authored-by: C Freeman <[email protected]>
Co-authored-by: Douglas Rocha Ferraz <[email protected]>
Co-authored-by: Petru Lauric <[email protected]>
Co-authored-by: William <[email protected]>
Co-authored-by: Kiel Oleson <[email protected]>
Co-authored-by: Karsten Sperling <[email protected]>
Co-authored-by: Anu Biradar <[email protected]>
Co-authored-by: mkardous-silabs <[email protected]>
Co-authored-by: Rob Bultman <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Shao Ling Tan <[email protected]>
Co-authored-by: Amine Alami <[email protected]>
Co-authored-by: Michael Rupp <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

6 participants