mirror of
https://github.com/pointfreeco/swift-composable-architecture.git
synced 2025-12-14 20:35:56 +01:00
* Add explicit @MainActor to NavigationLink initializer
* Access Notification from within an explicit Task
Fixes the "Conformance of 'Notification' to 'Sendable' is unavailable" error
* Revert "Add explicit @MainActor to NavigationLink initializer"
This reverts commit d8cb0706c1.
* Add explicit @MainActor to NavigationLink initializer
* Update Examples/CaseStudies/SwiftUICaseStudies/03-Effects-LongLiving.swift
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com>
* Update swift-navigation dependency version to 2.2.2
* Discard changes to Examples/CaseStudies/CaseStudies.xcodeproj/project.pbxproj
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update ComposableArchitecture.xcworkspace/xcshareddata/swiftpm/Package.resolved
* Update Package@swift-6
* Fix tests
---------
Co-authored-by: Brandon Williams <135203+mbrandonw@users.noreply.github.com>
Co-authored-by: Brandon Williams <mbrandonw@hey.com>
91 lines
3.6 KiB
Swift
91 lines
3.6 KiB
Swift
// swift-tools-version:5.9
|
|
|
|
import CompilerPluginSupport
|
|
import PackageDescription
|
|
|
|
let package = Package(
|
|
name: "swift-composable-architecture",
|
|
platforms: [
|
|
.iOS(.v13),
|
|
.macOS(.v10_15),
|
|
.tvOS(.v13),
|
|
.watchOS(.v6),
|
|
],
|
|
products: [
|
|
.library(
|
|
name: "ComposableArchitecture",
|
|
targets: ["ComposableArchitecture"]
|
|
)
|
|
],
|
|
dependencies: [
|
|
.package(url: "https://github.com/apple/swift-collections", from: "1.1.0"),
|
|
.package(url: "https://github.com/pointfreeco/combine-schedulers", from: "1.0.2"),
|
|
.package(url: "https://github.com/pointfreeco/swift-case-paths", from: "1.5.4"),
|
|
.package(url: "https://github.com/pointfreeco/swift-concurrency-extras", from: "1.2.0"),
|
|
.package(url: "https://github.com/pointfreeco/swift-custom-dump", from: "1.3.2"),
|
|
.package(url: "https://github.com/pointfreeco/swift-dependencies", from: "1.4.0"),
|
|
.package(url: "https://github.com/pointfreeco/swift-identified-collections", from: "1.1.0"),
|
|
.package(url: "https://github.com/pointfreeco/swift-macro-testing", from: "0.2.0"),
|
|
.package(url: "https://github.com/pointfreeco/swift-navigation", from: "2.2.2"),
|
|
.package(url: "https://github.com/pointfreeco/swift-perception", from: "1.3.4"),
|
|
.package(url: "https://github.com/pointfreeco/xctest-dynamic-overlay", from: "1.3.0"),
|
|
.package(url: "https://github.com/swiftlang/swift-docc-plugin", from: "1.0.0"),
|
|
.package(url: "https://github.com/swiftlang/swift-syntax", "509.0.0"..<"601.0.0-prerelease"),
|
|
],
|
|
targets: [
|
|
.target(
|
|
name: "ComposableArchitecture",
|
|
dependencies: [
|
|
"ComposableArchitectureMacros",
|
|
.product(name: "CasePaths", package: "swift-case-paths"),
|
|
.product(name: "CombineSchedulers", package: "combine-schedulers"),
|
|
.product(name: "ConcurrencyExtras", package: "swift-concurrency-extras"),
|
|
.product(name: "CustomDump", package: "swift-custom-dump"),
|
|
.product(name: "Dependencies", package: "swift-dependencies"),
|
|
.product(name: "DependenciesMacros", package: "swift-dependencies"),
|
|
.product(name: "IdentifiedCollections", package: "swift-identified-collections"),
|
|
.product(name: "IssueReporting", package: "xctest-dynamic-overlay"),
|
|
.product(name: "OrderedCollections", package: "swift-collections"),
|
|
.product(name: "Perception", package: "swift-perception"),
|
|
.product(name: "SwiftUINavigation", package: "swift-navigation"),
|
|
.product(name: "UIKitNavigation", package: "swift-navigation"),
|
|
],
|
|
resources: [
|
|
.process("Resources/PrivacyInfo.xcprivacy")
|
|
]
|
|
),
|
|
.testTarget(
|
|
name: "ComposableArchitectureTests",
|
|
dependencies: [
|
|
"ComposableArchitecture",
|
|
.product(name: "IssueReportingTestSupport", package: "xctest-dynamic-overlay"),
|
|
]
|
|
),
|
|
.macro(
|
|
name: "ComposableArchitectureMacros",
|
|
dependencies: [
|
|
.product(name: "SwiftSyntaxMacros", package: "swift-syntax"),
|
|
.product(name: "SwiftCompilerPlugin", package: "swift-syntax"),
|
|
]
|
|
),
|
|
.testTarget(
|
|
name: "ComposableArchitectureMacrosTests",
|
|
dependencies: [
|
|
"ComposableArchitectureMacros",
|
|
.product(name: "MacroTesting", package: "swift-macro-testing"),
|
|
]
|
|
),
|
|
]
|
|
)
|
|
|
|
#if compiler(>=6)
|
|
for target in package.targets where target.type != .system && target.type != .test {
|
|
target.swiftSettings = target.swiftSettings ?? []
|
|
target.swiftSettings?.append(contentsOf: [
|
|
.enableExperimentalFeature("StrictConcurrency"),
|
|
.enableUpcomingFeature("ExistentialAny"),
|
|
.enableUpcomingFeature("InferSendableFromCaptures"),
|
|
])
|
|
}
|
|
#endif
|