// swift-tools-version:5.9 import PackageDescription // The menu-bar face. A *sibling* of the cargo workspace and of macos-collector, // for the same reason: SwiftPM and cargo do not share a build system. // // This package holds no logic worth testing. Ageing, death and the cemetery all // live in the `pet-life` Rust crate, which this app runs on a timer and draws. // Keeping it that way is deliberate — the logic belongs where the test suite // and the privacy gate are. let package = Package( name: "menubar-pet", platforms: [.macOS(.v13)], products: [ .executable(name: "menubar-pet", targets: ["menubar-pet"]), ], targets: [ // The contract with pet-life, in a library so it can be tested. .target(name: "PetKit"), // Thin app: status item, timer, menu. .executableTarget(name: "menubar-pet", dependencies: ["PetKit"]), .testTarget(name: "PetKitTests", dependencies: ["PetKit"]), ] )