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

Simplify the logic in invokeCommandWithEndpointID in MTRBaseDevice. #25199

Conversation

bzbarsky-apple
Copy link
Contributor

  • Fix MTRInvokeCallback to guarantee callback delivery, similar to Handle an (invalid) empty InvokeResponses list. #25197
  • Fix NSObjectCommandCallback to guarantee callback delivery and ensure that it only calls a single callback.
  • Simplify the logic in invokeCommandWithEndpointID by relying on the now-enforced invariants around callbacks.
  • Document how errors are delivered for invokeCommandWithEndpointID.

* Fix MTRInvokeCallback to guarantee callback delivery, similar to
  project-chip#25197
* Fix NSObjectCommandCallback to guarantee callback delivery and ensure that it
  only calls a single callback.
* Simplify the logic in invokeCommandWithEndpointID by relying on the
  now-enforced invariants around callbacks.
* Document how errors are delivered for invokeCommandWithEndpointID.
@github-actions
Copy link

PR #25199: Size comparison from e0e3225 to fc3824f

Increases (1 build for cc32xx)
platform target config section e0e3225 fc3824f change % change
cc32xx lock CC3235SF_LAUNCHXL .debug_info 20256439 20256440 1 0.0
Full report (1 build for cc32xx)
platform target config section e0e3225 fc3824f change % change
cc32xx lock CC3235SF_LAUNCHXL 0 0 0 0.0
(read only) 642529 642529 0 0.0
(read/write) 203672 203672 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 197072 197072 0 0.0
.comment 194 194 0 0.0
.data 1480 1480 0 0.0
.debug_abbrev 930533 930533 0 0.0
.debug_aranges 87392 87392 0 0.0
.debug_frame 300100 300100 0 0.0
.debug_info 20256439 20256440 1 0.0
.debug_line 2656005 2656005 0 0.0
.debug_loc 2796891 2796891 0 0.0
.debug_ranges 281688 281688 0 0.0
.debug_str 3018892 3018892 0 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 105817 105817 0 0.0
.shstrtab 232 232 0 0.0
.stab 204 204 0 0.0
.stabstr 441 441 0 0.0
.stack 2048 2048 0 0.0
.strtab 377598 377598 0 0.0
.symtab 256144 256144 0 0.0
.text 534588 534588 0 0.0

@pullapprove pullapprove bot requested a review from nivi-apple February 20, 2023 20:06
@bzbarsky-apple bzbarsky-apple merged commit c6cadc8 into project-chip:master Feb 22, 2023
@bzbarsky-apple bzbarsky-apple deleted the darwin-simpler-device-invoke branch February 22, 2023 18:30
lecndav pushed a commit to lecndav/connectedhomeip that referenced this pull request Mar 22, 2023
…roject-chip#25199)

* Fix MTRInvokeCallback to guarantee callback delivery, similar to
  project-chip#25197
* Fix NSObjectCommandCallback to guarantee callback delivery and ensure that it
  only calls a single callback.
* Simplify the logic in invokeCommandWithEndpointID by relying on the
  now-enforced invariants around callbacks.
* Document how errors are delivered for invokeCommandWithEndpointID.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants