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-openapi-runtime
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1.10.1
Choose a base ref
...
head repository: apple/swift-openapi-runtime
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1.11.0
Choose a head ref
  • 10 commits
  • 37 files changed
  • 3 contributors

Commits on Feb 25, 2026

  1. Use lock from NIO instead of NSLock (#172)

    Part of apple/swift-openapi-generator#868
    
    Remove usages of `NSLock` and vendor the lock from swift-nio instead.
    madsodgaard authored Feb 25, 2026
    Configuration menu
    Copy the full SHA
    93e074e View commit details
    Browse the repository at this point in the history
  2. Remove localizedDescription (#173)

    Part of apple/swift-openapi-generator#868
    
    Refactors `error.localizedDescription` to `"\(error)"` to prevent
    linking Foundation. This will change the error strings as can be seen in
    the tests. Alternatively, we would split the implementation by a trait
    `FullFoundationSupport`. Where that would use `localizedDescription`
    madsodgaard authored Feb 25, 2026
    Configuration menu
    Copy the full SHA
    7d9cb54 View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2026

  1. Remove localized compares (#174)

    Part of apple/swift-openapi-generator#868
    
    Removes usages of localized compares from Foundation and just uses Swift
    string comparisons.
    
    The logic is covered by the following tests:
    ```
    Test_URICodingRoundtrip.testRoundtrip
    Test_URISerializer.testSerializing
    Test_ClientConverterExtensions.test_setOptionalRequestBodyAsURLEncodedForm_codable
    Test_ClientConverterExtensions.test_setRequiredRequestBodyAsURLEncodedForm_codable
    ```
    madsodgaard authored Feb 26, 2026
    Configuration menu
    Copy the full SHA
    d34f76e View commit details
    Browse the repository at this point in the history
  2. Remove trimmingCharacters(in:) (#175)

    Part of apple/swift-openapi-generator#868
    
    Removes usages of `trimmingCharacters(in:)` and replaced by simple Swift
    implementation. I added some tests that verify the behaviour against
    Foundation.
    
    ---------
    
    Co-authored-by: Honza Dvorsky <honza@apple.com>
    madsodgaard and czechboy0 authored Feb 26, 2026
    Configuration menu
    Copy the full SHA
    1ddb3ec View commit details
    Browse the repository at this point in the history

Commits on Mar 2, 2026

  1. Replace Foundation replacingOccurrences(of:with:) and percent encod…

    …ing (#176)
    
    Part of apple/swift-openapi-generator#868
    
    Introduces a Swift impl of `replacingOccurrences(of:with:)`,
    `addingPercentEncoding` and `removingPercentEncoding`.
    
    The percent encoding were inspired by impl in `swift-foundation`:
    https://github.com/swiftlang/swift-foundation/blob/aee1d337039b5b2a1f0c3b7f83baa950dac3a84e/Sources/FoundationEssentials/URL/URLParser.swift
    
    I also added tests to verify behaviour with Foundation.
    madsodgaard authored Mar 2, 2026
    Configuration menu
    Copy the full SHA
    949dfed View commit details
    Browse the repository at this point in the history
  2. Replace String(format:) for Double to String conversions (#178)

    Part of apple/swift-openapi-generator#868
    
    Introduces a Swift-only impl of `String(format:)` that is only used in
    `QualityValue.rawValue`.
    
    ---------
    
    Co-authored-by: Honza Dvorsky <honza@apple.com>
    madsodgaard and czechboy0 authored Mar 2, 2026
    Configuration menu
    Copy the full SHA
    6d55957 View commit details
    Browse the repository at this point in the history
  3. Introduce FullFoundation trait (#177)

    Part of apple/swift-openapi-generator#868
    
    This PR introduces a new default trait `FullFoundationSupport`. If users
    remove this trait it does two things:
    1. On non-darwin platforms it replaces the use of `ISO8601DateFormatter`
    with the new Foundation APIs.
    2. Disables support for `NSNull` and `NSNumber` in `OpenAPIValue`.
    
    If non-darwin platforms disable this trait, its technically source
    breaking if they rely on the initializer of `ISO8601DateTranscoder`,
    because it relies on the `ISO8601DateFormatter.Options` object. I am not
    sure how we would get around that. But again, it requires users to
    explicitly remove the trait, and thereby want to opt in to only relying
    on FoundationEssentials. So imo its acceptable.
    
    I am not sure about CI. We really should be testing with and without the
    trait, but I could not find other examples that use the swift-nio jobs
    to do this. But if you could point me in the right direction, I can add
    that as well.
    
    From what I understand from @FranzBusch, we also only have 1 chance of
    adding default traits. Are there any other traits we should think about
    introducing?
    
    ---------
    
    Co-authored-by: Honza Dvorsky <honza@apple.com>
    madsodgaard and czechboy0 authored Mar 2, 2026
    Configuration menu
    Copy the full SHA
    80f395b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8fb0779 View commit details
    Browse the repository at this point in the history

Commits on Mar 3, 2026

  1. Configuration menu
    Copy the full SHA
    b8451c6 View commit details
    Browse the repository at this point in the history
  2. Make sure we can import CoreFoundation (#181)

    Fixes Windows build by making sure we can import CoreFoundation
    madsodgaard authored Mar 3, 2026
    Configuration menu
    Copy the full SHA
    f039fa6 View commit details
    Browse the repository at this point in the history
Loading