Skip to content

Bump to swift-nio-quic 0.2.1 - #15

Merged
glbrntt merged 11 commits into
apple:mainfrom
glbrntt:breakage
Aug 10, 2026
Merged

Bump to swift-nio-quic 0.2.1#15
glbrntt merged 11 commits into
apple:mainfrom
glbrntt:breakage

Conversation

@glbrntt

@glbrntt glbrntt commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Motivation:

swift-nio-quic tagged a new release with some breaking changes

Modifications:

  • Adopt new API
  • Translate QUIC errors to HTTP3 errors in the stream channel
  • Bail out when self.context is nil in release queue; this can be reached re-entrantly when a peer attempts to open an invalid stream. This was previously not reachable because of incorrect behavior in swift-nio-quic.

Result:

Builds and tests pass

Motivation:

swift-nio-quic tagged a new release with some breaking changes

Modifications:

- Adopt new API

Result:

Builds
@glbrntt glbrntt added the 🔨 semver/patch No public API change. label Jul 30, 2026
@glbrntt

glbrntt commented Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

@aryan-25 FYI I have some fixes to swift-nio-quic in flight as well: the CI broke a while ago so we've accrued a few regressions.

Motivation:

When the peer closes the connection, SwiftNetwork delivers the
CONNECTION_CLOSE to every stream flow, so each stream's pipeline sees a
'QUICConnectionError' before the connection's pipeline does. The
coordinator's own fan-out ('cancelStreamsDueToConnectionClose') can't
reach those streams because they have already closed and deregistered by
the time it runs.

'HTTP3StreamHandler' passed the error through untouched, so the owner of
a request stream saw a QUIC error rather than an HTTP/3 one. It already
translates the other two peer-close errors, RESET_STREAM and
STOP_SENDING; CONNECTION_CLOSE was the missing third.

Modifications:

- Translate 'QUICConnectionError' into an 'HTTP3Error' with code
  'remoteConnectionError' in 'HTTP3StreamHandler.errorCaught', keeping
  the peer's reason phrase and, for application errors, its error code.

Result:

Streams report HTTP/3 errors when the connection is closed by the peer
@glbrntt
glbrntt requested a review from aryan-25 August 10, 2026 12:48
Comment thread Package.swift Outdated
@glbrntt glbrntt changed the title Bump to swift-nio-quic 0.2.0 Bump to swift-nio-quic 0.2.1 Aug 10, 2026
@glbrntt
glbrntt enabled auto-merge (squash) August 10, 2026 12:59
@glbrntt
glbrntt merged commit 9d87e9c into apple:main Aug 10, 2026
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔨 semver/patch No public API change.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants