Skip to content

Releases: apple/swift-nio

SwiftNIO 2.35.0

26 Nov 09:32
37e7a33
Compare
Choose a tag to compare

SemVer Minor

  • ByteBuffer: provide multi read/write int methods (#1987)
  • ByteBuffer: Read and write null terminated strings (#1990)

SemVer Patch

  • ByteBuffer: reduce unnecessary bounds & under/overflow checks (#1988)

Other Changes

  • Fix testSchedulingTaskOnSleepingLoopWakesUpOnce (#1992)

SwiftNIO 2.34.0

10 Nov 10:36
addf69c
Compare
Choose a tag to compare

SemVer Minor

  • Conform EventLoopFuture/Promise to Sendable (#1982, patch credit to @adam-fowler)
  • HTTPDecoder: Decode informational http response head correctly (#1984)
  • Allow HTTP Server to send multiple informational heads before actual response head (#1985)

SemVer Patch

  • Remove not on eventLoop precondition for NIOPipeBootstrap (#1977, patch credit to @jabwd)
  • ByteBuffer: Reduce ARC traffic when reading (#1978, #1979)
  • ByteBuffer: shrink getSlice (#1980)
  • ByteBuffer: force getSlice to be inlined into readSlice (#1981)

Other Changes

  • Update workarounds list with our recent ones (#1962)
  • Add perf hooks for testing substring path. (#1976)

SwiftNIO 2.33.0

23 Sep 17:18
6aa9347
Compare
Choose a tag to compare

SemVer Minor

  • Move AsyncAwait helpers into NIOCore (#1969)

SemVer Patch

  • NIOSingleStepByteToMessageProcessor: Only reclaim once at the end of the decode loop (#1958)
  • NIOSingleStepByteToMessageProcessor: Inline process methods (#1959)
  • Get unit tests running again on nightly builds. (#1961)
  • Only include concurrency features on new OSes (#1966)
  • Readd module _NIOConcurrency to not break adopters (#1970)

Other updates

  • Fix HttpPart description comment typo (#1963) (patch credit to @wplong11)
  • Migrate to Swift 5.5 release in CI. (#1967)

SwiftNIO 2.31.2

23 Sep 10:19
1d425b0
Compare
Choose a tag to compare

Semver Patch

  • Backport of #1956 "Work around Xcode 13 GM SDK issues." (#1968)

SwiftNIO 1.14.4

21 Sep 15:15
546610d
Compare
Choose a tag to compare

Semver Patch

  • Work around Xcode 13 GM SDK issues. (#1964) (patch credit to @baarde)

Other changes

  • NIO1 Fix Ruby version in CI (#1965) (patch credit to @baarde)

SwiftNIO 2.32.3

16 Sep 12:15
fb48bdd
Compare
Choose a tag to compare

SemVer Patch

  • Improve performance of HTTPHeaders.subscript(canonicalForm:) (#1952)
  • Add performance and allocation tests for canonical form headers (#1953)
  • Don't count CR or LF as whitespace when trimming canonical header values (#1954)
  • Work around Xcode 13 GM SDK issues. (#1956)

SwiftNIO 2.32.2

08 Sep 16:00
f2705f9
Compare
Choose a tag to compare

SemVer Patch

  • Add safer abstraction for kqueue filter set. (#1951)

Other Changes

  • Minor rewording to clarify the location of the NIO 1 to NIO 2 migration guide (#1945, patch credit to @tonyarnold)
  • Update NIOAsyncAwaitDemo to use correct @available checks (post WWDC '21) (#1941)
  • Add compiler setting for __APPLE_USE_RFC_3542 for CNIODarwin (#1942)
  • Clarify the support status of NIO1 (#1949)
  • Fix doc generation and jazzy version (#1950)

SwiftNIO 1.14.3

02 Sep 15:58
4d8b27e
Compare
Choose a tag to compare

SemVer Patch

  • Add missing implementation of subscript(_ bounds:) to StaticString (#1947, patch credit to @baarde)

SwiftNIO 2.32.1

19 Aug 10:09
94f41c4
Compare
Choose a tag to compare

SemVer Patch

  • [Concurrency] completeWithTask expects to receive a @Sendable closure (#1943)

SwiftNIO 2.32.0

17 Aug 16:49
0f6a62a
Compare
Choose a tag to compare

This version splits the NIO module into three new submodules: NIOCore, NIOPosix and NIOEmbedded. The NIO module remains as an empty shell, importing and reexporting the new submodules. Learn more about the different modules and their purposes in the Repository organization section in our Readme.

SemVer Minor

  • Move generic NIO implementations to NIOCore (#1927, #1929, #1930, #1931)
  • Move EmbeddedChannel to its own library. (#1933)
  • Move NIO to NIOPosix, make NIO a shell. (#1936)

Other Changes

  • Extract PriorityQueue to its own module. (#1932)
  • Our readme should be clearer about our products. (#1934, #1940)
  • Clean up dependencies and imports. (#1935)
  • Re-add NIO as a dependency of our library targets. (#1937)