Files
gentpan 1022e4e541 修复账号登录后应用直接退出
系统的登录窗口在后台队列上回调结果,而回调闭包写在主线程隔离的方法里,Swift 6 在闭包入口检查执行器,
不在主线程就中止进程:选完 GitHub / Google / Apple 账号应用立即闪退,令牌还没换到,重开也没有登录状态。
回调改为在非隔离的上下文里创建,收到结果后再回到主线程处理;补了在后台队列调用回调的回归测试。
2026-09-21 03:38:08 +05:00

38 lines
2.0 KiB
Swift

// swift-tools-version: 6.0
import PackageDescription
let package = Package(
name: "OpenStatsKit",
defaultLocalization: "zh-Hans",
platforms: [.macOS(.v14)],
products: [
.library(name: "Localization", targets: ["Localization"]),
.library(name: "SMC", targets: ["SMC"]),
.library(name: "Metrics", targets: ["Metrics"]),
.library(name: "HelperShared", targets: ["HelperShared"]),
.library(name: "Cleaner", targets: ["Cleaner"]),
.library(name: "Updates", targets: ["Updates"]),
.library(name: "AccountSync", targets: ["AccountSync"]),
.library(name: "OpenStatsUI", targets: ["OpenStatsUI"]),
],
targets: [
.target(name: "Localization"),
.target(name: "SMC", dependencies: ["Localization"]),
.target(name: "Metrics", dependencies: ["SMC", "Localization"], linkerSettings: [.linkedLibrary("IOReport")]),
.target(name: "HelperShared", dependencies: ["Localization"]),
.target(name: "Cleaner", dependencies: ["Localization"]),
.target(name: "Updates", dependencies: ["Localization"]),
.target(name: "AccountSync", dependencies: ["Localization"]),
.target(name: "OpenStatsUI", dependencies: ["Localization", "Metrics", "SMC", "HelperShared", "Cleaner", "Updates", "AccountSync"],
resources: [.copy("Resources/Flags"), .copy("Resources/Logos")]),
.testTarget(name: "MetricsTests", dependencies: ["Metrics", "SMC"]),
.testTarget(name: "CleanerTests", dependencies: ["Cleaner"]),
.testTarget(name: "HelperSharedTests", dependencies: ["HelperShared"]),
.testTarget(name: "UpdatesTests", dependencies: ["Updates"]),
.testTarget(name: "AccountSyncTests", dependencies: ["AccountSync"]),
.testTarget(name: "OpenStatsUITests", dependencies: ["OpenStatsUI", "Metrics", "AccountSync"]),
.testTarget(name: "LocalizationTests", dependencies: ["Localization"]),
],
swiftLanguageModes: [.v6]
)