Skip to content

Raise availability to anyAppleOS 27.0 - #143

Merged
FranzBusch merged 1 commit into
swift-server:mainfrom
inductor:availability-27
Oct 2, 2026
Merged

FranzBusch merged 1 commit into
swift-server:mainfrom
inductor:availability-27

Conversation

@inductor

@inductor inductor commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Motivation

swift-http-api-proposal is moving to swift-collections 1.7.1 and swift-async-algorithms 1.1.7. In those releases, the container protocols and AsyncStreaming (AsyncReader and friends) require 27.0 on Apple platforms, so HTTPAPIs is raising all of its availability annotations to anyAppleOS 27.0.

swift-http-api-proposal also compiles the NIOHTTPServer sources from this repository through a submodule, so declarations here that are still marked anyAppleOS 26.0 fail to build against the updated HTTPAPIs:

error: 'HTTPServerCapability' is only available in macOS 27.0 or newer

Modifications

  • Raised every @available(anyAppleOS 26.0, *) to @available(anyAppleOS 27.0, *).
  • Added @available(anyAppleOS 27.0, *) to the ByteBuffer extension in NIOHTTPServerResponseSender.swift, which uses RangeReplaceableContainer and had no availability annotation.
  • Raised the three @available(anyAppleOS 26.2, *) annotations in HTTP3DatagramTests.swift to 27.0, since they call test helpers that now require 27.0.

Result

This package's availability matches HTTPAPIs, and swift-http-api-proposal can update its submodule to build against swift-collections 1.7.1.

Builds and tests pass on macOS with all traits enabled.

@gjcairo gjcairo added the ⚠️ semver/major Breaks existing public API. label Oct 1, 2026

@aryan-25 aryan-25 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The CI failures should be resolved by #144.

@FranzBusch

Copy link
Copy Markdown
Contributor

Test failures seems unrelated

@FranzBusch
FranzBusch merged commit ae765a3 into swift-server:main Oct 2, 2026
20 of 27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

⚠️ semver/major Breaks existing public API.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants