Skip to content

Commit b44a72f

Browse files
committed
[SwiftRefactor] PackageManifest: Replace SemanticVersion with a String
This removes final stub type that could simply be a string and instead of hard-coding a version of swift-syntax library for new dependencies, let's use a placeholder.
1 parent cd7758e commit b44a72f

File tree

5 files changed

+19
-60
lines changed

5 files changed

+19
-60
lines changed

Sources/SwiftRefactor/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ add_swift_syntax_library(SwiftRefactor
3535
PackageManifest/PackageEdit.swift
3636
PackageManifest/PackageTarget.swift
3737
PackageManifest/ProductDescription.swift
38-
PackageManifest/SemanticVersion.swift
3938
PackageManifest/StringUtils.swift
4039
PackageManifest/SyntaxEditUtils.swift
4140
)

Sources/SwiftRefactor/PackageManifest/AddPackageTarget.swift

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public struct AddPackageTarget: ManifestEditRefactoringProvider {
5050
case swiftTesting = "swift-testing"
5151

5252
/// The default testing library to use.
53-
public static let `default`: TestHarness = .xctest
53+
public static let `default`: TestHarness = .swiftTesting
5454
}
5555

5656
/// Additional configuration information to guide the package editing
@@ -59,17 +59,10 @@ public struct AddPackageTarget: ManifestEditRefactoringProvider {
5959
/// The test harness to use.
6060
public var testHarness: TestHarness
6161

62-
public let swiftSyntaxVersion: SemanticVersion
63-
public let swiftTestingVersion: SemanticVersion
64-
6562
public init(
66-
testHarness: TestHarness = .default,
67-
swiftSyntaxVersion: SemanticVersion = SemanticVersion("600.0.0-latest"),
68-
swiftTestingVersion: SemanticVersion = SemanticVersion("0.8.0")
63+
testHarness: TestHarness = .default
6964
) {
7065
self.testHarness = testHarness
71-
self.swiftSyntaxVersion = swiftSyntaxVersion
72-
self.swiftTestingVersion = swiftTestingVersion
7366
}
7467
}
7568

@@ -148,9 +141,7 @@ public struct AddPackageTarget: ManifestEditRefactoringProvider {
148141
newPackageCall =
149142
try AddPackageDependency
150143
.addPackageDependencyLocal(
151-
.swiftSyntax(
152-
version: configuration.swiftSyntaxVersion
153-
),
144+
.swiftSyntax(from: "<#version#>"),
154145
to: newPackageCall
155146
)
156147

@@ -357,10 +348,8 @@ fileprivate extension PackageDependency {
357348
"https://github.com/swiftlang/swift-syntax.git"
358349
}
359350

360-
/// Package dependency on the swift-syntax package.
361-
static func swiftSyntax(
362-
version: SemanticVersion
363-
) -> PackageDependency {
351+
/// Package dependency on the swift-syntax package starting from a partial version.
352+
static func swiftSyntax(from version: String) -> PackageDependency {
364353
return .sourceControl(
365354
.init(
366355
identity: "swift-syntax",

Sources/SwiftRefactor/PackageManifest/PackageDependency.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ public enum PackageDependency: Sendable {
3939
}
4040

4141
public enum Requirement: Sendable {
42-
case exact(SemanticVersion)
43-
case rangeFrom(SemanticVersion)
44-
case range(lowerBound: SemanticVersion, upperBound: SemanticVersion)
42+
case exact(String)
43+
case rangeFrom(String)
44+
case range(lowerBound: String, upperBound: String)
4545
case revision(String)
4646
case branch(String)
4747
}
@@ -58,9 +58,9 @@ public enum PackageDependency: Sendable {
5858

5959
/// The dependency requirement.
6060
public enum Requirement: Sendable {
61-
case exact(SemanticVersion)
62-
case rangeFrom(SemanticVersion)
63-
case range(lowerBound: SemanticVersion, upperBound: SemanticVersion)
61+
case exact(String)
62+
case rangeFrom(String)
63+
case range(lowerBound: String, upperBound: String)
6464
}
6565
}
6666
}

Sources/SwiftRefactor/PackageManifest/SemanticVersion.swift

Lines changed: 0 additions & 29 deletions
This file was deleted.

Tests/SwiftRefactorTest/ManifestEditTests.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ final class ManifestEditTests: XCTestCase {
9090
.init(
9191
identity: "swift-system",
9292
location: .remote(Self.swiftSystemURL),
93-
requirement: .exact(SemanticVersion("510.0.0"))
93+
requirement: .exact("510.0.0")
9494
)
9595
)
9696
)
@@ -122,7 +122,7 @@ final class ManifestEditTests: XCTestCase {
122122
.init(
123123
identity: "swift-system",
124124
location: .remote(Self.swiftSystemURL),
125-
requirement: .exact(SemanticVersion("510.0.0"))
125+
requirement: .exact("510.0.0")
126126
)
127127
)
128128
)
@@ -156,7 +156,7 @@ final class ManifestEditTests: XCTestCase {
156156
.init(
157157
identity: "swift-system",
158158
location: .remote(Self.swiftSystemURL),
159-
requirement: .exact(SemanticVersion("510.0.0"))
159+
requirement: .exact("510.0.0")
160160
)
161161
)
162162
)
@@ -190,7 +190,7 @@ final class ManifestEditTests: XCTestCase {
190190
.init(
191191
identity: "swift-system",
192192
location: .remote(Self.swiftSystemURL),
193-
requirement: .rangeFrom(SemanticVersion("510.0.0"))
193+
requirement: .rangeFrom("510.0.0")
194194
)
195195
)
196196
)
@@ -219,7 +219,7 @@ final class ManifestEditTests: XCTestCase {
219219
.init(
220220
identity: "swift-system",
221221
location: .remote(Self.swiftSystemURL),
222-
requirement: .rangeFrom(SemanticVersion("510.0.0"))
222+
requirement: .rangeFrom("510.0.0")
223223
)
224224
)
225225
)
@@ -246,7 +246,7 @@ final class ManifestEditTests: XCTestCase {
246246
.init(
247247
identity: "swift-system",
248248
location: .remote(Self.swiftSystemURL),
249-
requirement: .rangeFrom(SemanticVersion("510.0.0"))
249+
requirement: .rangeFrom("510.0.0")
250250
)
251251
)
252252
)
@@ -277,7 +277,7 @@ final class ManifestEditTests: XCTestCase {
277277
.init(
278278
identity: "swift-system",
279279
location: .remote(Self.swiftSystemURL),
280-
requirement: .range(lowerBound: SemanticVersion("508.0.0"), upperBound: SemanticVersion("510.0.0"))
280+
requirement: .range(lowerBound: "508.0.0", upperBound: "510.0.0")
281281
)
282282
)
283283
)
@@ -562,7 +562,7 @@ final class ManifestEditTests: XCTestCase {
562562
let package = Package(
563563
name: "packages",
564564
dependencies: [
565-
.package(url: "https://github.com/swiftlang/swift-syntax.git", from: "600.0.0-latest"),
565+
.package(url: "https://github.com/swiftlang/swift-syntax.git", from: "<#version#>"),
566566
],
567567
targets: [
568568
.macro(

0 commit comments

Comments
 (0)