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

[pull] master from project-chip:master #572

Merged
merged 269 commits into from
May 12, 2024

Conversation

pull[bot]
Copy link

@pull pull bot commented Apr 14, 2024

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

…blished. (#32990)

* Stop doing read-throughs on MTRDevice when subscription is being established.

The key goal is to stop doing read-throughs when we expect to start getting data
soon: between sending the Sigma1 for our initial subscribe and getting the first
priming read data packets.  Any reads dispatched during that time "because we
don't have a subscription yet" are just wasted network traffic, because chances
are we're about to have a subscription and get that data as part of the priming
read anyway.

The main fix is just to stop doing read-throughs altogether for any attributes
known to not be C and if we have a subscription delegate.  In that state we
should be subscribed and should be getting updates for attribute values, and
there's no reason to read through.

The rest of the changes are related to a side-effect of the stopping of
read-throughs: if we had a subscription drop and have backed off quite a bit, a
read-through that succeeded could prod us to retry subscribing.  We don't want
to do a read just to (maybe) trigger that behavior, though.  Instead, treat a
skipped read-through as a direct signal to retry our subscription attempt.  But
not too often.

This "try to resubscribe" heuristic can probably use some tweaking.

* Fix XPC test failure.
bzbarsky-apple and others added 29 commits May 7, 2024 20:46
…33340)

* Add some unit tests for ExchangeContext and ExchangeMessageDispatch.

* Address review comment.
…33334)

On constrained devices, the number of available packet
buffers can be very low. During stress testing a device
that has 8 buffers available, which is the default on
many platforms, it was observed that the device would
receive a lot of parallel read requests and then it
would use all its buffers for responses. The responses
would then be stored in the retransmission table,
awaiting an ACK, but the ACK would never arrive because
of lack of available buffers.

Configure the retransmission table size to be less than
the number of packet buffers to make sure that not all
buffers are held by the retransmission entries, in which
case the device is unable to receive an ACK and hence it
becomes unavailable until any message times out.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
* [Chip-tool]Not register LIT at default

* Restyled by autopep8

* fix test

* Update test_definition.py

* Update test_definition.py

* Update test_definition.py

* address comments

* Update PairingCommand.cpp

* Update examples/chip-tool/commands/pairing/PairingCommand.h

Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>

* Update scripts/tests/chiptest/test_definition.py

Co-authored-by: mkardous-silabs <84793247+mkardous-silabs@users.noreply.github.com>

* make icd-registration happen  with lit only

* disable lit test in darwin framework tool

* address comment

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: Boris Zbarsky <bzbarsky@apple.com>
Co-authored-by: mkardous-silabs <84793247+mkardous-silabs@users.noreply.github.com>
…duced (#33323)

* Darwin:  promote `BooleanStateConfiguration` to Introduced (YAML step)

* Darwin:  promote `BooleanStateConfiguration` to Introduced (codegen step)
…able. Temporaly remove TestExchange from efr32 (#33375)
* Implement Android ICD Queue sending

* Kotlin detect config
…32750)

* Added operational discovery support

* Restyled by whitespace

* Restyled by clang-format

* Updates as per review feedback

* Restyled by whitespace

* Restyled by clang-format

* Updates based on additional feedback

* Restyled by whitespace

* updates as per feedback from review

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…33249)

* Refactored TestSecureSessionTable.cpp to use TestSecureSessionTable as the pw test context.

* Updated test_components[_nl].txt to move TransportLayerTests

* Fixed formatting

* Fixing merge conflict in test components nl

* Fixing merge conflict

* Updated TestSessionManagerDispatch to use staticly allocated context instead of dynamically.  Changed all tests to use XTestSuite instead of per-test SetUp/TearDown.

* Made context a non-pointer which is created/destroyed implicitly when each test case is run.

* Reordered includes to be consistent with the standard.

---------

Co-authored-by: Andrei Litvin <andy314@gmail.com>
* Darwin: promote `ValveConfigurationAndControl` to Introduced (YAML step)

* Darwin:  promote `ValveConfigurationAndControl` to Introduced (codegen step)
* remove app config header from the platform

* replace SILABS_LOG with ChipLogProgress

