Skip to content

Commit 381834c

Browse files
authored
Add support for Swift 6.2 (#19)
Release `1.2.0`
2 parents c99e8f1 + 7ac5014 commit 381834c

File tree

12 files changed

+90
-141
lines changed

12 files changed

+90
-141
lines changed

.github/workflows/ci.yml

Lines changed: 61 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -34,26 +34,23 @@ jobs:
3434
fail-fast: false
3535
matrix:
3636
include:
37-
- xcode: "Xcode_16.0"
37+
- xcode: "Xcode_26.0.1"
38+
runsOn: macOS-26
39+
name: "macOS 26, Xcode 26.0, Swift 6.2.0"
40+
- xcode: "Xcode_16.1"
3841
runsOn: macOS-14
39-
name: "macOS 14, Xcode 16.0, Swift 6.0"
42+
name: "macOS 14, Xcode 16.1, Swift 6.0.2"
4043
- xcode: "Xcode_15.4"
4144
runsOn: macOS-14
4245
name: "macOS 14, Xcode 15.4, Swift 5.10"
43-
- xcode: "Xcode_15.0"
44-
runsOn: macos-13
45-
name: "macOS 13, Xcode 15.0, Swift 5.9.0"
46-
- xcode: "Xcode_14.3.1"
47-
runsOn: macos-13
48-
name: "macOS 13, Xcode 14.3.1, Swift 5.8.0"
4946
steps:
50-
- uses: actions/checkout@v3
47+
- uses: actions/checkout@v5
5148
- name: ${{ matrix.name }}
5249
run: xcodebuild test -scheme "Validator-Package" -destination "platform=macOS" clean -enableCodeCoverage YES -resultBundlePath "test_output/${{ matrix.name }}.xcresult" || exit 1
5350
- name: Upload test coverage reports to Codecov
5451
uses: space-code/oss-common-actions/.github/actions/upload_test_coverage_report@main
5552
with:
56-
scheme_name: Typhoon
53+
scheme_name: Validator-Package
5754
filename: ${{ matrix.name }}
5855
token: ${{ secrets.CODECOV_TOKEN }}
5956

@@ -67,28 +64,20 @@ jobs:
6764
fail-fast: false
6865
matrix:
6966
include:
67+
- destination: "OS=26.0.1,name=iPhone 17 Pro"
68+
xcode: "Xcode_26.0.1"
69+
runsOn: macOS-26
70+
name: "OS=26.0, Xcode 26.0, Swift 6.2.0"
7071
- destination: "OS=18.1,name=iPhone 16 Pro"
7172
name: "iOS 18.1"
7273
xcode: "Xcode_16.1"
7374
runsOn: macOS-14
74-
- destination: "OS=18.0,name=iPhone 16 Pro"
75-
name: "iOS 18.0"
76-
xcode: "Xcode_16.0"
77-
runsOn: macOS-14
78-
- destination: "OS=17.5,name=iPhone 15 Pro"
79-
name: "iOS 17.5"
80-
xcode: "Xcode_15.4"
81-
runsOn: macOS-14
82-
- destination: "OS=17.0.1,name=iPhone 14 Pro"
83-
name: "iOS 17.0.1"
84-
xcode: "Xcode_15.0"
85-
runsOn: macos-13
86-
- destination: "OS=16.4,name=iPhone 14 Pro"
87-
name: "iOS 16.4"
88-
xcode: "Xcode_14.3.1"
89-
runsOn: macos-13
75+
- destination: "OS=17.4,name=iPhone 15 Pro"
76+
name: "iOS 17.4"
77+
xcode: "Xcode_15.3"
78+
runsOn: macos-14
9079
steps:
91-
- uses: actions/checkout@v3
80+
- uses: actions/checkout@v5
9281
- name: ${{ matrix.name }}
9382
run: xcodebuild test -scheme "Validator-Package" -destination "${{ matrix.destination }}" clean -enableCodeCoverage YES -resultBundlePath "test_output/${{ matrix.name }}.xcresult" || exit 1
9483
- uses: actions/upload-artifact@v4
@@ -106,28 +95,20 @@ jobs:
10695
fail-fast: false
10796
matrix:
10897
include:
98+
- destination: "OS=26.0,name=Apple TV"
99+
xcode: "Xcode_26.0.1"
100+
runsOn: macOS-26
101+
name: "tvOS 26.0"
109102
- destination: "OS=18.1,name=Apple TV"
110103
name: "tvOS 18.1"
111104
xcode: "Xcode_16.1"
112105
runsOn: macOS-14
113-
- destination: "OS=18.0,name=Apple TV"
114-
name: "tvOS 18.0"
115-
xcode: "Xcode_16.0"
116-
runsOn: macOS-14
117-
- destination: "OS=17.5,name=Apple TV"
118-
name: "tvOS 17.5"
119-
xcode: "Xcode_15.4"
120-
runsOn: macOS-14
121-
- destination: "OS=17.0,name=Apple TV"
122-
name: "tvOS 17.0"
123-
xcode: "Xcode_15.0"
124-
runsOn: macos-13
125-
- destination: "OS=16.4,name=Apple TV"
126-
name: "tvOS 16.4"
127-
xcode: "Xcode_14.3.1"
128-
runsOn: macos-13
106+
- destination: "OS=17.4,name=Apple TV"
107+
name: "tvOS 17.4"
108+
xcode: "Xcode_15.3"
109+
runsOn: macos-14
129110
steps:
130-
- uses: actions/checkout@v3
111+
- uses: actions/checkout@v5
131112
- name: ${{ matrix.name }}
132113
run: xcodebuild test -scheme "Validator-Package" -destination "${{ matrix.destination }}" clean -enableCodeCoverage YES -resultBundlePath "test_output/${{ matrix.name }}.xcresult" || exit 1
133114
- name: Upload test coverage reports to Codecov
@@ -147,34 +128,30 @@ jobs:
147128
fail-fast: false
148129
matrix:
149130
include:
131+
- destination: "OS=26.0,name=Apple Watch Ultra 3 (49mm)"
132+
xcode: "Xcode_26.0.1"
133+
runsOn: macOS-26
134+
name: "watchOS 26.0"
150135
- destination: "OS=11.1,name=Apple Watch Series 10 (46mm)"
151136
name: "watchOS 11.1"
152137
xcode: "Xcode_16.1"
153138
runsOn: macOS-14
154-
- destination: "OS=11.0,name=Apple Watch Series 10 (46mm)"
155-
name: "watchOS 11.0"
156-
xcode: "Xcode_16.0"
157-
runsOn: macOS-14
158139
- destination: "OS=10.5,name=Apple Watch Series 9 (45mm)"
159140
name: "watchOS 10.5"
160-
xcode: "Xcode_15.4"
141+
xcode: "Xcode_15.3"
161142
runsOn: macOS-14
162-
- destination: "OS=10.0,name=Apple Watch Series 9 (45mm)"
163-
name: "watchOS 10.0"
164-
xcode: "Xcode_15.0"
165-
runsOn: macos-13
166-
- destination: "OS=9.4,name=Apple Watch Series 8 (45mm)"
167-
name: "watchOS 9.4"
168-
xcode: "Xcode_14.3.1"
169-
runsOn: macos-13
143+
- destination: "OS=10.4,name=Apple Watch Series 9 (45mm)"
144+
name: "watchOS 10.4"
145+
xcode: "Xcode_15.3"
146+
runsOn: macos-14
170147
steps:
171-
- uses: actions/checkout@v3
148+
- uses: actions/checkout@v5
172149
- name: ${{ matrix.name }}
173150
run: xcodebuild test -scheme "Validator-Package" -destination "${{ matrix.destination }}" clean -enableCodeCoverage YES -resultBundlePath "test_output/${{ matrix.name }}.xcresult" || exit 1
174151
- name: Upload test coverage reports to Codecov
175152
uses: space-code/oss-common-actions/.github/actions/upload_test_coverage_report@main
176153
with:
177-
scheme_name: Typhoon
154+
scheme_name: Validator-Package
178155
filename: ${{ matrix.name }}
179156
token: ${{ secrets.CODECOV_TOKEN }}
180157

@@ -188,48 +165,54 @@ jobs:
188165
fail-fast: false
189166
matrix:
190167
include:
168+
- destination: "macOS 26, SPM 6.2.0 Test"
169+
xcode: "Xcode_26.0.1"
170+
runsOn: macOS-26
171+
- destination: "macOS 15, SPM 6.0.2 Test"
172+
xcode: "Xcode_16.0"
173+
runsOn: macOS-15
191174
- name: "macOS 14, SPM 6.0.2 Test"
192175
xcode: "Xcode_16.1"
193176
runsOn: macOS-14
194-
- name: "macOS 14, SPM 6.0.0 Test"
195-
xcode: "Xcode_16.0"
196-
runsOn: macOS-14
197-
- name: "macOS 14, SPM 5.9.0 Test"
198-
xcode: "Xcode_15.0"
177+
- name: "macOS 14, SPM 5.10.0 Test"
178+
xcode: "Xcode_15.3"
199179
runsOn: macos-14
200-
- name: "macOS 13, SPM 5.8.1 Test"
201-
xcode: "Xcode_14.3.1"
202-
runsOn: macos-13
203180
steps:
204-
- uses: actions/checkout@v3
181+
- uses: actions/checkout@v5
205182
- name: ${{ matrix.name }}
206183
run: swift build -c release
207184

208185
merge-test-reports:
209186
needs: [iOS, macOS, watchOS, tvOS]
210-
runs-on: macos-13
187+
runs-on: macos-15
211188
steps:
212189
- name: Download artifacts
213-
uses: actions/download-artifact@v4
190+
uses: actions/download-artifact@v6
214191
with:
215192
path: test_output
216193
- run: xcrun xcresulttool merge test_output/**/*.xcresult --output-path test_output/final/final.xcresult
217194
- name: Upload Merged Artifact
218-
uses: actions/upload-artifact@v4
195+
uses: actions/upload-artifact@v5
219196
with:
220197
name: MergedResult
221198
path: test_output/final
222199

223200
discover-typos:
224201
name: Discover Typos
225-
runs-on: macOS-13
202+
runs-on: macos-15
226203
env:
227-
DEVELOPER_DIR: /Applications/Xcode_14.1.app/Contents/Developer
204+
DEVELOPER_DIR: /Applications/Xcode_16.4.app/Contents/Developer
228205
steps:
229-
- uses: actions/checkout@v2
206+
- uses: actions/checkout@v5
207+
208+
- name: Set up Python environment
209+
run: |
210+
python3 -m venv .venv
211+
source .venv/bin/activate
212+
pip install --upgrade pip
213+
pip install codespell
214+
230215
- name: Discover typos
231216
run: |
232-
export PATH="$PATH:/Library/Frameworks/Python.framework/Versions/3.11/bin"
233-
python3 -m pip install --upgrade pip
234-
python3 -m pip install codespell
235-
codespell --ignore-words-list="hart,inout,msdos,sur" --skip="./.build/*,./.git/*"
217+
source .venv/bin/activate
218+
codespell --ignore-words-list="hart,inout,msdos,sur" --skip="./.build/*,./.git/*"

.swiftformat

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Stream rules
22

3-
--swiftversion 5.7
3+
--swiftversion 6.2
44

55
# Use 'swiftformat --options' to list all of the possible options
66

@@ -36,8 +36,8 @@
3636
--enable redundantSelf
3737
--enable redundantVoidReturnType
3838
--enable semicolons
39-
--enable sortedImports
40-
--enable sortedSwitchCases
39+
--enable sortImports
40+
--enable sortSwitchCases
4141
--enable spaceAroundBraces
4242
--enable spaceAroundBrackets
4343
--enable spaceAroundComments
@@ -61,4 +61,4 @@
6161

6262
--wraparguments before-first
6363
--wrapcollections before-first
64-
--maxwidth 140
64+
--maxwidth 140

.swiftlint.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
excluded:
22
- Tests
33
- Package.swift
4-
5-
6-
74
5+
6+
87
- .build
98

109
# Rules

CHANGELOG.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,22 @@
22
All notable changes to this project will be documented in this file.
33

44
#### 1.x Releases
5+
- `1.2.x` Releases - [1.2.0](#120)
56
- `1.1.x` Releases - [1.1.0](#110)
67
- `1.0.x` Releases - [1.0.0](#100) | [1.0.1](#101)
78

9+
## [1.1.0](https://github.com/space-code/validator/releases/tag/1.2.0)
10+
Released on 2025-11-13.
11+
12+
#### Updated
13+
- Update the Swift version to 6.2.
14+
- Added in Pull Request [#18](https://github.com/space-code/validator/pull/18).
15+
816
## [1.1.0](https://github.com/space-code/validator/releases/tag/1.1.0)
917
Released on 2024-12-24.
1018

1119
#### Added
12-
- Increase the Swift version to 6.0.
20+
- Add support for the Swift version to 6.0.
1321
- Added in Pull Request [#13](https://github.com/space-code/validator/pull/13).
1422

1523
#### Updated

Package.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version: 6.0
1+
// swift-tools-version: 6.2
22
// The swift-tools-version declares the minimum version of Swift required to build this package.
33

44
import PackageDescription
@@ -16,7 +16,6 @@ let package = Package(
1616
.library(name: "ValidatorCore", targets: ["ValidatorCore"]),
1717
.library(name: "ValidatorUI", targets: ["ValidatorUI"]),
1818
],
19-
dependencies: [],
2019
targets: [
2120
.target(name: "ValidatorCore", dependencies: []),
2221
.target(name: "ValidatorUI", dependencies: ["ValidatorCore"]),

[email protected]

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ let package = Package(
1616
.library(name: "ValidatorCore", targets: ["ValidatorCore"]),
1717
.library(name: "ValidatorUI", targets: ["ValidatorUI"]),
1818
],
19-
dependencies: [],
2019
targets: [
2120
.target(name: "ValidatorCore", dependencies: []),
2221
.target(name: "ValidatorUI", dependencies: ["ValidatorCore"]),

[email protected]

Lines changed: 0 additions & 25 deletions
This file was deleted.
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version: 5.9
1+
// swift-tools-version: 6.0
22
// The swift-tools-version declares the minimum version of Swift required to build this package.
33

44
import PackageDescription
@@ -16,7 +16,6 @@ let package = Package(
1616
.library(name: "ValidatorCore", targets: ["ValidatorCore"]),
1717
.library(name: "ValidatorUI", targets: ["ValidatorUI"]),
1818
],
19-
dependencies: [],
2019
targets: [
2120
.target(name: "ValidatorCore", dependencies: []),
2221
.target(name: "ValidatorUI", dependencies: ["ValidatorCore"]),
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version: 5.7
1+
// swift-tools-version: 6.1
22
// The swift-tools-version declares the minimum version of Swift required to build this package.
33

44
import PackageDescription
@@ -10,12 +10,12 @@ let package = Package(
1010
.macOS(.v13),
1111
.watchOS(.v9),
1212
.tvOS(.v16),
13+
.visionOS(.v1),
1314
],
1415
products: [
1516
.library(name: "ValidatorCore", targets: ["ValidatorCore"]),
1617
.library(name: "ValidatorUI", targets: ["ValidatorUI"]),
1718
],
18-
dependencies: [],
1919
targets: [
2020
.target(name: "ValidatorCore", dependencies: []),
2121
.target(name: "ValidatorUI", dependencies: ["ValidatorCore"]),

0 commit comments

Comments
 (0)