Skip to content

Improve SwiftConfiguration integration#68

Open
aryan-25 wants to merge 1 commit intoswift-server:mainfrom
aryan-25:improve-swift-configuration
Open

Improve SwiftConfiguration integration#68
aryan-25 wants to merge 1 commit intoswift-server:mainfrom
aryan-25:improve-swift-configuration

Conversation

@aryan-25
Copy link
Collaborator

Motivation:

PR #67 refactored NIOHTTPServerConfiguration. As part of this PR, we introduced support for TLS credentials and mTLS trust roots to be provided as PEM files too.

We should update the swift-configuration integration to match these changes. We should also use this opportunity to better document the possible keys and supported values in a DocC article, as the current documentation is spread inline across multiple types.

Modifications:

  • Replaced the "security" key (5 values) with a "mode" key (3 values: "plaintext", "tls", "mTLS").
  • Added a credentialSource key ("inline", "file"), and a "trustRootsSource" key ("inline", "file", "systemDefaults", "customCertificateVerificationCallback").
  • Renamed/rescoped several configuration keys for clarity ("supportedHTTPVersions""http.versions", "low"/"high""lowWatermark"/"highWatermark", scoped "gracefulShutdown").
  • Added a DocC article with a complete configuration key reference table, example JSON, and narrative documentation.

Result:

Improved swift-configuration integration.

@aryan-25 aryan-25 added the ⚠️ semver/major Breaks existing public API. label Mar 20, 2026
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.

1 participant