-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Switch Interaction Model client error reporting to just CHIP_ERROR. #13888
Switch Interaction Model client error reporting to just CHIP_ERROR. #13888
Conversation
PR #13888: Size comparison from 1490461 to 7f73497 Decreases (1 build for k32w)
Full report (4 builds for cyw30739, k32w, telink)
|
7f73497
to
5315a07
Compare
PR #13888: Size comparison from 1490461 to 5315a07 Increases above 0.2%:
Increases (3 builds for esp32, linux)
Decreases (3 builds for k32w, linux, qpg)
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
5315a07
to
5f4a98d
Compare
PR #13888: Size comparison from 2926d14 to 5f4a98d Increases above 0.2%:
Increases (9 builds for cyw30739, k32w, linux, p6, qpg, telink)
Decreases (4 builds for k32w, linux, qpg)
Full report (12 builds for cyw30739, k32w, linux, p6, qpg, telink)
|
5f4a98d
to
678778c
Compare
PR #13888: Size comparison from 2926d14 to 678778c Increases above 0.2%:
Increases (20 builds for cyw30739, efr32, k32w, linux, nrfconnect, p6, qpg, telink)
Decreases (6 builds for esp32, k32w, linux, qpg)
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
678778c
to
96e4d89
Compare
PR #13888: Size comparison from bb2838f to 96e4d89 Increases above 0.2%:
Increases (12 builds for cyw30739, efr32, k32w, linux, p6, qpg, telink)
Decreases (4 builds for k32w, linux, qpg)
Full report (15 builds for cyw30739, efr32, k32w, linux, p6, qpg, telink)
|
96e4d89
to
1fb41b4
Compare
PR #13888: Size comparison from 0f9fff5 to 1fb41b4 Increases above 0.2%:
Increases (20 builds for cyw30739, efr32, k32w, linux, nrfconnect, p6, qpg, telink)
Decreases (6 builds for esp32, k32w, linux, qpg)
Full report (28 builds for cyw30739, efr32, esp32, k32w, linux, nrfconnect, p6, qpg, telink)
|
b14a369
to
35ca0cf
Compare
PR #13888: Size comparison from 270081a to 35ca0cf Increases (20 builds for cyw30739, efr32, k32w, mbed, nrfconnect, p6, qpg, telink)
Decreases (4 builds for esp32, k32w, qpg)
Full report (31 builds for cyw30739, efr32, esp32, k32w, mbed, nrfconnect, p6, qpg, telink)
|
/rebase |
Now that we can put a StatusIB inside a CHIP_ERROR, we can stop passing both, or passing just EmberAfStatus, and pass a CHIP_ERROR that either contains a StatusIB or contains the actual client-side error we ran into (e.g. failure to decode).
35ca0cf
to
a7bbc5f
Compare
PR #13888: Size comparison from e169fcf to a7bbc5f Increases above 0.2%:
Increases (22 builds for cyw30739, efr32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
Decreases (6 builds for esp32, k32w, linux, qpg)
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
…roject-chip#13888) * Switch Interaction Model client error reporting to just CHIP_ERROR. Now that we can put a StatusIB inside a CHIP_ERROR, we can stop passing both, or passing just EmberAfStatus, and pass a CHIP_ERROR that either contains a StatusIB or contains the actual client-side error we ran into (e.g. failure to decode). * Address review comments.
Now that we can put a StatusIB inside a CHIP_ERROR, we can stop
passing both, or passing just EmberAfStatus, and pass a CHIP_ERROR
that either contains a StatusIB or contains the actual client-side
error we ran into (e.g. failure to decode).
Problem
We are trying to force a StatusIB through an EmberAfStatus, it's not clear to consumers how the CHIP_ERROR and the StatusIB (or EmberAfStatus or InteractionModel::Status) interact when both are passed, etc.
Change overview
Switch all the IM failure/error callbacks to take CHIP_ERROR.
Testing
Should be no behavior changes for now. The consumers that could really use this (in CHIPDeviceController, where we are ending up treating a general status as a cluster-specific status) are not using the new APIs yet.