Skip to content

Commit 5f99c14

Browse files
committed
cleanup
1 parent 5a8c160 commit 5f99c14

File tree

6 files changed

+91
-95
lines changed

6 files changed

+91
-95
lines changed

Sources/SPMTestSupport/MockWorkspace.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -823,7 +823,7 @@ extension PackageReference.Kind {
823823

824824
extension Workspace.ManagedDependency {
825825
fileprivate var checkoutState: CheckoutState? {
826-
if case .sourceControl(let checkoutState) = self.state {
826+
if case .sourceControlCheckout(let checkoutState) = self.state {
827827
return checkoutState
828828
}
829829
return .none

Sources/Workspace/ManagedDependency.swift

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ extension Workspace {
2727
case fileSystem(AbsolutePath)
2828

2929
/// The dependency is a managed source control checkout.
30-
case sourceControl(CheckoutState)
30+
case sourceControlCheckout(CheckoutState)
3131

3232
/// The dependency is downloaded from a registry.
33-
case registry(version: Version)
33+
case registryDownload(version: Version)
3434

3535
/// The dependency is in edited state.
3636
///
@@ -43,10 +43,10 @@ extension Workspace {
4343
switch self {
4444
case .fileSystem(let path):
4545
return "fileSystem (\(path))"
46-
case .sourceControl(let checkoutState):
47-
return "sourceControl (\(checkoutState))"
48-
case .registry(let version):
49-
return "registry (\(version))"
46+
case .sourceControlCheckout(let checkoutState):
47+
return "sourceControlCheckout (\(checkoutState))"
48+
case .registryDownload(let version):
49+
return "registryDownload (\(version))"
5050
case .edited:
5151
return "edited"
5252
}
@@ -78,8 +78,15 @@ extension Workspace {
7878
/// - Parameters:
7979
/// - subpath: The subpath inside the editable directory.
8080
/// - unmanagedPath: A custom absolute path instead of the subpath.
81-
public func edited(subpath: RelativePath, unmanagedPath: AbsolutePath?) -> ManagedDependency {
82-
return .edited(packageRef: self.packageRef, subpath: subpath, basedOn: self, unmanagedPath: unmanagedPath)
81+
public func edited(subpath: RelativePath, unmanagedPath: AbsolutePath?) throws -> ManagedDependency {
82+
guard case .sourceControlCheckout = self.state else {
83+
throw InternalError("invalid depenedency state: \(self.state)")
84+
}
85+
return ManagedDependency(
86+
packageRef: self.packageRef,
87+
state: .edited(basedOn: self, unmanagedPath: unmanagedPath),
88+
subpath: subpath
89+
)
8390
}
8491

8592
/// Create a dependency present locally on the filesystem.
@@ -100,7 +107,7 @@ extension Workspace {
100107
}
101108

102109
/// Create a source control dependency checked out
103-
public static func sourceControl(
110+
public static func sourceControlCheckout(
104111
packageRef: PackageReference,
105112
state: CheckoutState,
106113
subpath: RelativePath
@@ -109,16 +116,16 @@ extension Workspace {
109116
case .localSourceControl, .remoteSourceControl:
110117
return ManagedDependency(
111118
packageRef: packageRef,
112-
state: .sourceControl(state),
119+
state: .sourceControlCheckout(state),
113120
subpath: subpath
114121
)
115122
default:
116123
throw InternalError("invalid package type: \(packageRef.kind)")
117124
}
118125
}
119126

120-
/// Create a registry dependency downloaded
121-
public static func registry(
127+
/// Create a registry dependency downloaded
128+
public static func registryDownload(
122129
packageRef: PackageReference,
123130
version: Version,
124131
subpath: RelativePath
@@ -128,7 +135,7 @@ extension Workspace {
128135
}
129136
return ManagedDependency(
130137
packageRef: packageRef,
131-
state: .registry(version: version),
138+
state: .registryDownload(version: version),
132139
subpath: subpath
133140
)
134141
}
@@ -166,7 +173,7 @@ extension Workspace {
166173
init(_ dependencies: [ManagedDependency] = []) {
167174
self.dependencies = Dictionary(uniqueKeysWithValues: dependencies.map{ ($0.packageRef.identity, $0) })
168175
}
169-
176+
170177
public subscript(identity: PackageIdentity) -> ManagedDependency? {
171178
return self.dependencies[identity]
172179
}

Sources/Workspace/ResolverPrecomputationProvider.swift

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ private struct LocalPackageContainer: PackageContainer {
9797
let currentToolsVersion: ToolsVersion
9898

9999
func versionsAscending() throws -> [Version] {
100-
if case .version(let version, revision: _) = dependency?.state.checkout {
100+
if case .sourceControlCheckout(.version(let version, revision: _)) = dependency?.state {
101101
return [version]
102102
} else {
103103
return []
@@ -123,7 +123,7 @@ private struct LocalPackageContainer: PackageContainer {
123123

124124
func getDependencies(at version: Version, productFilter: ProductFilter) throws -> [PackageContainerConstraint] {
125125
// Because of the implementation of `reversedVersions`, we should only get the exact same version.
126-
guard case .sourceControl(.version(version, revision: _)) = dependency?.state else {
126+
guard case .sourceControlCheckout(.version(version, revision: _)) = dependency?.state else {
127127
throw InternalError("expected version checkout state, but state was \(String(describing: dependency?.state))")
128128
}
129129
return try manifest.dependencyConstraints(productFilter: productFilter)
@@ -133,7 +133,7 @@ private struct LocalPackageContainer: PackageContainer {
133133
// Return the dependencies if the checkout state matches the revision.
134134
let revision = Revision(identifier: revisionString)
135135
switch dependency?.state {
136-
case .sourceControl(.branch(_, revision: revision)), .sourceControl(.revision(revision)):
136+
case .sourceControlCheckout(.branch(_, revision: revision)), .sourceControlCheckout(.revision(revision)):
137137
return try manifest.dependencyConstraints(productFilter: productFilter)
138138
default:
139139
throw ResolverPrecomputationError.differentRequirement(
@@ -146,7 +146,7 @@ private struct LocalPackageContainer: PackageContainer {
146146

147147
func getUnversionedDependencies(productFilter: ProductFilter) throws -> [PackageContainerConstraint] {
148148
// Throw an error when the dependency is not unversioned to fail resolution.
149-
guard dependency?.isSourceControl != true else {
149+
guard dependency?.isSourceControlCheckout != true else {
150150
throw ResolverPrecomputationError.differentRequirement(
151151
package: package,
152152
state: dependency?.state,
@@ -168,19 +168,8 @@ private struct LocalPackageContainer: PackageContainer {
168168
}
169169

170170
private extension Workspace.ManagedDependency {
171-
var isSourceControl: Bool {
172-
if case .sourceControl = self.state { return true }
171+
var isSourceControlCheckout: Bool {
172+
if case .sourceControlCheckout = self.state { return true }
173173
return false
174174
}
175175
}
176-
177-
private extension Workspace.ManagedDependency.State {
178-
var checkout: CheckoutState? {
179-
switch self {
180-
case .sourceControl(let state):
181-
return state
182-
default:
183-
return nil
184-
}
185-
}
186-
}

0 commit comments

Comments
 (0)