// swift-tools-version: 6.0 import PackageDescription let package = Package( name: "Shotdeck", platforms: [ .macOS(.v14), ], products: [ .library(name: "ShotdeckCore", targets: ["ShotdeckCore"]), .executable(name: "Shotdeck", targets: ["Shotdeck"]), ], dependencies: [], targets: [ .target( name: "ShotdeckCore", swiftSettings: [.swiftLanguageMode(.v6)] ), .executableTarget( name: "Shotdeck", dependencies: ["ShotdeckCore"], swiftSettings: [.swiftLanguageMode(.v6)] ), .testTarget( name: "ShotdeckCoreTests", dependencies: ["ShotdeckCore"], swiftSettings: [.swiftLanguageMode(.v6)] ), // Exercises the real Shotdeck-app-target wiring (AppDelegate.makeLaunchModel(), // AppModel.bootstrap()) via @testable import — logic ShotdeckCoreTests cannot // reach because it only depends on ShotdeckCore, not the Shotdeck executable // target itself. See ReturnWatcherLaunchWiringTests.swift. .testTarget( name: "ShotdeckTests", dependencies: ["Shotdeck", "ShotdeckCore"], swiftSettings: [.swiftLanguageMode(.v6)] ), ] )