From e86d0a6efb0cd5191ec68f22a043255ed9d5154c Mon Sep 17 00:00:00 2001 From: Guoye Zhang Date: Thu, 21 May 2026 23:11:39 -0700 Subject: [PATCH] Clean up Package.swift for FetchHTTPClient --- Package.swift | 26 ++++++------------- Sources/FetchHTTPClient/FetchHTTPClient.swift | 5 ++-- .../FetchHTTPClient/HTTPTypes+ISOLatin1.swift | 2 -- 3 files changed, 10 insertions(+), 23 deletions(-) diff --git a/Package.swift b/Package.swift index de42a4c..96b5498 100644 --- a/Package.swift +++ b/Package.swift @@ -7,6 +7,7 @@ let extraSettings: [SwiftSetting] = [ .enableExperimentalFeature("SuppressedAssociatedTypesWithDefaults"), .enableExperimentalFeature("LifetimeDependence"), .enableExperimentalFeature("Lifetimes"), + .enableExperimentalFeature("Extern"), .enableUpcomingFeature("LifetimeDependence"), .enableUpcomingFeature("NonisolatedNonsendingByDefault"), .enableUpcomingFeature("InferIsolatedConformances"), @@ -38,10 +39,7 @@ let package = Package( .default(enabledTraits: ["Configuration"]), ], dependencies: [ - .package( - url: "https://github.com/apple/swift-collections.git", - from: "1.5.0" - ), + .package(url: "https://github.com/apple/swift-collections.git", from: "1.5.0"), .package( url: "https://github.com/apple/swift-async-algorithms.git", from: "1.1.4", @@ -92,8 +90,6 @@ let package = Package( .product(name: "AsyncStreaming", package: "swift-async-algorithms"), "NetworkTypes", .product(name: "HTTPTypes", package: "swift-http-types"), - .product(name: "HTTPTypesFoundation", package: "swift-http-types"), - .product(name: "AsyncHTTPClient", package: "async-http-client"), .product(name: "NIOHTTP1", package: "swift-nio"), ], @@ -245,22 +241,22 @@ let package = Package( let enableWASM = Context.environment["HTTP_API_ENABLE_WASM"] != nil if enableWASM { - // BridgeJS generated code wants `Extern` and doesn't work well with - // `NonisolatedNonsendingByDefault` and `InternalImportsByDefault` + // BridgeJS generated code doesn't work well with `NonisolatedNonsendingByDefault` let wasmExtraSettings: [SwiftSetting] = [ .strictMemorySafety(), .enableExperimentalFeature("SuppressedAssociatedTypes"), .enableExperimentalFeature("LifetimeDependence"), .enableExperimentalFeature("Lifetimes"), + .enableExperimentalFeature("Extern"), .enableUpcomingFeature("LifetimeDependence"), .enableUpcomingFeature("InferIsolatedConformances"), .enableUpcomingFeature("ExistentialAny"), .enableUpcomingFeature("MemberImportVisibility"), - .enableExperimentalFeature("Extern"), + .enableUpcomingFeature("InternalImportsByDefault"), ] package.dependencies.append( - .package(url: "https://github.com/swiftwasm/JavaScriptKit", from: "0.50.2") + .package(url: "https://github.com/swiftwasm/JavaScriptKit", from: "0.53.0") ) package.products.append( .library(name: "FetchHTTPClient", targets: ["FetchHTTPClient"]) @@ -273,10 +269,7 @@ if enableWASM { .product(name: "AsyncStreaming", package: "swift-async-algorithms"), .product(name: "BasicContainers", package: "swift-collections"), .product(name: "HTTPTypes", package: "swift-http-types"), - .product( - name: "JavaScriptKit", - package: "JavaScriptKit", - ), + .product(name: "JavaScriptKit", package: "JavaScriptKit"), .product(name: "JavaScriptEventLoop", package: "JavaScriptKit"), ], swiftSettings: wasmExtraSettings, @@ -292,10 +285,7 @@ if enableWASM { "FetchHTTPClient", .product(name: "BasicContainers", package: "swift-collections"), .product(name: "ContainersPreview", package: "swift-collections"), - .product( - name: "JavaScriptKit", - package: "JavaScriptKit", - ), + .product(name: "JavaScriptKit", package: "JavaScriptKit"), .product(name: "JavaScriptEventLoop", package: "JavaScriptKit"), ], path: "Examples/WASMClient", diff --git a/Sources/FetchHTTPClient/FetchHTTPClient.swift b/Sources/FetchHTTPClient/FetchHTTPClient.swift index 7ac4c1b..3d3ceb4 100644 --- a/Sources/FetchHTTPClient/FetchHTTPClient.swift +++ b/Sources/FetchHTTPClient/FetchHTTPClient.swift @@ -11,10 +11,9 @@ // //===----------------------------------------------------------------------===// -import BasicContainers +public import BasicContainers import Foundation -import HTTPAPIs -import HTTPTypes +@_exported public import HTTPAPIs import JavaScriptEventLoop import JavaScriptKit diff --git a/Sources/FetchHTTPClient/HTTPTypes+ISOLatin1.swift b/Sources/FetchHTTPClient/HTTPTypes+ISOLatin1.swift index 5abf671..8ed6e58 100644 --- a/Sources/FetchHTTPClient/HTTPTypes+ISOLatin1.swift +++ b/Sources/FetchHTTPClient/HTTPTypes+ISOLatin1.swift @@ -11,8 +11,6 @@ // //===----------------------------------------------------------------------===// -import HTTPTypes - extension String { var isASCII: Bool { self.utf8.allSatisfy { $0 & 0x80 == 0 }