Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: apple/swift-nio
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2.86.2
Choose a base ref
...
head repository: apple/swift-nio
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2.87.0
Choose a head ref
  • 11 commits
  • 53 files changed
  • 6 contributors

Commits on Sep 24, 2025

  1. Add InlineArray helpers to ByteBuffer (#3252)

    ### Motivation:
    
    Useful for parsing packets, for example `ipv4: InlineArray<4, UInt8>`
    and `ipv6: InlineArray<16, UInt8>`.
    
    ### Modifications:
    
    For now I've only added a `readInlineArray` function. I know some other
    functions are missing, such as `writeInlineArray`.
    I wanted to first open up a discussion and see if these changes are
    acceptable. I can add those functions too if required, in this PR or
    other PRs.
    
    ### Result:
    
    Users can read `ByteBuffer` into stack-allocated memory, which can be
    more performant than the other alternatives like `Array`, or more
    convenient than reading as a tuple like `(UInt8, UInt8, UInt8, UInt8)`.
    
    ### Caveats:
    
    Swift 6.2 is required so I've used `#if compiler(>=6.2)`.
    Furthermore, `InlineArray` is marked as available on `macOS(9999)` since
    the Swift team have yet to update that mark, although `InlineArray` is
    planned for Swift 6.2 per the
    [proposal](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0453-vector.md).
    
    Edit: to be clear things work fine on Linux and that's where I've been
    using this same `readInlineArray` function that I've proposed.
    
    ---------
    
    Co-authored-by: Cory Benfield <lukasa@apple.com>
    MahdiBM and Lukasa authored Sep 24, 2025
    Configuration menu
    Copy the full SHA
    2e22c89 View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2025

  1. update: set explicit permissions for GitHub workflows - cxx-interop (#…

    …3387)
    
    See #3386
    CC @FranzBusch @ktoso @Lukasa
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    incertum authored Oct 2, 2025
    Configuration menu
    Copy the full SHA
    662d3dd View commit details
    Browse the repository at this point in the history
  2. update: set explicit permissions for GitHub workflows - benchmarks (#…

    …3389)
    
    See #3386
    CC @FranzBusch @ktoso @Lukasa
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    Co-authored-by: Rick Newton-Rogers <rnro@apple.com>
    incertum and rnro authored Oct 2, 2025
    Configuration menu
    Copy the full SHA
    f5a2e75 View commit details
    Browse the repository at this point in the history
  3. update: set explicit permissions for GitHub workflows - release-builds (

    #3390)
    
    See #3386
    CC @FranzBusch @ktoso @Lukasa
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    incertum authored Oct 2, 2025
    Configuration menu
    Copy the full SHA
    8c359a1 View commit details
    Browse the repository at this point in the history
  4. update: set explicit permissions for GitHub workflows - execute-matri… (

    #3391)
    
    See #3386
    CC @FranzBusch @ktoso @Lukasa
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    incertum authored Oct 2, 2025
    Configuration menu
    Copy the full SHA
    0c2869d View commit details
    Browse the repository at this point in the history
  5. update: set explicit permissions for GitHub workflows - unit-tests (#…

    …3388)
    
    See #3386
    CC @FranzBusch @ktoso @Lukasa
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    Co-authored-by: Rick Newton-Rogers <rnro@apple.com>
    incertum and rnro authored Oct 2, 2025
    Configuration menu
    Copy the full SHA
    2b3140a View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2025

  1. Tweak test availability to avoid segfaults (#3397)

    Motivation
    
    Availability guards on test functions don't work the way we'd want them
    to: in particular, xctest still ends up calling these functions even on
    platforms that are less available than the functions in question. We
    need to move these to checks in in the function themselves.
    
    Modifications
    
    Replace @available with guard available
    
    Result
    
    No more segfaults in tests.
    Lukasa authored Oct 4, 2025
    Configuration menu
    Copy the full SHA
    2143eb9 View commit details
    Browse the repository at this point in the history

Commits on Oct 6, 2025

  1. Drop Swift 5.10 (#3393)

    This PR drops Swift 5.10 and enables Swift 6 language mode.
    
    ---------
    
    Co-authored-by: Cory Benfield <lukasa@apple.com>
    fabianfett and Lukasa authored Oct 6, 2025
    Configuration menu
    Copy the full SHA
    a3ed8e1 View commit details
    Browse the repository at this point in the history
  2. Fix flakiness in testWithConfiguredStreamSocket (#3399)

    Motivation:
    
    This test occasionally fails in our ongoing continuous CI solution.
    Flaky tests are bad, and we should aim not to have them, so let's fix
    it.
    
    My diagnosis of the most likely race here (which leads to
    `alreadyClosed`) being thrown _somewhere_ from this code is that the
    client channel got closed unexpectedly. This would happen if an unusual
    series of events occurs:
    
    1. The client connection succeeds and the channel starts up
    2. The server close then goes through and the server channel is closed
    _before_ it actually accepts the connection.
    3. This causes the client connection to be reset.
    4. The client channel observes this and handles that close.
    5. We then close the client from the outside.
    
    Modifications:
    
    Add a ConditionLock we can use to wait for a connection to be
    established.
    Make the use of this ConditionLock resilient to weird test behaviour by
    always using timeouts for blocking operations.
    
    Result:
    
    Less flaky tests.
    Lukasa authored Oct 6, 2025
    Configuration menu
    Copy the full SHA
    97c3f28 View commit details
    Browse the repository at this point in the history

Commits on Oct 7, 2025

  1. set explicit permissions for GitHub workflows - all remaining workflo…

    …ws (#3396)
    
    See #3386
    
    Note: I consistently placed the permissions key at the top (slightly
    corrected recent PRs).
    
    CC @rnro
    
    Signed-off-by: Melissa Kilby <mkilby@apple.com>
    incertum authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    dee7095 View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2025

  1. Enable Xcode beta by default in macos_tests.yml (#3401)

    26.1 Beta 2 has been released so we have an Xcode beta to be testing, we
    should enable it by default again. It was previously disabled under the
    impression that there was no current beta.
    rnro authored Oct 9, 2025
    Configuration menu
    Copy the full SHA
    4e8f4b1 View commit details
    Browse the repository at this point in the history
Loading