diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 82956c0..c03e898 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -4,7 +4,6 @@ on: push: branches: [ "main" ] pull_request: - types: [opened, reopened] jobs: test: @@ -17,13 +16,16 @@ jobs: run: swift test -v test-linux: - if: false - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + swift: ["6.0", "6.1"] steps: - uses: actions/checkout@v3 - - uses: swift-actions/setup-swift@v2 + - uses: vapor/swiftly-action@v0.2 with: - swift-version: "6.1.0" + toolchain: ${{ matrix.swift }} - name: Get swift version run: swift --version - name: Prepare Git diff --git a/Package.swift b/Package.swift index e7a0b1e..1e61194 100644 --- a/Package.swift +++ b/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version: 5.6 +// swift-tools-version: 6.0 import PackageDescription @@ -16,36 +16,61 @@ let products: [PackageDescription.Product] = [ let targets: [PackageDescription.Target] = [ .executableTarget( name: "xcode-selective-test", - dependencies: ["SelectiveTestingCore", - .product(name: "ArgumentParser", package: "swift-argument-parser")] + dependencies: [ + "SelectiveTestingCore", + .product(name: "ArgumentParser", package: "swift-argument-parser"), + ], + swiftSettings: [.swiftLanguageMode(.v5)] ), - .target(name: "SelectiveTestingCore", - dependencies: ["DependencyCalculator", - "TestConfigurator", - "Git", - "PathKit", - "Rainbow", - "Yams"]), - .target(name: "DependencyCalculator", - dependencies: ["Workspace", "PathKit", "SelectiveTestLogger", "Git"]), - .target(name: "TestConfigurator", - dependencies: ["Workspace", "PathKit", "SelectiveTestLogger"]), - .target(name: "Workspace", - dependencies: ["XcodeProj", "SelectiveTestLogger"]), - .target(name: "Git", - dependencies: ["SelectiveTestShell", "SelectiveTestLogger", "PathKit"]), - .target(name: "SelectiveTestLogger", - dependencies: ["Rainbow"]), - .target(name: "SelectiveTestShell"), + .target( + name: "SelectiveTestingCore", + dependencies: [ + "DependencyCalculator", + "TestConfigurator", + "Git", + "PathKit", + "Rainbow", + "Yams", + ], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target( + name: "DependencyCalculator", + dependencies: ["Workspace", "PathKit", "SelectiveTestLogger", "Git"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target( + name: "TestConfigurator", + dependencies: ["Workspace", "PathKit", "SelectiveTestLogger"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target( + name: "Workspace", + dependencies: ["XcodeProj", "SelectiveTestLogger"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target( + name: "Git", + dependencies: ["SelectiveTestShell", "SelectiveTestLogger", "PathKit"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target( + name: "SelectiveTestLogger", + dependencies: ["Rainbow"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), + .target(name: "SelectiveTestShell", swiftSettings: [.swiftLanguageMode(.v5)]), .testTarget( name: "SelectiveTestingTests", dependencies: ["xcode-selective-test", "PathKit"], - resources: [.copy("ExampleProject")] + resources: [.copy("ExampleProject")], + swiftSettings: [.swiftLanguageMode(.v5)] ), .testTarget( name: "DependencyCalculatorTests", dependencies: ["DependencyCalculator", "Workspace", "PathKit", "SelectiveTestingCore"], - resources: [.copy("ExamplePackages")] + resources: [.copy("ExamplePackages")], + swiftSettings: [.swiftLanguageMode(.v5)] ), .plugin( name: "SelectiveTestingPlugin", @@ -55,7 +80,7 @@ let targets: [PackageDescription.Target] = [ description: "Configure test plan for current changeset" ), permissions: [ - .writeToPackageDirectory(reason: "Update test plan file"), + .writeToPackageDirectory(reason: "Update test plan file") ] ), dependencies: ["xcode-selective-test"] @@ -65,12 +90,14 @@ let targets: [PackageDescription.Target] = [ let package = Package( name: "XcodeSelectiveTesting", platforms: [ - .macOS(.v12), + .macOS(.v12) ], products: products, dependencies: [ .package(url: "https://github.com/tuist/XcodeProj.git", .upToNextMajor(from: "9.0.2")), - .package(url: "https://github.com/apple/swift-argument-parser.git", .upToNextMajor(from: "1.2.0")), + .package( + url: "https://github.com/apple/swift-argument-parser.git", .upToNextMajor(from: "1.2.0") + ), .package(url: "https://github.com/kylef/PathKit.git", .upToNextMinor(from: "1.0.0")), .package(url: "https://github.com/onevcat/Rainbow", .upToNextMajor(from: "4.0.0")), .package(url: "https://github.com/jpsim/Yams.git", from: "5.0.5"),