Skip to content

Releases: apple/swift-nio

SwiftNIO 2.26.0

18 Feb 12:34
6d3ca7e
Compare
Choose a tag to compare

SemVer Minor

  • Specialise succeeded Void futures so we allocate less (#1703)
  • Add a synchronous pipeline view (#1741)

SemVer Patch

  • Remove CNIOAtomics and CNIOSHA1 as dependency (#1719, patch credit to @kimdv)
  • B2MD: Fix default memory reclamation strategy to match its documentation (#1729)
  • [Android] fix compile error for swift-nio-ssl (#1734, patch credit to @Guang1234567)
  • Make a few EventLoopFuture functions inlinable (#1708)
  • Remove an allocation from addHandlers (#1710)
  • Remove error handling for adding/removing handlers functions (#1712)
  • Clean up typo in method argument. (#1713)
  • Add static vars for common HTTP versions (#1723)
  • B2MD: Don't try to reclaim if continuing to parse (#1733)

Other Changes

  • Use welcoming language (#1728)
  • Replace unwelcoming language in sha1 (#1731)
  • Remove last occurrences of sanity (#1732)
  • Host header is requires for HTTP/1.1 (#1740, patch credit to @Bouke)
  • Correct typo in SelectableEventLoop class doc. (#1742, patch credit to @Hailong)
  • Only use ascii characters in perf test names. (#1718)
  • order perf tests by name in docker files (#1720)
  • docs: advanced performance analysis guide (#1738)
  • align all functions to make micro benchmarks more stable (#1739)
  • alloc counters: Use atomic globals instead of thread-locals (#1743)
  • SAL: more sync between test and EL threads (#1749, bug report credit @buttaface)
  • update code of conduct to version 1.4 (#1753)

SwiftNIO 2.25.1

17 Dec 10:43
43931b7
Compare
Choose a tag to compare

Semver Patch

  • Use CircularBuffer in EmbeddedChannel. (#1700)
  • Change the class restriction on our protocols to AnyObject (#1702)
  • Make all imports of CNIOLinux conditional on OS (#1704)

SwiftNIO 2.25.0

01 Dec 09:16
2bae395
Compare
Choose a tag to compare

SemVer Minor

  • Allow SocketAddress to be constructed from a packed byte representation (#1692, #1698, patch credit to @ayshiff)

SemVer Patch

  • Improve support for Android (#1695, patch credit to @buttaface)
  • Implement faster pointer rebasing. (#1696)
  • Remove use of removeAll(keepingCapacity:). (#1699)

SwiftNIO 2.24.0

19 Nov 01:11
2f9ea47
Compare
Choose a tag to compare

SemVer Minor

SemVer Patch

  • Implement cleanupSocket(unixDomainSocketPath:) for Windows (#1654, patch credit to @compnerd)
  • Implement network interface enumeration for Windows (#1647, patch credit to @compnerd)
  • Correct return value for messaging on Windows (#1667, patch credit to @compnerd)
  • Silence error on Windows (#1668, patch credit to @compnerd)
  • Carve away more of System.swift on Windows (#1669, patch credit to @compnerd)
  • Implement sendmsg and recvmsg on Windows (#1674, patch credit to @compnerd)
  • Expose LINGER as a public type on Windows (#1675, patch credit to @compnerd)
  • Extract control message handling into a separate protocol (#1678, patch credit to @compnerd)
  • Implement address resolution on Windows (#1684, patch credit to @compnerd)
  • Fix incorrect new names for deprecated APIs (#1672)
  • Add multiple channel handlers in a single async call. (#1683)

Other Changes

  • NIOUDPEchoServer use AddressedEnvelope as InboundIn and OutboundOut (#1666, patch credit to @fabianfett)
  • NIO: reflow some comments (NFC) (#1677, patch credit to @compnerd)
  • Removes misleading docs for EventLoopFuture.whenComplete(_:) (#1687, patch credit to @jemmons)
  • Print the usage if no args are provided to the build_podspecs script (#1665)
  • Add watchOS deployment to PodSpec build script (#1679)
  • Remove symbolicate-linux-fatal from Docker (#1670)

SwiftNIO 2.23.0

01 Oct 16:01
c3e2359
Compare
Choose a tag to compare

SemVer Minor

  • Add ByteBuffer.storageCapacity, the capacity of the underlying storage (#1629, patch credit to @gcjenkinson)
  • Cleanup Unix socket pathname on server socket close or bind (#1637, patch credit to @AndriusA)
  • Add helper methods to EventLoopFuture for unwrapping optional values and executing blocking work on a DispatchQueue (#1656, #1662, patch credit to @gcjenkinson)

SemVer Patch

Other Changes

  • We use main as our development branch now. (#1651)
  • Documentation fixes (#1644, patch credit to @AndriusA)
  • Use Swift 5.3-RELEASE in CI (#1631)

SwiftNIO 2.22.1

11 Sep 10:33
96db883
Compare
Choose a tag to compare

Semver Patch

  • Improve performance of ByteBufferView. (#1625)
  • Removed incorrect assertion in MarkedCircularBuffer.popFirst. (#1627)

Other

SwiftNIO 2.22.0

27 Aug 09:46
5fc2434
Compare
Choose a tag to compare

SemVer Minor

  • Replace NIONetworkInterface with NIONetworkDevice. (#1622)

SemVer Patch

  • Fixed an issue where writability change notifications could be lost as a result of re-entrant writes (#1624)

Other Changes

  • Improve usage message in build_podspecs.sh (#1613, patch credit to @MrMage)

SwiftNIO 2.21.0

20 Aug 13:19
cf6f2b1
Compare
Choose a tag to compare

Semver Minor

  • Define EventLoopGroupProvider type for third-party libraries to use the common pattern of asking users for EventLoopGroups. (#1609) (patch credit to @pokryfka)
  • Deprecated ByteBuffer.clear(minimumCapacity:) which used a typealias for an Int32 as an argument to one that uses an Int instead. (#1610)
  • Enhanced NIOFoundationCompat to provide fast-path for writing DataProtocol and ContiguousBytes conforming types into ByteBuffers. (#1615)
  • Fixed an issue where server channels would be closed due to EINVAL firing unexpectedly on Apple platforms, and changed the error reporting in these cases. (#1598) (patch credit to @cyberdelia)

Semver Patch

  • Improved performance of task scheduling by reducing refcounting in our Heap implementation. (#1614)
  • Made the epoll implementation available on Android. (#1621) (patch credit to @compnerd)

Other

  • Fixed Linux test generation. (#1618)
  • Documentation cleanups (#1606)

SwiftNIO 2.20.2

31 Jul 09:02
acf5465
Compare
Choose a tag to compare

Semver Patch

  • Fixed error including non-modularised header when compiling SwiftNIO from SwiftPM-generated Xcode project. (#1605)

SwiftNIO 2.20.1

31 Jul 08:13
496d697
Compare
Choose a tag to compare

SemVer Patch

  • Don't use 0xdeadbeef for dead pointers as it breaks some iOS builds. (#1604)