From 0019e0beefd4b616c5c4c0ffa1d9f6d660945d6a Mon Sep 17 00:00:00 2001 From: Federico Zanetello Date: Sun, 30 Jan 2022 10:18:53 +0700 Subject: [PATCH 1/5] update dependencies --- Package.resolved | 8 +++---- Package.swift | 54 ++++++++++++++++++++++-------------------------- 2 files changed, 29 insertions(+), 33 deletions(-) diff --git a/Package.resolved b/Package.resolved index f7105ee..f8d6d37 100644 --- a/Package.resolved +++ b/Package.resolved @@ -6,8 +6,8 @@ "repositoryURL": "https://github.com/apple/swift-argument-parser.git", "state": { "branch": null, - "revision": "9f04d1ff1afbccd02279338a2c91e5f27c45e93a", - "version": "0.0.5" + "revision": "e1465042f195f374b94f915ba8ca49de24300a0d", + "version": "1.0.2" } }, { @@ -15,8 +15,8 @@ "repositoryURL": "https://github.com/apple/swift-tools-support-core.git", "state": { "branch": null, - "revision": "693aba4c4c9dcc4767cc853a0dd38bf90ad8c258", - "version": "0.0.1" + "revision": "f9bbd6b80d67408021576adf6247e17c2e957d92", + "version": "0.2.4" } } ] diff --git a/Package.swift b/Package.swift index 415f158..9e34662 100644 --- a/Package.swift +++ b/Package.swift @@ -1,34 +1,30 @@ -// swift-tools-version:5.2 +// swift-tools-version:5.5 import PackageDescription let package = Package( - name: "Life", - products: [ - .library(name: "Life", targets: ["Life"]), - .executable(name: "life-cli", targets: ["lifeCLI"]) - ], - dependencies: [ - .package(url: "https://github.com/apple/swift-argument-parser.git", - .upToNextMinor(from: "0.0.1")), - .package(url: "https://github.com/apple/swift-tools-support-core.git", - .upToNextMinor(from: "0.0.1")) - ], - targets: [ - .target( - name: "lifeCLI", - dependencies: [ - .product(name: "SwiftToolsSupport", - package: "swift-tools-support-core"), - .product(name: "ArgumentParser", - package: "swift-argument-parser"), - "Life" - ]), - .target( - name: "Life", - dependencies: []), - .testTarget( - name: "LifeTests", - dependencies: ["Life"]), - ] + name: "Life", + products: [ + .library(name: "Life", targets: ["Life"]), + .executable(name: "life-cli", targets: ["lifeCLI"]) + ], + dependencies: [ + .package(url: "https://github.com/apple/swift-argument-parser.git", + .upToNextMinor(from: "1.0.1")), + .package(url: "https://github.com/apple/swift-tools-support-core.git", + .upToNextMinor(from: "0.2.4")) + ], + targets: [ + .executableTarget( + name: "lifeCLI", + dependencies: [ + .product(name: "SwiftToolsSupport-auto", + package: "swift-tools-support-core"), + .product(name: "ArgumentParser", + package: "swift-argument-parser"), + "Life" + ]), + .target(name: "Life"), + .testTarget(name: "LifeTests", dependencies: ["Life"]) + ] ) From b8fb0cb9199327d52da76ec9cbcebf5d8c158f96 Mon Sep 17 00:00:00 2001 From: Federico Zanetello Date: Sun, 30 Jan 2022 10:22:30 +0700 Subject: [PATCH 2/5] update @Option default value --- Sources/lifeCLI/Life.swift | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Sources/lifeCLI/Life.swift b/Sources/lifeCLI/Life.swift index d58779a..9ba2040 100644 --- a/Sources/lifeCLI/Life.swift +++ b/Sources/lifeCLI/Life.swift @@ -2,14 +2,14 @@ import ArgumentParser import Life struct Life: ParsableCommand { - @Option(name: .shortAndLong, default: 10, help: "The world rows number.") - var rows: Int + @Option(name: .shortAndLong, help: "The world rows number.") + var rows: Int = 10 - @Option(name: .shortAndLong, default: 80, help: "The world columns number.") - var columns: Int + @Option(name: .shortAndLong, help: "The world columns number.") + var columns: Int = 80 - @Option(name: .shortAndLong, default: .simple, help: "The world mode. (simple|loop)") - var mode: Mode + @Option(name: .shortAndLong, help: "The world mode. (simple|loop)") + var mode: Mode = .simple func validate() throws { guard rows > 0, columns > 0 else { From a5fd68c1b3d931df81a2154d517f15407b642300 Mon Sep 17 00:00:00 2001 From: Federico Zanetello Date: Sun, 30 Jan 2022 10:23:32 +0700 Subject: [PATCH 3/5] use @main --- Sources/lifeCLI/Life.swift | 1 + Sources/lifeCLI/main.swift | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 Sources/lifeCLI/main.swift diff --git a/Sources/lifeCLI/Life.swift b/Sources/lifeCLI/Life.swift index 9ba2040..885a66f 100644 --- a/Sources/lifeCLI/Life.swift +++ b/Sources/lifeCLI/Life.swift @@ -1,6 +1,7 @@ import ArgumentParser import Life +@main struct Life: ParsableCommand { @Option(name: .shortAndLong, help: "The world rows number.") var rows: Int = 10 diff --git a/Sources/lifeCLI/main.swift b/Sources/lifeCLI/main.swift deleted file mode 100644 index c722296..0000000 --- a/Sources/lifeCLI/main.swift +++ /dev/null @@ -1 +0,0 @@ -Life.main() From 0edde213cdeaf04f103bce2a31addbf5832e85b8 Mon Sep 17 00:00:00 2001 From: Federico Zanetello Date: Sun, 30 Jan 2022 10:29:09 +0700 Subject: [PATCH 4/5] update make file --- makefile | 7 ------- 1 file changed, 7 deletions(-) diff --git a/makefile b/makefile index 0cfd390..5b10f3f 100644 --- a/makefile +++ b/makefile @@ -1,16 +1,9 @@ prefix ?= /usr/local bindir = $(prefix)/bin -libdir = $(prefix)/lib install: swift build -c release install ".build/release/life-cli" "$(bindir)/life" - install ".build/release/libSwiftToolsSupport.dylib" "$(libdir)" - install_name_tool -change \ - ".build/x86_64-apple-macosx10.10/release/libSwiftToolsSupport.dylib" \ - "$(libdir)/libSwiftToolsSupport.dylib" \ - "$(bindir)/life" uninstall: rm -rf "$(bindir)/life" - rm -rf "$(libdir)/libSwiftToolsSupport.dylib" From 9f31dfe4a0f9147d6dcee0cb58f67e731daf3a3e Mon Sep 17 00:00:00 2001 From: Federico Zanetello Date: Sun, 30 Jan 2022 10:33:07 +0700 Subject: [PATCH 5/5] update GH workflows dependencies --- .github/workflows/build-and-test.yml | 4 ++-- .github/workflows/swiftlint-check.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index a0138e3..5f67b4d 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -11,8 +11,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v1 - - name: Select Xcode 11.4 - run: sudo xcode-select -s /Applications/Xcode_11.4.app && xcodebuild -version + - name: Select Xcode 13.2.1 + run: sudo xcode-select -s /Applications/Xcode_13.2.1.app && xcodebuild -version - name: Build run: swift build -v - name: Run tests diff --git a/.github/workflows/swiftlint-check.yml b/.github/workflows/swiftlint-check.yml index 618af52..550b169 100644 --- a/.github/workflows/swiftlint-check.yml +++ b/.github/workflows/swiftlint-check.yml @@ -12,4 +12,4 @@ jobs: - name: Checkout uses: actions/checkout@v1 - name: GitHub Action for SwiftLint - uses: norio-nomura/action-swiftlint@3.0.1 \ No newline at end of file + uses: norio-nomura/action-swiftlint@3.2.1 \ No newline at end of file