Releases: apple/swift-nio
Releases · apple/swift-nio
2.91.0
What's Changed
SemVer Minor
- Partial OpenBSD support. by @3405691582 in #3394
SemVer Patch
- Drop and reacquire lock over continuation call by @glbrntt in #3452
- Handle cancellation between dropping and reacquiring lock by @glbrntt in #3453
- Dont hold lock over continuation in NIOThrowingAsyncSequenceProducer by @glbrntt in #3454
- Dont hold lock over continuation in TokenBucket by @glbrntt in #3455
Other Changes
- Document when
channel.remoteAddressfield can benilby @rafaelcepeda in #3456 - Add some benchmarks for UDP and UDP metadata by @Lukasa in #3457
New Contributors
- @3405691582 made their first contribution in #3394
Full Changelog: 2.90.1...2.91.0
2.90.1
What's Changed
SemVer Patch
Other Changes
- Run benchmarks in CI on macOS in addition to linux by @kukushechkin in #3444
- Do not run the matrix if there is no macOS versions picked for benchmarks by @kukushechkin in #3450
- Add some slack to the TCPEcho benchmark by @glbrntt in #3451
New Contributors
- @kukushechkin made their first contribution in #3444
Full Changelog: 2.90.0...2.90.1
2.90.0
What's Changed
SemVer Minor
- Make
ByteBuffer.writeBytes(_: RawSpan)broadly available by @MaxDesiatov in #3447
Full Changelog: 2.89.0...2.90.0
SwiftNIO 2.89.0
What's Changed
SemVer Minor
- Replace rethrows with typed throws in ByteBuffer by @Lukasa in #3372
- Add some spans to ByteBuffer by @Lukasa in #3371
- Enable per-message GSO on Linux by @Lukasa in #3436
- Enable per-message GRO on Linux by @Lukasa in #3439
- Add
NIOLoopBoundBox.withValueby @fabianfett in #3385
SemVer Patch
- For WASI builds only, use fatalError in all .wait() calls. Recommend using .get() instead. by @scottmarchant in #3421
- Fail on early errors in parallel copy by @glbrntt in #3435
- Enable NIOFoundationCompat to compile using Swift for WebAssembly. Fix NIOCore WASI compilation issue. by @scottmarchant in #3422
- NIOAsyncTestingChannel local/remote addrs on EmbeddedChannelCore by @rnro in #3442
Other Changes
- Swift SDK installation script improvements by @rnro in #3429
- Android use static swift stdlib by @rnro in #3430
- Generate matrix nested manifests by @rnro in #3431
- Add Xcode 26.1 to macOS CI by @rnro in #3438
- Switch test targets in macos_tests.yml by @rnro in #3437
- Document the GSO/GRO APIs by @Lukasa in #3440
- Add a script for updating Integration Tests thresholds from CI by @rnro in #3443
Full Changelog: 2.88.0...2.89.0
SwiftNIO 2.88.0
What's Changed
SemVer Minor
- Introduce
NIODecodedAsyncSequencefor easy decoding of async sequences by @MahdiBM in #3407 - [perf] Manually implement
firstIndex(where:)inByteBufferViewby @MahdiBM in #3412 - [perf] Manually implement
lastIndex(where:)inByteBufferViewby @MahdiBM in #3413 - Implement
AsyncSequence/splitLines()by @MahdiBM in #3411
SemVer Patch
- Avoid zombie pipe channels when receiving writeEOF by @Lukasa in #3408
- feat(NIOFileSystem): Add idempotent directory creation behavior (#3404) by @HamzaHassanain in #3410
Other Changes
- Don't generate matrix jobs for Swift versions which aren't supported by the package. by @rnro in #3415
- WASM SDK GitHub Actions workflows use NIO matrix by @rnro in #3417
- Android SDK Workflow by @rnro in #3418
- Env var no keys by @rnro in #3420
- Fix naming in Wasm Swift SDK workflow by @MaxDesiatov in #3423
- Update main.yml to refer to wasm_swift_sdk.yml by @rnro in #3425
- Tests: inline TestUtils.swift in NIOHTTP1Tests to avoid broken symlink on non-symlink filesystems by @zamderax in #3426
- Fix the Android CI workflow by adding a post-install step the configure the SDK by @marcprux in #3424
New Contributors
- @HamzaHassanain made their first contribution in #3410
- @zamderax made their first contribution in #3426
Full Changelog: 2.87.0...2.88.0
SwiftNIO 2.87.0
What's Changed
SemVer Minor
- Add
InlineArrayhelpers toByteBufferby @MahdiBM in #3252 - Drop Swift 5.10 by @fabianfett in #3393
Other Changes
- update: set explicit permissions for GitHub workflows - cxx-interop by @incertum in #3387
- update: set explicit permissions for GitHub workflows - benchmarks by @incertum in #3389
- update: set explicit permissions for GitHub workflows - release-builds by @incertum in #3390
- update: set explicit permissions for GitHub workflows - execute-matri… by @incertum in #3391
- update: set explicit permissions for GitHub workflows - unit-tests by @incertum in #3388
- Tweak test availability to avoid segfaults by @Lukasa in #3397
- Fix flakiness in testWithConfiguredStreamSocket by @Lukasa in #3399
- set explicit permissions for GitHub workflows - all remaining workflows by @incertum in #3396
- Enable Xcode beta by default in macos_tests.yml by @rnro in #3401
New Contributors
Full Changelog: 2.86.2...2.87.0
2.86.2
SwiftNIO 2.86.1
What's Changed
SemVer Patch
- [Windows] Ensure ssize_t and socklen_t are available by @fabianfett in #3337
- [Windows] Add msghdr extension for Windows by @fabianfett in #3336
- [Windows] Ensure NIOHTTP1 compiles by @fabianfett in #3338
- Drop all server response parts after an invalid header by @glbrntt in #3339
- [Windows] Make Thread.swift compile by @fabianfett in #3341
- [Windows] Make ControlMessage.swift compile by @fabianfett in #3342
- [Windows] Map naming conventions Windows -> Posix (ssize_t) by @fabianfett in #3343
- [Windows] Make SelectableEventLoop compile by @fabianfett in #3344
- [Windows] Fix deprecation warnings in NIOCore by @fabianfett in #3345
- [Windows] fatalError concurrency takeover by @fabianfett in #3347
- [Windows] Make
SocketChannel.swiftcompile by @fabianfett in #3348 - [Windows] Use WSASend as writev equivalent by @fabianfett in #3350
- [Windows] Fix getenv warnings in NIOPosix and NIOEmbedded by @fabianfett in #3351
- [Windows]
dupis deprecated on Windows, use_dupinstead by @fabianfett in #3352 - [Windows] Add shims to make string from
GetLastErrorusingFormatMessageby @fabianfett in #3353 - [Windows] Allow
_SelectorBackendProtocolto work with Windows Handles by @fabianfett in #3356 - [Windows] Use recv instead of read by @fabianfett in #3357
- [Windows] Disable Pipelines for now (fatalError) by @fabianfett in #3358
- SelectableEventLoop.debugDescription: fix debugDescription deadlock by @weissi in #3360
- [Windows] Return false from concurrency takeover by @fabianfett in #3362
- [Windows] Make SelectorGeneric compile on Windows by @fabianfett in #3359
- [Windows] Reimplement pread by @fabianfett in #3361
- [Windows] Sleep instead of WSAPoll, if no outstanding IO by @fabianfett in #3365
- [Windows] Reimplement pwrite by @fabianfett in #3364
- [Windows] Ensure WSAStartup is correctly called. by @fabianfett in #3366
- Remove NIOFileSystem from products by @glbrntt in #3370
- Miscellaneous rearrangements of NIOFileSystem by @aryan-25 in #3333, by @glbrntt in #3363, and by @glbrntt in #3367
Other Changes
- Add Android imports for some new tests in #3308 that require it by @finagolfin in #3334
- Make testMetricsDelegateTickInfo less flaky by @glbrntt in #3335
- [wasm][2/2] Include WebAssembly SDK checks in PR and main workflows by @kateinoigakukun in #3332
- Use path based deps in the alloc counter framework by @glbrntt in #3355
- Add Xcode 26.0, 16.4 CI, remove 16.2 by @rnro in #3375
- Update CI scripts for 6.2 by @fabianfett in #3374
Full Changelog: 2.86.0...2.87.0
SwiftNIO 2.86.0
What's Changed
SemVer Minor
- Fixes all warnings when
-require-explicit-sendableflag is enabled by @rafaelcepeda in #3320 - Add a new file path type, NIOFilePath, backed by SystemPackage's FilePath type by @aryan-25 in #3322
- Support options on AsyncTestingChannel and EmbeddedChannel by @klaaspieter in #3308
SemVer Patch
- [Windows] Windows has endianess too by @fabianfett in #3317
- [Windows] Ensure NIOEmbedded compiles by @fabianfett in #3319
- [Windows] IOVector is WSABUF on Windows by @fabianfett in #3324
- Don't double-initialize Pipe Bootstraps by @Lukasa in #3330
Other Changes
- CMake Updater: Output difference in expectations by @etcwilde in #3314
- Move conditional setup logic from bash to actions by @madrob in #3313
- Fix docc by @rafaelcepeda in #3315
- Fix typo in
HTTPServerClientTest.swiftcomments by @MaxDesiatov in #3323 - Enable release mode builds for pull requests by @josephnoir in #3321
- Do not run windows nightly CI by default by @josephnoir in #3325
- Enable release mode builds by @josephnoir in #3327
- Add bpftrace support to stackdiff by @Lukasa in #3329
- [wasm][1/2] Add reusable WebAssembly workflow by @kateinoigakukun in #3331
New Contributors
- @etcwilde made their first contribution in #3314
- @klaaspieter made their first contribution in #3308
Full Changelog: 2.85.0...2.86.0
SwiftNIO 2.85.0
What's Changed
SemVer Minor
- Structured Concurrency compliant MTELG create/shutdown by @weissi in #3296
- Make file handle sendable by @ali-ahsan-ali in #3300
SemVer Patch
- Functions that return values should return those values by @Lukasa in #3283
- Run
update_and_patch_llhttp.shscript to update to 9.3.0 by @xtremekforever in #3298 - ensure
<stddef.h>is not imported within extern "C" by @xtremekforever in #3299 - improve
inEventLoopchecks by @weissi in #3302 - Wrap closures stored in the
CallbackListby @glbrntt in #3303 - NIOThread refactor: pthread_t lifetimes by @weissi in #3297
- NIOThread: remove the detached threads functionality by @weissi in #3304
- Call channel initializer when using async methods on pipe bootstrap by @Lukasa in #3309
- Remove Foundation import by @glbrntt in #3310
Other Changes
- Widen the allocation limit on nightlies by @Lukasa in #3280
- Update
generate_matrix.shfor windows nightlies to 2022 images by @rnro in #3284 - Make use of symlink to latest Xcode beta by @rnro in #3285
- Add internals for stackdiff tool by @glbrntt in #3286
- Add diffing to the stackdiff tool by @glbrntt in #3287
- Add dtrace parsing by @glbrntt in #3288
- Add stackdiff dump by @glbrntt in #3289
- Add stackdiff merging by @glbrntt in #3290
- Avoid spurious xcodebuild warning by @madrob in #3291
- Add DocC docs for running alloc tests and debugging them by @glbrntt in #3293
- Add bpftrace allocations script by @Lukasa in #3113
- Add
inEventLoopbenchmark by @weissi in #3301 - Pick visionOS version for Xcode 16.2 by @glbrntt in #3307
- Fixes a small mistake in the NIOTCPEchoServer README file by @rafaelcepeda in #3311
New Contributors
- @madrob made their first contribution in #3291
- @xtremekforever made their first contribution in #3298
Full Changelog: 2.84.0...2.85.0