This project contains HTTP/2 support for Swift projects using SwiftNIO. To get started, check the API docs.
Building
swift-nio-http2 is a SwiftPM project and can be built and tested very simply:
$ swift build
$ swift test
Versions
Just like the rest of the SwiftNIO family, swift-nio-http2 follows SemVer 2.0.0 with a separate document
declaring SwiftNIO’s Public API.
swift-nio-http2 1.x
swift-nio-http2 versions 1.x are a pure-Swift implementation of the HTTP/2 protocol for SwiftNIO. It’s part of the SwiftNIO 2 family of repositories and does not have any dependencies besides swift-nio and Swift 5. As the latest version, it lives on the main branch.
To depend on swift-nio-http2, put the following in the dependencies of your Package.swift:
The most recent versions of SwiftNIO HTTP/2 support Swift 5.6 and newer. The minimum Swift version supported for SwiftNIO HTTP/2 releases are detailed below:
SwiftNIO HTTP/2
Minimum Swift Version
1.0.0 ..< 1.18.0
5.0
1.18.0 ..< 1.21.0
5.2
1.21.0 ..< 1.23.0
5.4
1.24.0 ..< 1.27.0
5.5.2
1.27.0 ...
5.6
swift-nio-http2 0.x
The legacy swift-nio-http 0.x is part of the SwiftNIO 1 family of repositories and works on Swift 4.1 and newer but requires nghttp2 to be installed on your system. The source code can be found on the nghttp2-support-branch.
Developing SwiftNIO HTTP/2
For the most part, SwiftNIO development is as straightforward as any other SwiftPM project. With that said, we do have a few processes that are worth understanding before you contribute. For details, please see CONTRIBUTING.md in this repository.
SwiftNIO HTTP/2
This project contains HTTP/2 support for Swift projects using SwiftNIO. To get started, check the API docs.
Building
swift-nio-http2
is a SwiftPM project and can be built and tested very simply:Versions
Just like the rest of the SwiftNIO family, swift-nio-http2 follows SemVer 2.0.0 with a separate document declaring SwiftNIO’s Public API.
swift-nio-http2
1.xswift-nio-http2
versions 1.x are a pure-Swift implementation of the HTTP/2 protocol for SwiftNIO. It’s part of the SwiftNIO 2 family of repositories and does not have any dependencies besidesswift-nio
and Swift 5. As the latest version, it lives on themain
branch.To depend on
swift-nio-http2
, put the following in thedependencies
of yourPackage.swift
:The most recent versions of SwiftNIO HTTP/2 support Swift 5.6 and newer. The minimum Swift version supported for SwiftNIO HTTP/2 releases are detailed below:
1.0.0 ..< 1.18.0
1.18.0 ..< 1.21.0
1.21.0 ..< 1.23.0
1.24.0 ..< 1.27.0
1.27.0 ...
swift-nio-http2
0.xThe legacy
swift-nio-http
0.x is part of the SwiftNIO 1 family of repositories and works on Swift 4.1 and newer but requires nghttp2 to be installed on your system. The source code can be found on thenghttp2-support-branch
.Developing SwiftNIO HTTP/2
For the most part, SwiftNIO development is as straightforward as any other SwiftPM project. With that said, we do have a few processes that are worth understanding before you contribute. For details, please see
CONTRIBUTING.md
in this repository.