Skip to content

Commit 6db3d91

Browse files
authored
Merge pull request from GHSA-r6r4-5pr8-gjcp
* Replace the ancient CVaporURLParser code with use of Foundation's URLComponents * Fixes for weird macOS behaviors * Tests fixup * Add test for extreme-length untrusted input which triggered failures in the old implementation. * Fix Sendable warnings across multiple Swift versions * Indirect through URL to get to URLComponents so parsing is consistent on Linux. * A couple more test fixes.
1 parent 67fe736 commit 6db3d91

File tree

13 files changed

+603
-1049
lines changed

13 files changed

+603
-1049
lines changed

Package.swift

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,15 +66,13 @@ let package = Package(
6666
targets: [
6767
// C helpers
6868
.target(name: "CVaporBcrypt"),
69-
.target(name: "CVaporURLParser"),
7069

7170
// Vapor
7271
.target(name: "Vapor", dependencies: [
7372
.product(name: "AsyncHTTPClient", package: "async-http-client"),
7473
.product(name: "AsyncKit", package: "async-kit"),
7574
.product(name: "Backtrace", package: "swift-backtrace"),
7675
.target(name: "CVaporBcrypt"),
77-
.target(name: "CVaporURLParser"),
7876
.product(name: "ConsoleKit", package: "console-kit"),
7977
.product(name: "Logging", package: "swift-log"),
8078
.product(name: "Metrics", package: "swift-metrics"),

[email protected]

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,16 +63,14 @@ let package = Package(
6363
targets: [
6464
// C helpers
6565
.target(name: "CVaporBcrypt"),
66-
.target(name: "CVaporURLParser"),
67-
66+
6867
// Vapor
6968
.target(
7069
name: "Vapor",
7170
dependencies: [
7271
.product(name: "AsyncHTTPClient", package: "async-http-client"),
7372
.product(name: "AsyncKit", package: "async-kit"),
7473
.target(name: "CVaporBcrypt"),
75-
.target(name: "CVaporURLParser"),
7674
.product(name: "ConsoleKit", package: "console-kit"),
7775
.product(name: "Logging", package: "swift-log"),
7876
.product(name: "Metrics", package: "swift-metrics"),
@@ -130,15 +128,21 @@ let package = Package(
130128
.copy("Utilities/expired.crt"),
131129
.copy("Utilities/expired.key"),
132130
],
133-
swiftSettings: [.enableExperimentalFeature("StrictConcurrency=complete")]
131+
swiftSettings: [
132+
.enableUpcomingFeature("BareSlashRegexLiterals"),
133+
.enableExperimentalFeature("StrictConcurrency=complete"),
134+
]
134135
),
135136
.testTarget(
136137
name: "AsyncTests",
137138
dependencies: [
138139
.product(name: "NIOTestUtils", package: "swift-nio"),
139140
.target(name: "XCTVapor"),
140141
],
141-
swiftSettings: [.enableExperimentalFeature("StrictConcurrency=complete")]
142+
swiftSettings: [
143+
.enableUpcomingFeature("BareSlashRegexLiterals"),
144+
.enableExperimentalFeature("StrictConcurrency=complete"),
145+
]
142146
),
143147
]
144148
)

Sources/CVaporURLParser/include/urlparser.h

Lines changed: 0 additions & 59 deletions
This file was deleted.

0 commit comments

Comments
 (0)