Skip to content

Commit 5a6de91

Browse files
authored
Update project for Xcode 16 and Swift 6 (#1207)
1 parent 9298bab commit 5a6de91

File tree

94 files changed

+496
-710
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+496
-710
lines changed

.github/workflows/CI.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ on:
1111
jobs:
1212
Darwin:
1313
name: Darwin
14-
runs-on: macos-14
14+
runs-on: macos-15
1515
env:
1616
PROJECT: SwifterSwift.xcodeproj
17-
DEVELOPER_DIR: /Applications/Xcode.app/Contents/Developer
17+
DEVELOPER_DIR: /Applications/Xcode_16.app/Contents/Developer
1818
steps:
1919
- uses: actions/checkout@v1
2020
- name: Bundle Install
@@ -48,7 +48,7 @@ jobs:
4848
run: xcodebuild clean build -project $PROJECT -scheme $SCHEME -destination "$DESTINATION"
4949
env:
5050
SCHEME: SwifterSwift-watchOS
51-
DESTINATION: platform=watchOS Simulator,name=Apple Watch Series 5 (40mm)
51+
DESTINATION: platform=watchOS Simulator,name=Apple Watch Series 10 (42mm)
5252

5353
- name: Danger Swift
5454
# Hack to by pass the key invalidation mechanism
@@ -58,7 +58,7 @@ jobs:
5858
bundle exec danger --verbose
5959
6060
Swiftlint:
61-
runs-on: macos-14
61+
runs-on: macos-15
6262
name: SwiftLint
6363
steps:
6464
- uses: actions/checkout@v1
@@ -69,12 +69,12 @@ jobs:
6969
swiftlint
7070
CocoaPods:
7171
name: CocoaPods
72-
runs-on: macos-14
72+
runs-on: macos-15
7373
strategy:
7474
matrix:
7575
platform: ['ios', 'macos', 'tvos', 'watchos']
7676
env:
77-
DEVELOPER_DIR: /Applications/Xcode.app/Contents/Developer
77+
DEVELOPER_DIR: /Applications/Xcode_16.app/Contents/Developer
7878
steps:
7979
- uses: actions/checkout@v1
8080
- name: Bundle Install
@@ -83,9 +83,9 @@ jobs:
8383
run: bundle exec pod lib lint --skip-tests --allow-warnings --verbose --platforms=${{ matrix.platform }}
8484

8585
Linux:
86-
runs-on: [ubuntu-latest]
87-
container: swift:5.8
86+
runs-on: [ubuntu-24.04]
87+
container: swift:6.0.1
8888
steps:
8989
- uses: actions/checkout@v1
9090
- name: Linux
91-
run: swift test --enable-test-discovery --parallel
91+
run: swift test --parallel

.swift-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
6.0

.swiftformat

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,3 @@
88
--importgrouping testable-top
99
--nospaceoperators ..<,...
1010
--maxwidth 120
11-
--swiftversion 5.3

Brewfile.lock.json

Lines changed: 44 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -2,133 +2,123 @@
22
"entries": {
33
"brew": {
44
"swiftlint": {
5-
"version": "0.53.0",
5+
"version": "0.56.1",
66
"bottle": {
77
"rebuild": 0,
88
"root_url": "https://ghcr.io/v2/homebrew/core",
99
"files": {
1010
"arm64_sonoma": {
1111
"cellar": ":any_skip_relocation",
12-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:240ccda9de55d948d0c635798079074099bfcb73ffda41428900fdc748aeea7b",
13-
"sha256": "240ccda9de55d948d0c635798079074099bfcb73ffda41428900fdc748aeea7b"
12+
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:c8928f95c4dd5dabe5b5e9eb706f2e9249d075c014af8f42bdb79afbd9c1113d",
13+
"sha256": "c8928f95c4dd5dabe5b5e9eb706f2e9249d075c014af8f42bdb79afbd9c1113d"
1414
},
1515
"arm64_ventura": {
1616
"cellar": ":any_skip_relocation",
17-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:7b7ceb7896c6833965cc4eac9001255d8adde6c5432045d5a8ab6aea8a9e81d9",
18-
"sha256": "7b7ceb7896c6833965cc4eac9001255d8adde6c5432045d5a8ab6aea8a9e81d9"
19-
},
20-
"arm64_monterey": {
21-
"cellar": ":any_skip_relocation",
22-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:78c2a4c3f4a2f6847b484527b0f0f916da71e3ee29e49890fd44b63fe7b38e26",
23-
"sha256": "78c2a4c3f4a2f6847b484527b0f0f916da71e3ee29e49890fd44b63fe7b38e26"
17+
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:9ed24e20f861a2f4bc355648487bd005739188e07d1d5fb45f2a8828dff53337",
18+
"sha256": "9ed24e20f861a2f4bc355648487bd005739188e07d1d5fb45f2a8828dff53337"
2419
},
2520
"sonoma": {
2621
"cellar": ":any_skip_relocation",
27-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:abdca78dd8a8bd268053b3be195fe891bb74aef5502ab3a6b871ae0c6bb04540",
28-
"sha256": "abdca78dd8a8bd268053b3be195fe891bb74aef5502ab3a6b871ae0c6bb04540"
22+
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:1a196319b86855eb80004ced5636a2c5d5f580e222d3a273df950af9e4a5b416",
23+
"sha256": "1a196319b86855eb80004ced5636a2c5d5f580e222d3a273df950af9e4a5b416"
2924
},
3025
"ventura": {
3126
"cellar": ":any_skip_relocation",
32-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:be711c707bf3b49fa0dd6e2ae576b309aad620f9b56a2c6e7b1ac5cf35cf652a",
33-
"sha256": "be711c707bf3b49fa0dd6e2ae576b309aad620f9b56a2c6e7b1ac5cf35cf652a"
34-
},
35-
"monterey": {
36-
"cellar": ":any_skip_relocation",
37-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:13487d68a971dbe035019364e19d70641af2a18c06e52925d238685b384a7979",
38-
"sha256": "13487d68a971dbe035019364e19d70641af2a18c06e52925d238685b384a7979"
27+
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:876de5549e9d21a2d2efb21f277d2688cef1badc665b63a05c7903434ea298aa",
28+
"sha256": "876de5549e9d21a2d2efb21f277d2688cef1badc665b63a05c7903434ea298aa"
3929
},
4030
"x86_64_linux": {
4131
"cellar": "/home/linuxbrew/.linuxbrew/Cellar",
42-
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:fbbc56fccfcfcd34564feb7325567e2ff3638d3c609396a5c4aa13311c7b26e0",
43-
"sha256": "fbbc56fccfcfcd34564feb7325567e2ff3638d3c609396a5c4aa13311c7b26e0"
32+
"url": "https://ghcr.io/v2/homebrew/core/swiftlint/blobs/sha256:4962c8d617285eb6aaeeb45c91985aefda1255b361aa3226b2522434457278de",
33+
"sha256": "4962c8d617285eb6aaeeb45c91985aefda1255b361aa3226b2522434457278de"
4434
}
4535
}
4636
}
4737
},
4838
"swiftformat": {
49-
"version": "0.53.5",
39+
"version": "0.54.3",
5040
"bottle": {
5141
"rebuild": 0,
5242
"root_url": "https://ghcr.io/v2/homebrew/core",
5343
"files": {
5444
"arm64_sonoma": {
5545
"cellar": ":any_skip_relocation",
56-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:04e089d4b1ae1217dd6c8133b3c661add56d7c4f4f24ee67becd3cf8f54e6e80",
57-
"sha256": "04e089d4b1ae1217dd6c8133b3c661add56d7c4f4f24ee67becd3cf8f54e6e80"
46+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:cecdcf7705cb91f9ba9d08793c67edd61b7e1d1acbe2ee1ef598acfd7cfcc6b3",
47+
"sha256": "cecdcf7705cb91f9ba9d08793c67edd61b7e1d1acbe2ee1ef598acfd7cfcc6b3"
5848
},
5949
"arm64_ventura": {
6050
"cellar": ":any_skip_relocation",
61-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:19a6ce102e7df1cdee150dee619025aa3b2a4980070bee4f8cdd6976c0936d46",
62-
"sha256": "19a6ce102e7df1cdee150dee619025aa3b2a4980070bee4f8cdd6976c0936d46"
51+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:b2222e0ffee8931b40c61548237ff2037a0e99139089a6df6ab4f3e1a23d0b7a",
52+
"sha256": "b2222e0ffee8931b40c61548237ff2037a0e99139089a6df6ab4f3e1a23d0b7a"
6353
},
6454
"arm64_monterey": {
6555
"cellar": ":any_skip_relocation",
66-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:745ba037da0e1fe62f2f22faa45a17655b89d8870bacd9db32597ce1fd779509",
67-
"sha256": "745ba037da0e1fe62f2f22faa45a17655b89d8870bacd9db32597ce1fd779509"
56+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:e87d9ce5bb0f266c6a31e13752aa74b0ecc895b87eaec987297e2c24b69c505d",
57+
"sha256": "e87d9ce5bb0f266c6a31e13752aa74b0ecc895b87eaec987297e2c24b69c505d"
6858
},
6959
"sonoma": {
7060
"cellar": ":any_skip_relocation",
71-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:6830f0bd5d06dca19d2bcd614e6d0c87e7a3d703d33bce90d0448a83310dddcc",
72-
"sha256": "6830f0bd5d06dca19d2bcd614e6d0c87e7a3d703d33bce90d0448a83310dddcc"
61+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:e56f11df75c29a52fc1a14d99fb0808858e15f989aac824202ca8380a29a5073",
62+
"sha256": "e56f11df75c29a52fc1a14d99fb0808858e15f989aac824202ca8380a29a5073"
7363
},
7464
"ventura": {
7565
"cellar": ":any_skip_relocation",
76-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:dacbfeca6cbe99fc73448f08c0289f135e807bc220ac1dcb61952410f1b43535",
77-
"sha256": "dacbfeca6cbe99fc73448f08c0289f135e807bc220ac1dcb61952410f1b43535"
66+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:1c4644e0db67009e71d72ff3139a870898f47dbdb38e4b1f9ca19e16e507a025",
67+
"sha256": "1c4644e0db67009e71d72ff3139a870898f47dbdb38e4b1f9ca19e16e507a025"
7868
},
7969
"monterey": {
8070
"cellar": ":any_skip_relocation",
81-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:a5e30f5378aca201ca8bc7a350ebac28b3202366be1b37cf254f77c27761753a",
82-
"sha256": "a5e30f5378aca201ca8bc7a350ebac28b3202366be1b37cf254f77c27761753a"
71+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:b564501ae28caf4b5108a1ba351a6eb6f989522353cac25e078e8edf88239c96",
72+
"sha256": "b564501ae28caf4b5108a1ba351a6eb6f989522353cac25e078e8edf88239c96"
8373
},
8474
"x86_64_linux": {
8575
"cellar": "/home/linuxbrew/.linuxbrew/Cellar",
86-
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:909ae79dbe735c9377355e202d07a58aeff1af1707ba7a3c843cf7c3b10f68a9",
87-
"sha256": "909ae79dbe735c9377355e202d07a58aeff1af1707ba7a3c843cf7c3b10f68a9"
76+
"url": "https://ghcr.io/v2/homebrew/core/swiftformat/blobs/sha256:82a084203a146c3f27e80440c3c5fc7c1222e1c58e8743445d3e880d1d913957",
77+
"sha256": "82a084203a146c3f27e80440c3c5fc7c1222e1c58e8743445d3e880d1d913957"
8878
}
8979
}
9080
}
9181
},
9282
"ruby": {
93-
"version": "3.3.0",
83+
"version": "3.3.4",
9484
"bottle": {
9585
"rebuild": 0,
9686
"root_url": "https://ghcr.io/v2/homebrew/core",
9787
"files": {
9888
"arm64_sonoma": {
9989
"cellar": "/opt/homebrew/Cellar",
100-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:f1df6988bf95afc9fd2f0f3c81f5ebbc44c329e0256e0cb9e6d1ff0afa87042c",
101-
"sha256": "f1df6988bf95afc9fd2f0f3c81f5ebbc44c329e0256e0cb9e6d1ff0afa87042c"
90+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:d7f3368bed92b3cf315aa1e6e3d4828508b8cde834da97c7de286356b23b5612",
91+
"sha256": "d7f3368bed92b3cf315aa1e6e3d4828508b8cde834da97c7de286356b23b5612"
10292
},
10393
"arm64_ventura": {
10494
"cellar": "/opt/homebrew/Cellar",
105-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:4324666563f8553fb823d6eebf087de3d5a2215150920dd18d231d88e02551e7",
106-
"sha256": "4324666563f8553fb823d6eebf087de3d5a2215150920dd18d231d88e02551e7"
95+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:7386f4f6b74b9e75c76985bd8fddba74c74230e180b23c2d5cd744d8bb1be4e3",
96+
"sha256": "7386f4f6b74b9e75c76985bd8fddba74c74230e180b23c2d5cd744d8bb1be4e3"
10797
},
10898
"arm64_monterey": {
10999
"cellar": "/opt/homebrew/Cellar",
110-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:df1e89eab46fc3712498cbd05ab1babcfe4ac65b04922c3ab71a7fc4196c10c4",
111-
"sha256": "df1e89eab46fc3712498cbd05ab1babcfe4ac65b04922c3ab71a7fc4196c10c4"
100+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:1ca652dd76a06d4111038770c33d033cfcceb405a515a8bbaec60d00db56a0ba",
101+
"sha256": "1ca652dd76a06d4111038770c33d033cfcceb405a515a8bbaec60d00db56a0ba"
112102
},
113103
"sonoma": {
114104
"cellar": "/usr/local/Cellar",
115-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:b91811e54f96b78f45d33e51b0113ca979b76a60d64c3ee9b3c22ba4959b3ca6",
116-
"sha256": "b91811e54f96b78f45d33e51b0113ca979b76a60d64c3ee9b3c22ba4959b3ca6"
105+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:7eed0e55b0e8bc34828fcd31b3d06d13322bfefd88a2f4bc3b00d8ad1f85e4dc",
106+
"sha256": "7eed0e55b0e8bc34828fcd31b3d06d13322bfefd88a2f4bc3b00d8ad1f85e4dc"
117107
},
118108
"ventura": {
119109
"cellar": "/usr/local/Cellar",
120-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:b3f7fe0a1e2b5222f3353f3f8d7024aba62933dbb67ae88bdeccebc675ccc04f",
121-
"sha256": "b3f7fe0a1e2b5222f3353f3f8d7024aba62933dbb67ae88bdeccebc675ccc04f"
110+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:13ccd17720074f7007167d12eab6759fce0a8e7f1c0476fd032ae0f307999556",
111+
"sha256": "13ccd17720074f7007167d12eab6759fce0a8e7f1c0476fd032ae0f307999556"
122112
},
123113
"monterey": {
124114
"cellar": "/usr/local/Cellar",
125-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:383e350e08b528df131d01b7e5b453ceba5a4355b54239189765bca3b32f7185",
126-
"sha256": "383e350e08b528df131d01b7e5b453ceba5a4355b54239189765bca3b32f7185"
115+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:2cb7e1deede563054cbd401aa98951018ebde2a59d61e3d226904d5a7e0e1199",
116+
"sha256": "2cb7e1deede563054cbd401aa98951018ebde2a59d61e3d226904d5a7e0e1199"
127117
},
128118
"x86_64_linux": {
129119
"cellar": "/home/linuxbrew/.linuxbrew/Cellar",
130-
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:658faff09d5f5825de52dac5d178ec9e65e91ffcb627f9daf8753b0d42d59c1f",
131-
"sha256": "658faff09d5f5825de52dac5d178ec9e65e91ffcb627f9daf8753b0d42d59c1f"
120+
"url": "https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:6cafaf06f366962038aa196b99e6ad4135eb10bb65df700058818f53dfa22184",
121+
"sha256": "6cafaf06f366962038aa196b99e6ad4135eb10bb65df700058818f53dfa22184"
132122
}
133123
}
134124
}
@@ -138,12 +128,12 @@
138128
"system": {
139129
"macos": {
140130
"sonoma": {
141-
"HOMEBREW_VERSION": "4.2.14",
131+
"HOMEBREW_VERSION": "4.3.17",
142132
"HOMEBREW_PREFIX": "/opt/homebrew",
143133
"Homebrew/homebrew-core": "api",
144134
"CLT": "15.3.0.0.1.1708646388",
145-
"Xcode": "15.3",
146-
"macOS": "14.3.1"
135+
"Xcode": "15.2",
136+
"macOS": "14.5"
147137
}
148138
}
149139
}

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ The changelog for **SwifterSwift**. Also see the [releases](https://github.com/S
1515
- Marked `init(colors:locations:startPoint:endPoint:type:)` as available for `(macOS 10.14, *)`. [#1197](https://github.com/SwifterSwift/SwifterSwift/pull/1197) by [guykogus](https://github.com/guykogus)
1616
- **CGAffineTransform**
1717
- Marked `transform3D()` as unavailable for watchOS. [#1197](https://github.com/SwifterSwift/SwifterSwift/pull/1197) by [guykogus](https://github.com/guykogus)
18+
- **Future**
19+
- `init(asyncFunc:)` as incompatible with Swift 6 concurrency protection, and isn't needed anyway as `async`-`await` supersedes `Future`. [#1207](https://github.com/SwifterSwift/SwifterSwift/pull/1207) by [guykogus](https://github.com/guykogus)
20+
- **URLSession**
21+
- `dataSync(with:)` as incompatible with Swift 6 concurrency protection, and isn't needed anyway as the `data(from:delegate:)` `async` function can be used. [#1207](https://github.com/SwifterSwift/SwifterSwift/pull/1207) by [guykogus](https://github.com/guykogus)
1822

1923
## [v6.2.0](https://github.com/SwifterSwift/SwifterSwift/releases/tag/6.2.0)
2024
### Added

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy