mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
Enables SWIFT_APPROACHABLE_CONCURRENCY build setting which activates a few key Swift 6.2 concurrency features, including: 1. NonisolatedNonsendingByDefault - Makes nonisolated async functions run on the caller's executor instead of the global executor, providing more predictable performance and behaviour 2. InferIsolatedConformances - Protocol conformances automatically inherit global actor isolation, reducing annotation burden Read more: https://www.donnywals.com/what-is-approachable-concurrency-in-xcode-26/ Also bumps swift-tools-version from 6.0 to 6.2 in Package.swift to enable newer Package Manager manifest APIs. As a result of better type inference, removes 1 redundant @Sendable annotation in Store.swift: - vpnStatusChangeHandler: @MainActor closures are implicitly Sendable
30 lines
789 B
Swift
30 lines
789 B
Swift
// swift-tools-version: 6.2
|
|
// The swift-tools-version declares the minimum version of Swift required to build this package.
|
|
|
|
import PackageDescription
|
|
|
|
let package = Package(
|
|
name: "FirezoneKit",
|
|
platforms: [.iOS(.v15), .macOS(.v12)],
|
|
products: [
|
|
// Products define the executables and libraries a package produces, and make them visible to
|
|
// other packages.
|
|
.library(name: "FirezoneKit", targets: ["FirezoneKit"])
|
|
],
|
|
dependencies: [
|
|
.package(url: "https://github.com/getsentry/sentry-cocoa", exact: "8.56.2")
|
|
],
|
|
targets: [
|
|
.target(
|
|
name: "FirezoneKit",
|
|
dependencies: [
|
|
.product(name: "Sentry", package: "sentry-cocoa")
|
|
]
|
|
),
|
|
.testTarget(
|
|
name: "FirezoneKitTests",
|
|
dependencies: ["FirezoneKit"]
|
|
),
|
|
]
|
|
)
|