* Fix log
* Improve server logging on subscription failures.

1) When logging "session inactive", log which session it is.
2) When a subscription ReadHandler closes, log the relevant subscription ID and
   peer node.

* Address review comment.
* Add build target for BRD2703A

Build-script-only change to allow building examples
against EFR32 BRD2703A variant.

Testing done:
- `./scripts/build/build_examples.py --target efr32-brd2703a-unit-test build` works
  after this change, and not before.

* Fix all targets golden file :(

---------

Co-authored-by: Andrei Litvin <andy314@gmail.com>
…#31222)

* Added an interface for revocation checks to DeviceAttestationVerifier

* Addressed review comments

* Removed the changes to add revocation set support to chip-tool and it will be submitted as a followup PR

* Implemented PR #31222 review comments

* Fixed issues in revocation check and code cleanup
If you're just doing local dev, and don't have BLE, the controller
take a long time attempting to initialize BLE before timing out.
I'd rather not wait.
* Update submodule pointer

* Update file paths to pull matter support files

* Fix offset calculation
* Pull request #1812: [MATTER-2228] Remove all chip lock from the Lift and Tilt actions update.

Merge in WMN_TOOLS/matter from fix/Window-app-synchronization to RC_2.3.0-1.3

Squashed commit of the following:

commit 05e3e7224c6108e7e08ba4d9d7ff69f2b2c6fdc1
Author: Junior Martinez <67972863+jmartinez-silabs@users.noreply.github.com>
Date:   Tue May 7 16:30:30 2024 -0400

    address last comments

commit 2d32b0eca831de91ae1105cf076f07b7fd9d424f
Author: Junior Martinez <67972863+jmartinez-silabs@users.noreply.github.com>
Date:   Tue May 7 15:02:16 2024 -0400

    address comments

commit 1db94351b7be41e9ef65cabafe1abf4910446848
Author: Junior Martinez <67972863+jmartinez-silabs@users.noreply.github.com>
Date:   Mon May 6 11:32:49 2024 -0400

    Cleanup and add briefs and comments

... and 1 more commit

* Restyled by clang-format

* Apply suggestions and fix default config for the window app

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Darwin: Address various MTRSetupPayload issues

API:
- Conform to NSCopying and implement isEqual / hash
- Simplify a number of methods to not return NSError
- Add initWithPayload: as a replacement for setupPayloadWithOnboardingPayload:error:
- Add initWithQRCode: and initWithManualPairingCode: for cases where payload type is known.
- Add vendorElements as a replacement for getAllOptionalVendorData:
- Add vendorElementWithTag:
- Add removeVendorElementWithTag:
- Add addOrReplaceVendorElement:

Behaviour fixes:
- Allow QRCodes with unknown discovery methods to be parsed
- Correctly generate a long manualEntryCode when a non-standard flow is indicated
- Include vendor elements in qrCodeString
- Preserve vendor elements in encodeWithCoder / initWithCoder

Also simplify the implementation by acting as a direct wrapper of chip::SetupPayload.

Implement parsing in MTRSetupPayload directly and implement the deprecated
MTR*PayloadParser classes in terms of it, instead of the other way around.

* Fix lint check for 0x%[^x] to allow "*"

* Address review comments

* Address review comments around NSNumber

* Hide type-specific initializers as per review

* Misc tweaks
* Updated unit tests in tracing/tests to use PW instead of NL.

* Fixed the condition that enables tracing tests.  It was "mutliplexed" but that has since been replaced by a full path.

* Remove TracingTests from test_components.txt
Log PSA crypto error codes in more places to make it easier
to catch and analyze crypto misconfiguration, such as too
low number of available key slots.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
* Implement QR Code Parser

* Fix QR Code scan, static code

* Kotlin codestyle

* restore soft_ap feature
* Unit tests for BLE layer class

* Check for mBleTransport NULL before dereference

* Return false in case of handle error in BLE layer

* Check for NULL UUIDs match

* Test for exceeding max number of BLE connections

* Fix compilation on ESP32

* More compilation fixes

* Mark SetUp and TearDown as overrides

* Update includes
@woody-apple woody-apple merged commit f075b9b into woody-apple:master May 12, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment