Skip to content

Commit f0dca81

Browse files
authored
Update deps (#895)
1 parent f9ed629 commit f0dca81

File tree

10 files changed

+83
-41
lines changed

10 files changed

+83
-41
lines changed

.github/workflows/test.yml

Lines changed: 42 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,29 +35,48 @@ jobs:
3535
- name: Scan
3636
run: bazel run //:periphery -- scan --bazel --quiet --strict --baseline baselines/bazel.json
3737
macOS:
38+
name: macOS
3839
strategy:
3940
fail-fast: false
4041
matrix:
41-
xcode: ["16.2", "16.1", "16.0", "15.4"]
42+
step: ["main-snapshot", "16.3", "16.2", "16.1"]
4243
include:
43-
- xcode: "16.2"
44-
macos: macos-15
45-
- xcode: "16.1"
46-
macos: macos-15
47-
- xcode: "16.0"
48-
macos: macos-15
49-
- xcode: "15.4"
50-
macos: macos-14
51-
runs-on: ${{ matrix.macos }}
52-
name: macOS
44+
- step: "main-snapshot"
45+
xcode: "16.3"
46+
swiftly: "main-snapshot"
47+
continueOnError: true
48+
- step: "16.3"
49+
xcode: "16.3"
50+
baseline: "macos-swift-6.1.json"
51+
- step: "16.2"
52+
xcode: "16.2"
53+
- step: "16.1"
54+
xcode: "16.1"
55+
runs-on: macos-15
56+
continue-on-error: ${{ matrix.continueOnError == true }}
5357
steps:
5458
- uses: actions/checkout@master
5559
- name: Select Xcode version
5660
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app; swift -version
61+
- name: Install Swiftly
62+
if: ${{ matrix.swiftly }}
63+
run: |
64+
curl -O https://download.swift.org/swiftly/darwin/swiftly.pkg
65+
installer -pkg swiftly.pkg -target CurrentUserHomeDirectory
66+
~/.swiftly/bin/swiftly init --skip-install
67+
. ~/.swiftly/env.sh
68+
hash -r
69+
echo "PATH=$PATH" >> "$GITHUB_ENV"
70+
echo "SWIFTLY_HOME_DIR=$SWIFTLY_HOME_DIR" >> "$GITHUB_ENV"
71+
echo "SWIFTLY_BIN_DIR=$SWIFTLY_BIN_DIR" >> "$GITHUB_ENV"
72+
- name: Install Swift (Swiftly)
73+
if: ${{ matrix.swiftly }}
74+
run: swiftly install ${{ matrix.swiftly }} --use
5775
- name: Get Swift Version
5876
id: get-swift-version
5977
run: |
60-
echo "::set-output name=version::$(swift -version | head -n 1 | sed s/,// )"
78+
swift -version
79+
echo "::set-output name=version::$(swift -version | head -n 1 | sed s/,// )"
6180
shell: bash
6281
- name: Cache resolved dependencies
6382
id: cache-resolved-dependencies
@@ -75,27 +94,32 @@ jobs:
7594
- name: Build
7695
run: ${{ env.swift_build }}
7796
- name: Scan
78-
run: ${{ env.periphery_scan }}
97+
run: ${{ env.periphery_scan }} ${{ matrix.baseline && format('--baseline baselines/{0}', matrix.baseline) || '' }}
7998
- name: Test
8099
run: ${{ env.swift_test }}
81100
linux:
101+
name: Linux
82102
strategy:
83103
fail-fast: false
84104
matrix:
85-
swift: ["6.0", "5.10"]
105+
swift: ["nightly", "6.1", "6.0"]
86106
include:
107+
- swift: "nightly"
108+
container: "swiftlang/swift:nightly"
109+
continueOnError: true
110+
- swift: "6.1"
111+
container: "swift:6.1"
87112
- swift: "6.0"
88113
container: "swift:6.0"
89-
- swift: "5.10"
90-
container: "swift:5.10"
91-
runs-on: ubuntu-20.04
114+
runs-on: ubuntu-latest
92115
container: ${{ matrix.container }}
93-
name: Linux
116+
continue-on-error: ${{ matrix.continueOnError == true }}
94117
steps:
95118
- uses: actions/checkout@master
96119
- name: Get Swift Version
97120
id: get-swift-version
98121
run: |
122+
swift -version
99123
echo "::set-output name=version::$(swift -version | head -n 1 | sed s/,// )"
100124
shell: bash
101125
- name: Cache resolved dependencies

MODULE.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ bazel_dep(name = "aexml", version = "4.7.0")
1515
bazel_dep(name = "swift_argument_parser", version = "1.5.0")
1616
bazel_dep(name = "swift-filename-matcher", version = "2.0.0")
1717
bazel_dep(name = "swift-indexstore", version = "0.3.0")
18-
bazel_dep(name = "swift-syntax", version = "600.0.1")
18+
bazel_dep(name = "swift-syntax", version = "601.0.0")
1919
bazel_dep(name = "swift-system", version = "1.4.2")
2020
bazel_dep(name = "pathkit", version = "1.0.1")
21-
bazel_dep(name = "xcodeproj", version = "8.27.3")
21+
bazel_dep(name = "xcodeproj", version = "9.0.0")
2222
bazel_dep(name = "yams", version = "5.3.1")
2323

2424
# Generated repo

MODULE.bazel.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.resolved

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version:5.10
1+
// swift-tools-version:6.0
22
import PackageDescription
33

44
var dependencies: [Package.Dependency] = [
@@ -7,15 +7,15 @@ var dependencies: [Package.Dependency] = [
77
.package(url: "https://github.com/tadija/AEXML", from: "4.0.0"),
88
.package(url: "https://github.com/apple/swift-argument-parser", from: "1.0.0"),
99
.package(url: "https://github.com/kateinoigakukun/swift-indexstore", from: "0.3.0"),
10-
.package(url: "https://github.com/apple/swift-syntax", from: "600.0.1"),
10+
.package(url: "https://github.com/apple/swift-syntax", from: "601.0.1"),
1111
.package(url: "https://github.com/ileitch/swift-filename-matcher", from: "2.0.0"),
1212
]
1313

1414
#if os(macOS)
1515
dependencies.append(
1616
.package(
1717
url: "https://github.com/tuist/xcodeproj",
18-
from: "8.27.3"
18+
from: "9.0.0"
1919
)
2020
)
2121
#endif
@@ -181,5 +181,5 @@ let package = Package(
181181
],
182182
dependencies: dependencies,
183183
targets: targets,
184-
swiftLanguageVersions: [.v5]
184+
swiftLanguageModes: [.v5]
185185
)

Sources/SyntaxAnalysis/DeclarationSyntaxVisitor.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,9 @@ public final class DeclarationSyntaxVisitor: PeripherySyntaxVisitor {
467467
guard let clause else { return [] }
468468

469469
return clause.arguments.reduce(into: .init()) { result, param in
470-
result.formUnion(typeSyntaxInspector.typeLocations(for: param.argument))
470+
if case let .type(argumentType) = param.argument {
471+
result.formUnion(typeSyntaxInspector.typeLocations(for: argumentType))
472+
}
471473
}
472474
}
473475

Sources/SyntaxAnalysis/TypeSyntaxInspector.swift

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,21 @@ struct TypeSyntaxInspector {
3131
func types(for typeSyntax: TypeSyntax) -> Set<TokenSyntax> {
3232
if let identifierType = typeSyntax.as(IdentifierTypeSyntax.self) {
3333
// Simple type.
34-
var result = identifierType.genericArgumentClause?.arguments.flatMapSet { types(for: $0.argument) } ?? []
34+
var result: Set<TokenSyntax> = identifierType.genericArgumentClause?.arguments.flatMapSet {
35+
guard case let .type(argumentType) = $0.argument else { return [] }
36+
return types(for: argumentType)
37+
} ?? []
3538
return result.inserting(identifierType.name)
3639
} else if let optionalType = typeSyntax.as(OptionalTypeSyntax.self) {
3740
// Optional type.
3841
return types(for: optionalType.wrappedType)
3942
} else if let memberType = typeSyntax.as(MemberTypeSyntax.self) {
4043
// Member type.
4144
return types(for: memberType.baseType)
42-
.union(memberType.genericArgumentClause?.arguments.flatMapSet { types(for: $0.argument) } ?? [])
45+
.union(memberType.genericArgumentClause?.arguments.flatMapSet {
46+
guard case let .type(argumentType) = $0.argument else { return [] }
47+
return types(for: argumentType)
48+
} ?? [])
4349
.union([memberType.name])
4450
} else if let tuple = typeSyntax.as(TupleTypeSyntax.self) {
4551
// Tuple type.

Sources/XcodeSupport/XcodeTarget.swift

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,17 @@ public final class XcodeTarget {
5757
}
5858

5959
private func identifyInfoPlistFiles() throws {
60-
let plistFiles = target.buildConfigurationList?.buildConfigurations.compactMap {
61-
$0.buildSettings["INFOPLIST_FILE"] as? String
60+
let plistFiles = target.buildConfigurationList?.buildConfigurations.flatMap {
61+
if let setting = $0.buildSettings["INFOPLIST_FILE"] {
62+
switch setting {
63+
case let .string(value):
64+
return [value]
65+
case let .array(values):
66+
return values
67+
}
68+
}
69+
70+
return []
6271
} ?? []
6372
files[.infoPlist] = plistFiles.mapSet { parseInfoPlistSetting($0) }
6473
}

baselines/linux.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"v1":{"usrs":["import-Configuration-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:2:5","import-Indexer-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:4:5","import-Logger-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:5:5","import-Shared-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:6:5","import-SourceGraph-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:7:5","import-TestShared-Tests\/PeripheryTests\/ObjcAccessibleRetentionTest.swift:2:1","import-TestShared-Tests\/PeripheryTests\/ObjcAnnotatedRetentionTest.swift:2:1","s:11SourceGraph15ProjectFileKindO10extensionsSaySSGvp","s:6Shared14SetupSelectionO","s:6Shared17SetupGuideHelpersC6select8multipleAA0B9SelectionOSaySSG_tF","s:SS10ExtensionsE17withEscapedQuotesSSvp","s:SS10ExtensionsE4djb2Sivp","s:SS10ExtensionsE7djb2HexSSvp"]}}
1+
{"v1":{"usrs":["import-Configuration-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:2:5","import-Indexer-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:4:5","import-Logger-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:5:5","import-Shared-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:6:5","import-SourceGraph-Sources\/ProjectDrivers\/XcodeProjectDriver.swift:7:5","import-TestShared-Tests\/PeripheryTests\/ObjcAccessibleRetentionTest.swift:2:1","import-TestShared-Tests\/PeripheryTests\/ObjcAnnotatedRetentionTest.swift:2:1","s:11SourceGraph15ProjectFileKindO10extensionsSaySSGvp","s:13ConfigurationAAC20_retainFilesMatchers33_99B696DD1FA930EA831ABFF16BC88E61LLSay15FilenameMatcherAEVGSgvp","s:13ConfigurationAAC21_indexExcludeMatchers33_99B696DD1FA930EA831ABFF16BC88E61LLSay15FilenameMatcherAEVGSgvp","s:6Shared14SetupSelectionO","s:6Shared17SetupGuideHelpersC6select8multipleAA0B9SelectionOSaySSG_tF","s:8Frontend13UpdateCheckerC13latestVersion33_996BB8CE205CF54754BD877559C8CCFELLSSSgvp","s:8Frontend13UpdateCheckerC5error33_996BB8CE205CF54754BD877559C8CCFELLs5Error_pSgvp","s:SS10ExtensionsE17withEscapedQuotesSSvp","s:SS10ExtensionsE4djb2Sivp","s:SS10ExtensionsE7djb2HexSSvp"]}}

baselines/macos-swift-6.1.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"v1":{"usrs":["s:13ConfigurationAAC20_retainFilesMatchers33_99B696DD1FA930EA831ABFF16BC88E61LLSay15FilenameMatcherAEVGSgvp","s:13ConfigurationAAC21_indexExcludeMatchers33_99B696DD1FA930EA831ABFF16BC88E61LLSay15FilenameMatcherAEVGSgvp","s:8Frontend13UpdateCheckerC13latestVersion33_996BB8CE205CF54754BD877559C8CCFELLSSSgvp","s:8Frontend13UpdateCheckerC5error33_996BB8CE205CF54754BD877559C8CCFELLs5Error_pSgvp"]}}

0 commit comments

Comments
 (0)