Releases: apple/swift-nio-http2
SwiftNIO HTTP/2 1.14.1
SemVer Patch
- Fixed a bug where extraneous
WINDOW_UPDATE
frames could be emitted when a stream is closed resulting in a connection error (#233)
SwiftNIO HTTP/2 1.14.0
SwiftNIO HTTP/2 1.13.0
Notable Changes
The release contains a fix for an ergonomic issue which could result in a connection error when first writing on streams in an order different to the order in which they were created. The issue is detailed in #214 and associated pull requests.
The fix required that HTTP/2 stream channels created by the local peer be assigned stream IDs when they first emit writes rather than when they are initialized. As such, HTTP/2 stream channels will now operate on HTTP2Frame.FramePayload
when created using the new API. The old behaviour, where stream channels operate on HTTP2Frame
, remains but is now deprecated.
The following functions were deprecated and replaced with equivalents which do not accept an HTTP2StreamID
in the stream initializer closure:
HTTP2StreamMultiplexer.init
,HTTP2StreamMultiplexer.createStreamChannel
,Channel.configureHTTP2Pipeline
,
In addition, the HTTP2 to HTTP1 codecs were also deprecated:
HTTP2ToHTTP1ClientCodec
is deprecated in favor ofHTTP2FramePayloadClientCodec
HTTP2ToHTTP1ServerCodec
is deprecated in favor ofHTTP2FramePayloadServerCodec
SemVer Minor
- Fixed an ergonomics issue which could result in a connection error when writing on streams in an order different to their creation order (#215, #216, #217, #218, #219, #221, #222, #224, #225, #226, #227, #228).
Other Changes
SwiftNIO HTTP/2 1.12.3
SwiftNIO HTTP/2 1.12.2
SwiftNIO HTTP/2 1.12.1
SwiftNIO HTTP/2 1.12.0
Semver Minor
- Made
HTTP2StreamMultiplexer
's target inbound flow control window size configurable. (#202) (Patch credit to @johnkassebaum)
Semver Patch
- Improved debugging output for a number of types. (#197, #198)
- Fixed a thread-safety issue with
Channel.isActive
, which could not safely be called from off the event loop with HTTP/2 child channels. (#199) - Fixed some warnings. (#203)
- Improved README. (#200) (Patch credit to @MaxDesiatov)
- Fixed broken docker setup. (#196, #201)
- Improved docs. (#195)
SwiftNIO HTTP/2 1.11.0
SwiftNIO HTTP/2 1.10.0
Semver Minor
- Added pipeline helper for configuring a HTTP server that uses both HTTP/1 and HTTP/2. (#193, credit to @mariosangiorgio)
- Deprecated
ChannelPipeline.configureHTTP2SecureUpgrade
as it was essentially unusable, replaced withChannel.configureHTTP2SecureUpgrade
instead. (#193, credit to @mariosangiorgio)
Semver Patch
- Correctly exert backpressure using the stream flow control window. (#191)
- Added podspec helpers. (#184, #185, #189, credit to @Jake-Prickett)
- Doc generation updates. (#187)
- Improvement to testing code. (#192, credit to @shekhar-rajak)