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

Make use of DataModel::Provider in writes #34754

Merged
merged 90 commits into from
Sep 18, 2024

Conversation

andy31415
Copy link
Contributor

@andy31415 andy31415 commented Aug 2, 2024

This enables ::Write support using the datamodel interface when the data model interface is in use.

Changes

  • redirect writes to ::Write if datamodel interface is enabled
  • Update write arguments to contain a last success path so that chunking for ACL works.
  • added explicit variants to host builds that controls what data model is used (check/enabled/disabled) for easier testing and enabling
  • Writing may mark paths as dirty, which requires the data model context. starting passing in a data model context:
    • added context Startup and Shutdown in InteractionModelEngine
    • made InteractionModelEngine set the current exchange as a scoped context when processing a message via OnMessageReceived
  • fixed up unit tests. In particular "multiple success/failures" are now not possible anymore as a single return value is done, so that test although it passes, has little meaning anymore.
  • Updated order of "read-only/existence check" in the codegen writer to be done before "ACL" check. THIS IS WRONG BY SPEC however it is currently enforced by TC_AccessChecker.py to match existing ember_compatibility_functions.cpp

Copy link

semanticdiff-com bot commented Aug 2, 2024

Review changes with SemanticDiff.

src/app/InteractionModelEngine.h Outdated Show resolved Hide resolved
src/app/InteractionModelEngine.h Show resolved Hide resolved
src/app/InteractionModelEngine.h Show resolved Hide resolved
src/app/WriteHandler.cpp Outdated Show resolved Hide resolved
src/app/WriteHandler.h Outdated Show resolved Hide resolved
src/app/data-model-provider/OperationTypes.h Outdated Show resolved Hide resolved
src/app/data-model-provider/OperationTypes.h Outdated Show resolved Hide resolved
src/app/data-model-provider/OperationTypes.h Outdated Show resolved Hide resolved
andy31415 and others added 10 commits September 16, 2024 09:02

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Co-authored-by: Boris Zbarsky <[email protected]>

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
…rite.cpp

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

github-actions bot commented Sep 16, 2024

PR #34754: Size comparison from 1dacd5d to a61e9a5

Increases above 0.2%:

platform target config section 1dacd5d a61e9a5 change % change
tizen all-clusters-app arm unknown 4852 4876 24 0.5
chip-tool-ubsan arm unknown 10284 10308 24 0.2
Full report (13 builds for nxp, qpg, stm32, tizen)
platform target config section 1dacd5d a61e9a5 change % change
nxp contact k32w0+release FLASH 580520 580736 216 0.0
RAM 70720 70728 8 0.0
k32w1+release FLASH 593272 593488 216 0.0
RAM 62552 62560 8 0.0
mcxw71+release FLASH 593024 593248 224 0.0
RAM 62552 62560 8 0.0
light k32w0+release FLASH 616316 616564 248 0.0
RAM 70184 70208 24 0.0
k32w1+release FLASH 679512 679784 272 0.0
RAM 48176 48200 24 0.0
mcxw71+release FLASH 679528 679800 272 0.0
RAM 48176 48200 24 0.0
lock k32w1+release FLASH 701824 702088 264 0.0
RAM 66708 66716 8 0.0
mcxw71+release FLASH 701832 702096 264 0.0
RAM 66708 66716 8 0.0
qpg lighting-app qpg6105+debug FLASH 659096 659360 264 0.0
RAM 105212 105236 24 0.0
lock-app qpg6105+debug FLASH 616988 617244 256 0.0
RAM 99688 99704 16 0.0
stm32 light STM32WB5MM-DK FLASH 480568 480896 328 0.1
RAM 144668 144692 24 0.0
tizen all-clusters-app arm unknown 4852 4876 24 0.5
FLASH 1724840 1726004 1164 0.1
RAM 89524 89656 132 0.1
chip-tool-ubsan arm unknown 10284 10308 24 0.2
FLASH 17532050 17560410 28360 0.2
RAM 7609748 7622636 12888 0.2

Copy link

github-actions bot commented Sep 16, 2024

PR #34754: Size comparison from 1dacd5d to 92254ba

Increases above 0.2%:

platform target config section 1dacd5d 92254ba change % change
linux air-purifier-app debug RAM 128944 129424 480 0.4
all-clusters-minimal-app debug RAM 240640 241136 496 0.2
bridge-app debug RAM 217840 218304 464 0.2
chip-tool-ipv6only arm64 unknown 20384 20464 80 0.4
fabric-bridge-app debug RAM 204456 204888 432 0.2
lock-app debug RAM 203928 204376 448 0.2
ota-provider-app debug RAM 197632 198112 480 0.2
ota-requestor-app debug RAM 202200 202680 480 0.2
shell debug RAM 159448 159952 504 0.3
thermostat-no-ble arm64 unknown 9336 9392 56 0.6
tizen all-clusters-app arm unknown 4852 4876 24 0.5
Full report (82 builds for bl602, bl702, bl702l, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 1dacd5d 92254ba change % change
bl602 lighting-app bl602 FLASH 1278168 1280296 2128 0.2
RAM 95824 95848 24 0.0
bl602+mfd FLASH 1292278 1294418 2140 0.2
RAM 95968 95992 24 0.0
bl602+rpc FLASH 1317132 1319260 2128 0.2
RAM 104248 104272 24 0.0
bl702 lighting-app bl702 FLASH 943874 944190 316 0.0
RAM 15145 15145 0 0.0
bl702+mfd FLASH 946274 946590 316 0.0
RAM 15305 15305 0 0.0
bl702+rpc FLASH 1039194 1039510 316 0.0
RAM 24173 24173 0 0.0
bl706-eth FLASH 646070 646642 572 0.1
RAM 25233 25233 0 0.0
bl706-wifi FLASH 894082 894462 380 0.0
RAM 14477 14477 0 0.0
bl702l lighting-app bl702l FLASH 960534 960850 316 0.0
RAM 16804 16804 0 0.0
bl702l+mfd FLASH 963156 963472 316 0.0
RAM 16964 16964 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 677261 677605 344 0.1
RAM 78492 78516 24 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 697113 697457 344 0.0
RAM 81124 81148 24 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 697113 697457 344 0.0
RAM 81124 81148 24 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 654041 654385 344 0.1
RAM 73560 73584 24 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 613453 613757 304 0.0
RAM 71452 71468 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 633081 633393 312 0.0
RAM 74004 74020 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 633081 633393 312 0.0
RAM 74004 74020 16 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 632573 632893 320 0.1
RAM 74500 74516 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 652289 652609 320 0.0
RAM 77052 77068 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 652289 652609 320 0.0
RAM 77052 77068 16 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 607989 608309 320 0.1
RAM 68588 68604 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 627841 628169 328 0.1
RAM 71220 71236 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 627841 628169 328 0.1
RAM 71220 71236 16 0.0
efr32 lighting-app BRD4187C FLASH 932468 932812 344 0.0
RAM 135056 135080 24 0.0
lock-app BRD2605a FLASH 739960 740480 520 0.1
RAM 231212 231220 8 0.0
BRD4338a FLASH 740608 741128 520 0.1
RAM 231244 231252 8 0.0
window-app BRD4187C FLASH 1015544 1016040 496 0.0
RAM 126996 127004 8 0.0
esp32 all-clusters-app c3devkit DRAM 94152 94168 16 0.0
FLASH 1539526 1539840 314 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115096 115120 24 0.0
FLASH 1549846 1550138 292 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4688 4688 0 0.0
FLASH 2771233 2763735 -7498 -0.3
RAM 128944 129424 480 0.4
all-clusters-app debug unknown 5456 5456 0 0.0
FLASH 6082726 6075196 -7530 -0.1
RAM 514288 514720 432 0.1
all-clusters-minimal-app debug unknown 5352 5352 0 0.0
FLASH 5406782 5399206 -7576 -0.1
RAM 240640 241136 496 0.2
bridge-app debug unknown 5336 5336 0 0.0
FLASH 4740294 4732762 -7532 -0.2
RAM 217840 218304 464 0.2
chip-tool debug unknown 5888 5888 0 0.0
FLASH 12676354 12680616 4262 0.0
RAM 562282 562834 552 0.1
chip-tool-ipv6only arm64 unknown 20384 20464 80 0.4
FLASH 11341604 11344532 2928 0.0
RAM 612384 612968 584 0.1
fabric-admin debug unknown 5720 5720 0 0.0
FLASH 10978909 10983171 4262 0.0
RAM 561322 561882 560 0.1
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4563032 4555422 -7610 -0.2
RAM 204456 204888 432 0.2
lighting-app debug+rpc+ui unknown 5984 5984 0 0.0
FLASH 5676609 5668993 -7616 -0.1
RAM 228128 228560 432 0.2
lock-app debug unknown 5272 5272 0 0.0
FLASH 4789574 4781966 -7608 -0.2
RAM 203928 204376 448 0.2
ota-provider-app debug unknown 4648 4648 0 0.0
FLASH 4422762 4415152 -7610 -0.2
RAM 197632 198112 480 0.2
ota-requestor-app debug unknown 4584 4584 0 0.0
FLASH 4561508 4553900 -7608 -0.2
RAM 202200 202680 480 0.2
shell debug unknown 4216 4216 0 0.0
FLASH 3107901 3100285 -7616 -0.2
RAM 159448 159952 504 0.3
thermostat-no-ble arm64 unknown 9336 9392 56 0.6
FLASH 4333260 4326612 -6648 -0.2
RAM 242256 242664 408 0.2
tv-app debug unknown 5552 5552 0 0.0
FLASH 6022261 6014453 -7808 -0.1
RAM 587088 587520 432 0.1
tv-casting-app debug unknown 5208 5208 0 0.0
FLASH 10883805 10876317 -7488 -0.1
RAM 650256 650848 592 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 915124 915448 324 0.0
RAM 142259 142283 24 0.0
nrf7002dk_nrf5340_cpuapp FLASH 886440 886680 240 0.0
RAM 140398 140422 24 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 846468 846796 328 0.0
RAM 141077 141093 16 0.0
nxp contact k32w0+release FLASH 580520 580736 216 0.0
RAM 70720 70728 8 0.0
k32w1+release FLASH 593272 593488 216 0.0
RAM 62552 62560 8 0.0
mcxw71+release FLASH 593024 593248 224 0.0
RAM 62552 62560 8 0.0
light k32w0+release FLASH 616316 616564 248 0.0
RAM 70184 70208 24 0.0
k32w1+release FLASH 679512 679784 272 0.0
RAM 48176 48200 24 0.0
mcxw71+release FLASH 679528 679800 272 0.0
RAM 48176 48200 24 0.0
lock k32w1+release FLASH 701824 702088 264 0.0
RAM 66708 66716 8 0.0
mcxw71+release FLASH 701832 702096 264 0.0
RAM 66708 66716 8 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646916 1647476 560 0.0
RAM 210952 210976 24 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1550556 1551092 536 0.0
RAM 207664 207688 24 0.0
light cy8ckit_062s2_43012 FLASH 1466468 1467020 552 0.0
RAM 200672 200696 24 0.0
lock cy8ckit_062s2_43012 FLASH 1462988 1463540 552 0.0
RAM 225024 225048 24 0.0
qpg lighting-app qpg6105+debug FLASH 659096 659360 264 0.0
RAM 105212 105236 24 0.0
lock-app qpg6105+debug FLASH 616988 617244 256 0.0
RAM 99688 99704 16 0.0
stm32 light STM32WB5MM-DK FLASH 480568 480896 328 0.1
RAM 144668 144692 24 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 621708 621942 234 0.0
RAM 50964 50988 24 0.0
all-clusters-app tlsr9118bdk40d FLASH 688210 688446 236 0.0
RAM 148388 148412 24 0.0
all-clusters-minimal-app tlsr9528a FLASH 779892 780128 236 0.0
RAM 110756 110780 24 0.0
bridge-app tlsr9258a FLASH 680728 680964 236 0.0
RAM 91620 91644 24 0.0
contact-sensor-app tlsr9528a_retention FLASH 621472 621706 234 0.0
RAM 50916 50940 24 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 707404 707640 236 0.0
RAM 74256 74280 24 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 624626 624862 236 0.0
RAM 144292 144316 24 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 810034 810270 236 0.0
RAM 99424 99448 24 0.0
lock-app-dfu tlsr9528a FLASH 655224 655460 236 0.0
RAM 66976 67000 24 0.0
ota-requestor-app tlsr9258a FLASH 696704 696940 236 0.0
RAM 91212 91236 24 0.0
pump-app-usb tlsr9518adk80d FLASH 633060 633296 236 0.0
RAM 55792 55816 24 0.0
pump-controller-app tlsr9518adk80d FLASH 610250 610486 236 0.0
RAM 53036 53060 24 0.0
shell tlsr9518adk80d FLASH 467176 467176 0 0.0
RAM 68668 68668 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 628436 628672 236 0.0
RAM 52636 52660 24 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 652386 652622 236 0.0
RAM 56584 56608 24 0.0
thermostat tlsr9518adk80d FLASH 636980 637216 236 0.0
RAM 53428 53452 24 0.0
window-covering tlsr9118bdk40d FLASH 523156 523392 236 0.0
RAM 97268 97284 16 0.0
tizen all-clusters-app arm unknown 4852 4876 24 0.5
FLASH 1724840 1726004 1164 0.1
RAM 89524 89656 132 0.1
chip-tool-ubsan arm unknown 10284 10308 24 0.2
FLASH 17532050 17560578 28528 0.2
RAM 7609748 7622720 12972 0.2

Copy link

github-actions bot commented Sep 17, 2024

PR #34754: Size comparison from 1dacd5d to 3229704

Increases above 0.2%:

platform target config section 1dacd5d 3229704 change % change
linux air-purifier-app debug RAM 128944 129424 480 0.4
all-clusters-minimal-app debug RAM 240640 241136 496 0.2
bridge-app debug RAM 217840 218304 464 0.2
chip-tool-ipv6only arm64 unknown 20384 20464 80 0.4
fabric-bridge-app debug RAM 204456 204888 432 0.2
lock-app debug RAM 203928 204376 448 0.2
ota-provider-app debug RAM 197632 198112 480 0.2
ota-requestor-app debug RAM 202200 202680 480 0.2
shell debug RAM 159448 159952 504 0.3
thermostat-no-ble arm64 unknown 9336 9392 56 0.6
nxp contact k32w1+release RAM 62552 62904 352 0.6
mcxw71+release RAM 62552 62904 352 0.6
light k32w1+release RAM 48176 48536 360 0.7
mcxw71+release RAM 48176 48536 360 0.7
lock k32w1+release RAM 66708 67044 336 0.5
mcxw71+release RAM 66708 67044 336 0.5
tizen all-clusters-app arm unknown 4852 4876 24 0.5
Full report (82 builds for bl602, bl702, bl702l, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 1dacd5d 3229704 change % change
bl602 lighting-app bl602 FLASH 1278168 1280296 2128 0.2
RAM 95824 95848 24 0.0
bl602+mfd FLASH 1292278 1294418 2140 0.2
RAM 95968 95992 24 0.0
bl602+rpc FLASH 1317132 1319260 2128 0.2
RAM 104248 104272 24 0.0
bl702 lighting-app bl702 FLASH 943874 944190 316 0.0
RAM 15145 15145 0 0.0
bl702+mfd FLASH 946274 946590 316 0.0
RAM 15305 15305 0 0.0
bl702+rpc FLASH 1039194 1039510 316 0.0
RAM 24173 24173 0 0.0
bl706-eth FLASH 646070 646642 572 0.1
RAM 25233 25233 0 0.0
bl706-wifi FLASH 894082 894462 380 0.0
RAM 14477 14477 0 0.0
bl702l lighting-app bl702l FLASH 960534 960850 316 0.0
RAM 16804 16804 0 0.0
bl702l+mfd FLASH 963156 963472 316 0.0
RAM 16964 16964 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 677261 677605 344 0.1
RAM 78492 78516 24 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 697113 697457 344 0.0
RAM 81124 81148 24 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 697113 697457 344 0.0
RAM 81124 81148 24 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 654041 654385 344 0.1
RAM 73560 73584 24 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 613453 613757 304 0.0
RAM 71452 71468 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 633081 633393 312 0.0
RAM 74004 74020 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 633081 633393 312 0.0
RAM 74004 74020 16 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 632573 632893 320 0.1
RAM 74500 74516 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 652289 652609 320 0.0
RAM 77052 77068 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 652289 652609 320 0.0
RAM 77052 77068 16 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 607989 608309 320 0.1
RAM 68588 68604 16 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 627841 628169 328 0.1
RAM 71220 71236 16 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 627841 628169 328 0.1
RAM 71220 71236 16 0.0
efr32 lighting-app BRD4187C FLASH 932468 932812 344 0.0
RAM 135056 135080 24 0.0
lock-app BRD2605a FLASH 739960 740480 520 0.1
RAM 231212 231220 8 0.0
BRD4338a FLASH 740608 741128 520 0.1
RAM 231244 231252 8 0.0
window-app BRD4187C FLASH 1015544 1016040 496 0.0
RAM 126996 127004 8 0.0
esp32 all-clusters-app c3devkit DRAM 94152 94168 16 0.0
FLASH 1539526 1539840 314 0.0
IRAM 82538 82538 0 0.0
m5stack DRAM 115096 115120 24 0.0
FLASH 1549846 1550138 292 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4688 4688 0 0.0
FLASH 2771233 2763269 -7964 -0.3
RAM 128944 129424 480 0.4
all-clusters-app debug unknown 5456 5456 0 0.0
FLASH 6082726 6074730 -7996 -0.1
RAM 514288 514720 432 0.1
all-clusters-minimal-app debug unknown 5352 5352 0 0.0
FLASH 5406782 5398740 -8042 -0.1
RAM 240640 241136 496 0.2
bridge-app debug unknown 5336 5336 0 0.0
FLASH 4740294 4732296 -7998 -0.2
RAM 217840 218304 464 0.2
chip-tool debug unknown 5888 5888 0 0.0
FLASH 12676354 12680228 3874 0.0
RAM 562282 562834 552 0.1
chip-tool-ipv6only arm64 unknown 20384 20464 80 0.4
FLASH 11341604 11344004 2400 0.0
RAM 612384 612968 584 0.1
fabric-admin debug unknown 5720 5720 0 0.0
FLASH 10978909 10982783 3874 0.0
RAM 561322 561882 560 0.1
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4563032 4554956 -8076 -0.2
RAM 204456 204888 432 0.2
lighting-app debug+rpc+ui unknown 5984 5984 0 0.0
FLASH 5676609 5668529 -8080 -0.1
RAM 228128 228560 432 0.2
lock-app debug unknown 5272 5272 0 0.0
FLASH 4789574 4781500 -8074 -0.2
RAM 203928 204376 448 0.2
ota-provider-app debug unknown 4648 4648 0 0.0
FLASH 4422762 4414686 -8076 -0.2
RAM 197632 198112 480 0.2
ota-requestor-app debug unknown 4584 4584 0 0.0
FLASH 4561508 4553434 -8074 -0.2
RAM 202200 202680 480 0.2
shell debug unknown 4216 4216 0 0.0
FLASH 3107901 3099821 -8080 -0.3
RAM 159448 159952 504 0.3
thermostat-no-ble arm64 unknown 9336 9392 56 0.6
FLASH 4333260 4326004 -7256 -0.2
RAM 242256 242664 408 0.2
tv-app debug unknown 5552 5552 0 0.0
FLASH 6022261 6014069 -8192 -0.1
RAM 587088 587520 432 0.1
tv-casting-app debug unknown 5208 5208 0 0.0
FLASH 10883805 10875933 -7872 -0.1
RAM 650256 650848 592 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 915124 915448 324 0.0
RAM 142259 142283 24 0.0
nrf7002dk_nrf5340_cpuapp FLASH 886440 886680 240 0.0
RAM 140398 140422 24 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 846468 846796 328 0.0
RAM 141077 141093 16 0.0
nxp contact k32w0+release FLASH 580520 580736 216 0.0
RAM 70720 70728 8 0.0
k32w1+release FLASH 593272 593552 280 0.0
RAM 62552 62904 352 0.6
mcxw71+release FLASH 593024 593312 288 0.0
RAM 62552 62904 352 0.6
light k32w0+release FLASH 616316 616564 248 0.0
RAM 70184 70208 24 0.0
k32w1+release FLASH 679512 679848 336 0.0
RAM 48176 48536 360 0.7
mcxw71+release FLASH 679528 679864 336 0.0
RAM 48176 48536 360 0.7
lock k32w1+release FLASH 701824 702152 328 0.0
RAM 66708 67044 336 0.5
mcxw71+release FLASH 701832 702160 328 0.0
RAM 66708 67044 336 0.5
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646916 1647476 560 0.0
RAM 210952 210976 24 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1550556 1551092 536 0.0
RAM 207664 207688 24 0.0
light cy8ckit_062s2_43012 FLASH 1466468 1467020 552 0.0
RAM 200672 200696 24 0.0
lock cy8ckit_062s2_43012 FLASH 1462988 1463540 552 0.0
RAM 225024 225048 24 0.0
qpg lighting-app qpg6105+debug FLASH 659096 659360 264 0.0
RAM 105212 105236 24 0.0
lock-app qpg6105+debug FLASH 616988 617244 256 0.0
RAM 99688 99704 16 0.0
stm32 light STM32WB5MM-DK FLASH 480568 480896 328 0.1
RAM 144668 144692 24 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 621708 621942 234 0.0
RAM 50964 50988 24 0.0
all-clusters-app tlsr9118bdk40d FLASH 688210 688446 236 0.0
RAM 148388 148412 24 0.0
all-clusters-minimal-app tlsr9528a FLASH 779892 780128 236 0.0
RAM 110756 110780 24 0.0
bridge-app tlsr9258a FLASH 680728 680964 236 0.0
RAM 91620 91644 24 0.0
contact-sensor-app tlsr9528a_retention FLASH 621472 621706 234 0.0
RAM 50916 50940 24 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 707404 707640 236 0.0
RAM 74256 74280 24 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 624626 624862 236 0.0
RAM 144292 144316 24 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 810034 810270 236 0.0
RAM 99424 99448 24 0.0
lock-app-dfu tlsr9528a FLASH 655224 655460 236 0.0
RAM 66976 67000 24 0.0
ota-requestor-app tlsr9258a FLASH 696704 696940 236 0.0
RAM 91212 91236 24 0.0
pump-app-usb tlsr9518adk80d FLASH 633060 633296 236 0.0
RAM 55792 55816 24 0.0
pump-controller-app tlsr9518adk80d FLASH 610250 610486 236 0.0
RAM 53036 53060 24 0.0
shell tlsr9518adk80d FLASH 467176 467176 0 0.0
RAM 68668 68668 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 628436 628672 236 0.0
RAM 52636 52660 24 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 652386 652622 236 0.0
RAM 56584 56608 24 0.0
thermostat tlsr9518adk80d FLASH 636980 637216 236 0.0
RAM 53428 53452 24 0.0
window-covering tlsr9118bdk40d FLASH 523156 523392 236 0.0
RAM 97268 97284 16 0.0
tizen all-clusters-app arm unknown 4852 4876 24 0.5
FLASH 1724840 1726004 1164 0.1
RAM 89524 89656 132 0.1
chip-tool-ubsan arm unknown 10284 10308 24 0.2
FLASH 17532050 17560578 28528 0.2
RAM 7609748 7622724 12976 0.2

@mergify mergify bot merged commit 0b8ffb7 into project-chip:master Sep 18, 2024
68 checks passed
yyzhong-g pushed a commit to yyzhong-g/connectedhomeip that referenced this pull request Dec 12, 2024
* Implement DM::Provider::Write usage

* Fix compile

* Fix java builds

* Update src/app/InteractionModelEngine.cpp

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

* Make codegen data model call increasing the cluster data version

* Restyle

* Make sure that attribute changed information can be propagated out of ember

* Optimize storage size of WriteHandler

* Restyle

* Make the code more obvious identical with what was there before

* Change Provider to not double-call the dirty and version increase

* Update src/app/InteractionModelEngine.cpp

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

* Cleaner usage: no need of a separate function that is used in one place only

* Attempt an API update

* Fix typos in the Accessors src

* Fix typo and regen

* More fixes on accessors

* Update signature for emAfWriteAttributeExternal

* Add a comment about all the checks being vague

* Update src/app/util/af-types.h

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

* Update src/app/util/af-types.h

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

* Update src/app/util/attribute-storage.cpp

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

* Update src/app/zap-templates/templates/app/attributes/Accessors-src.zapt

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

* Update src/app/util/mock/CodegenEmberMocks.cpp

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

* Update src/app/zap-templates/templates/app/attributes/Accessors-src.zapt

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

* Update src/app/zap-templates/templates/app/attributes/Accessors-src.zapt

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

* zap regen and restyle

* Update src/app/zap-templates/templates/app/attributes/Accessors-src.zapt

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

* Update src/app/util/attribute-table.cpp

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

* Update src/app/util/attribute-storage.cpp

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

* Update src/app/util/attribute-storage.cpp

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

* Update src/app/util/attribute-table.cpp

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

* Update src/app/util/attribute-table.cpp

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

* Update src/app/util/attribute-storage.cpp

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

* Update src/app/util/attribute-table.h

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

* Rename ChangedPathListener to AttributesChangedListener

* Remove chip:: and chip::app

* Update constructors of AttributePathParams and add nodiscard according to the linter to never call const methods without considering their return value

* Restyled by clang-format

* Remove auto-inserted include

* Update again and zap regen: removed extra namespace prefixes in accessors.h/cpp

* Add comment about uint8_t non-const usage...

* Another rename given that the listener is now an attributes and not a path listener

* Update src/app/util/attribute-table.h

Co-authored-by: Tennessee Carmel-Veilleux <[email protected]>

* Update after merge to have more things compile

* Everything compiles now

* Restyle

* Make unit tests pass: mocks also have to call the change listeners

* Comment update to talk more about AttributesChangedListener

* Restyle

* Add support for a previous path write ... this is similar to what ACL caching and tokenizing currently does, but in a explicit manner describing the ACL use case

* Remove some extra added includes

* Another include fix

* Follow the comment and do not restrict the cache to ACL cluster, since this is what current ember does

* More self code review changes

* Make tests pass, more code cleanup

* Match ordering to ember-compatibility functions. This is ODD because we check attribute existance before access!

* Adjust test ordering and add a large note that we are probably doing the wrong thing, however tests force us to do the wrong thing

* Fix unit test

* Remove odd comment

* Add a few ending endifs

* Renamed ScopedExchangeContext

* Update src/app/InteractionModelEngine.h

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

* Update src/app/WriteHandler.h

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

* Update src/app/WriteHandler.h

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

* Update src/app/data-model-provider/OperationTypes.h

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

* Update src/app/data-model-provider/OperationTypes.h

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

* Update src/app/data-model-provider/OperationTypes.h

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

* Update src/app/codegen-data-model-provider/CodegenDataModelProvider_Write.cpp

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

* Restyle to reorder includes

* Add issue link

* Update equality logic

* Rename member to mLastSuccessfullyWrittenPath

* Update argument logic

* Make ActionContext private in IME so it is not such a public API

* Clean up comments

* fix up compares

* Restyle

---------

Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Tennessee Carmel-Veilleux <[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