Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Avoid using vendored lock in BroadcastAsyncSequence
Motivation:

ManagedBuffer is explicitly not 'Sendable' on Swift nightly builds. As a
result, our Lock type stops being 'Sendable'. This is only used by the
'BroadcastAsyncSequence'.

Modifications:

- Modify 'BroadcastAsyncSequence' to use 'Mutex'. One downside to this
  approach is that when a subscribe wants to consume an element and
  there's no element available, the lock must be released and then
  re-acquired once a continuation has been created.
- Remove our lock, and update NOTICES.txt to reflect the fact we no
  longer use a copy of NIOs lock.

Result:

- Less code
- CI passes
  • Loading branch information
glbrntt committed Nov 7, 2024
commit caea70b92ecec25d9a627a1149bc3c5a75adacda
14 changes: 0 additions & 14 deletions NOTICES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,20 +17,6 @@ under the License.

-------------------------------------------------------------------------------

This product uses scripts derived from SwiftNIO's integration testing
framework: 'test_01_allocation_counts.sh', 'run-nio-alloc-counter-tests.sh' and
'test_functions.sh'.

It also uses derivations of SwiftNIO's lock 'NIOLock.swift' and locked value box
'NIOLockedValueBox.swift'.

* LICENSE (Apache License 2.0):
* https://github.com/apple/swift-nio/blob/main/LICENSE.txt
* HOMEPAGE:
* https://github.com/apple/swift-nio

---

This product uses derivations of SwiftNIOHTTP2's implementation of case
insensitive comparison of strings, found in 'HPACKHeader.swift'.

Expand Down
291 changes: 0 additions & 291 deletions Sources/GRPCCore/Internal/Concurrency Primitives/Lock.swift

This file was deleted.

Loading
Loading