Skip to content

Releases: apple/swift-nio

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)

SwiftNIO 2.20.0

29 Jul 09:11
3cfb3f1
Compare
Choose a tag to compare

SemVer Minor

SemVer Patch

  • Improve performance when removing the last element of a CircularBuffer (#1584, patch credit to @luoxiu)
  • Improve pointer hygeine in SocketAddresses.swift (#1588)

Other Changes

  • Don't install Jazzy on Xenial (#1597)

SwiftNIO 2.19.0

01 Jul 08:16
8a865bd
Compare
Choose a tag to compare

SemVer Minor

  • ClientBootstrap: allow binding sockets (#1490)
  • Shorthand way of setting options in universal bootstrap (#1547)
  • Allow EmbeddedEventLoop to advanceTime(to:) a deadline (#1557)
  • Make TimeAmount Hashable (#1571)
  • Make array ByteBuffer initialiser public (#1573)

SemVer Patch

  • Add synchronous option to Trunk push (#1551, patch credit to @Jake-Prickett)
  • Fix RepeatedTask scheduling logic to run on the correct EL (#1567)
  • Fix a couple of small cosmetic issues (#1582, patch credit to @gwynne)
  • Update supported version in README (#1517)
  • Execute tasks scheduled at the same time in order on EmbeddedEventLoop (#1540)
  • Fix inappropriate language in NIO (#1554)
  • HTTP: assert that user doesn't set CL & TE:chunked (#1556)
  • Properly allow ThreadPool to be started multiple times. (#1572)
  • Various small issues (#1560)
  • Various small testing improvements (#1583, #1581, #1578, #1569, #1566, #1565, #1562, #1549)

SwiftNIO 2.18.0

08 Jun 16:52
120acb1
Compare
Choose a tag to compare

SemVer Minor

  • ClientBootstrap: allow binding sockets (#1490)
  • ByteBuffer: add convenience initialisers (#1533)
  • PipeBootstrap: fix file type change & accept 1 fd (#1543)
  • Channel option to enable ECN reporting (#1506)
  • Make SocketAddress Hashable. (#1532)

SemVer Patch

  • fix cores count in containers (#1518, patch credit to @gautierdelorme)
  • don't blow up if schedule happens during EL shutdown (#1530)
  • workaround SR-12939 (#1546)
  • remove fullFilePath() hack (#1544)
  • remove XCTest expectations with timeouts (#1539)
  • silence the #file used instead of #filepath warning (#1526)
  • crash tester test suite (#1536)
  • Fine grained UDP allocation tests (#1534)
  • Finer grained allocation tests (#1531)
  • thread takeover: test it unsets current EL (#1529)
  • HTTPEncoder: fix 0 length chunks (#1524)
  • Supply allocation limits for UDP allocation tests (#1523)
  • Detail the best way to request a re-review (#1522)
  • Extra information to contributors (#1491)
  • fix linker check test (#1519)
  • Add a note about failing child channel initializers (#1516)
  • survive having disableSIGPIPE fail (#1515)

SwiftNIO 2.17.0

12 May 13:54
c5fa0b4
Compare
Choose a tag to compare

Semver Minor

  • Added a new BSDSocket namespace, containing BSDSocket.OptionLevel and BSDSocket.Option for use when configuring socket options. (#1461, #1467, #1470, #1510) (Patch credit to @compnerd)
  • Added BSDSocket.ProtocolFamily and BSDSocket.AddressFamily to replace the libc spelling for socket address families. (#1468, #1469) (Patch credit to @compnerd)
  • Added ECN metadata to AddressedEnvelope. This functionality is currently unused, but will be enabled in a future release. (#1502)
  • Added ByteBuffer.writeRepeatingByte method to provide a fast memset-like operation. (#1500)
  • Added EventLoop.preconditionNotInEventLoop and EventLoop.assertNotInEventLoop to match existing EventLoop.preconditionInEventLoop and EventLoop.assertInEventLoop. (#1508) (Patch credit to @gwynne)
  • Added MultithreadedEventLoopGroup.withCurrentThreadAsEventLoop to support taking over an existing thread and turning it into a NIO event loop. This allows NIO programs to now be single-threaded. (#1499)
  • Added EventLoop.flatScheduleTask to provide a cleaner way to support a scheduled task that returns a future. (#1497) (Patch credit to @gwynne)

Semver Patch

  • Fixed an error in the UDP echo client example where the socket would not be closed after receiving the response. (#1501)
  • Cleaned up uniqueness checking in NIOHTTP1. (#1507) (Patch credit to @shekhar-rajak)
  • New UDP allocation tests. (#1496)
  • Improved allocation counter tests. (#1476)
  • Improved allocation diffing script. (#1513)
  • Removed warnings. (#1481, #1493)
  • Documentation improvements. (#1474, #1482, #1483, #1505)
  • Added Swift 5.3 CI. (#1498)

SwiftNIO 2.16.1

05 May 10:58
Compare
Choose a tag to compare

SwiftNIO 2.16.1

  • make compiles with Swift 5.3 compilers warning free (#1493 / #1498)