Skip to content

Releases: apple/swift-nio

SwiftNIO 1.13.2

13 Mar 11:52
Compare
Choose a tag to compare

Semver Patch

  • Selector: make sure timerfd is level triggered (#881)
  • Make NIOAny log the contents of its storage when encountering fatal unwrapping errors. (#879)

SwiftNIO 1.13.1

28 Feb 12:20
87dbd02
Compare
Choose a tag to compare

Semver Patch

  • fix new Swift 5 warnings for NIO 1 (#850)

SwiftNIO 1.13.0

01 Feb 18:07
Compare
Choose a tag to compare

Semver Minor

Allow to set RemoveAfterUpgradeStrategy on HTTPResponseDecoder (#744)

SwiftNIO 1.12.1

22 Jan 18:34
Compare
Choose a tag to compare

Semver Patch

  • speed up getBytes #762
  • remove bogus 'is active' assertion in channelRead0 #740
  • Fix encoding header #731
  • Fix: BlockingIOThreadPool not releasing the latest WorkItem #716

SwiftNIO 1.12.0

06 Dec 12:09
Compare
Choose a tag to compare

Semver Minor

  • Provide ChannelPipeline.remove methods with promises. #651
  • More swift-nio-http2 compatibility. #654
  • Added public init for HTTPServerProtocolErrorHandler #660
  • optional type parameter for newPromise(of: T.Type) #671/#672

Semver Patch

  • remove ugly and unnecessary ignore result (_ = ...) #652
  • connect timeout tests: work around ECONNREFUSED #653
  • ByteBuffer test: remove bogus test assertion #655
  • ignore pthread_setname_np result #656
  • don't capture in the callout closures in BaseSocketChannel #658
  • fix some test warnings #659
  • Assign channel variable in docs #662
  • update contributors file #668

SwiftNIO 1.11.0

06 Nov 17:18
Compare
Choose a tag to compare

Semver Minor

  • introduce EventLoop.assertInEventLoop and preconditionInEventLoop (#644)
  • dynamically verify (in debug mode) that IOThreadPools get shut down by the user (#635)

Semver Patch

  • fix Swift 5 warnings (mostly redundant modifiers) (#642)
  • ByteBuffer: small & medium sized string copies over 10% faster (#640)
  • String decoding: go through URBP directly instead of Slice (#639)
  • CONNECT method should not have request body (#637)

SwiftNIO 1.10.0

29 Oct 15:09
176dd6e
Compare
Choose a tag to compare

Semver Minor

  • Added support for UDP multicast. (#618)
  • Improved detection of users calling EventLoopFuture.wait() on some EventLoo p types. (#553)
  • Added diagnostics to EventLoopFuture.wait() to ensure users can locate the c
    all on error. (#578)
  • Added SocketOptionProvider protocol to provide nicer API for setting socket options. (#589)
  • Conformed Slice, UnsafeBufferPointer, and UnsafeMutableBufferPointer to ContiguousCollection to improve write speeds. (#586)
  • Add @discardableResult to ByteBuffer.readWith* methods. (#549)
  • Improved HTTPHeaders.isKeepAlive to check all values in Connection header. (#414)
  • Made HTTPHeaderIndex & HTTPHeader structures public, as well as HTTPHeade rs.createHeaderBlock(buffer:headers:) and HTTPHeaders.withUnsafeBufferAndIndices. (#525)
  • Improved style around memory bindings. (#541)

Semver Patch

  • Fixed potential deadlock in BlockingIOThreadPool. (#634)
  • Fixed compilation errors on Android. Android is not covered by CI at this time, so this may regress. (#609)
  • Fixed IdleStateHandler to propagate channelActive. (#615)
  • Emit IP address in SocketAddress.description. (#601)
  • Improved error reporting so that hitting blacklisted errno values will print
    strerror rather than a string pointer. (#610)
  • Updated HTTP parser. (#627)
  • Correctly use umbrella headers for our C modules, reducing compiler errors. (#636)
  • Clean up some warnings and future compiler errors. (#605, #623)
  • Documentation improvements. (#613, #619)
  • Testing improvements. (#611, #616, #621, #625)

SwiftNIO 1.9.5

12 Sep 11:30
Compare
Choose a tag to compare

This release contains no code changes, and is exists purely for administrative purposes.

SwiftNIO 1.9.4

29 Aug 20:37
Compare
Choose a tag to compare

SemVer patch

  • fixed Swift 4.0 compilation, apologies

SwiftNIO 1.9.3

29 Aug 16:37
Compare
Choose a tag to compare

Semver Patch

  • allow two distinct ChannelOptions of one type (#597)
  • don't crash when Channel goes inactive in read triggered by write error (#594)
  • pipeline handler: fix error state tracking (#595)
  • warn that ChannelHandlers should be instantiated within initializer closures (#590)
  • Fix readme erroneous statement regarding channel pipeline (#592)
  • fix limits on 32-bit systems to values that work (#580)
  • better documentation for MultiThreadedEventLoopGroup (#582)
  • Enhanced the output of the NIOEchoClient Example (#585)
  • Typo in EchoServer example (#583)
  • unify dead pointer dummy values (#579)
  • Make tests work on 32-bit (#486)
  • output a hint if we get a reset connection w/o error set (#573)
  • run a netstat if there's a socket leak in integration tests (#576)
  • make ByteBuffer._Storage.fullSlice a computed property (#560)
  • add forgotten selfs (#574)
  • Add Cocoapods podspec generation. (#568)
  • fix Posix.fcntl return type (#575)
  • fix no leak tests for RepeatedTask (#569)
  • put the compare perf script into the repo (#564)
  • script to list the topsorted dependencies (#562)
  • advertise NIOTS a bit more (#557)
  • Make withUnsafeMutable{Readable,Writable}Bytes inlinable. (#558)
  • Added links to documentation in README.md (#532)
  • fix races in RepeatedTasks and its tests (#555)
  • tests hygiene: a lot fewer naked trys (#552)
  • Make bad websocket parser states unrepresentable. (#547)
  • switch Socket API to Unsafe(Mutable)RawBufferPointers (#540)
  • more debugging for flaky tests (#545)
  • Simplify C string to String conversion in IOError.reasonForError (#544)