Skip to content

Commit dfbf133

Browse files
committed
more feedback
1 parent c4c51ab commit dfbf133

File tree

1 file changed

+5
-17
lines changed

1 file changed

+5
-17
lines changed

Sources/Commands/SwiftPackageCollectionsTool.swift

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import TSCUtility
1818
private enum CollectionsError: Swift.Error {
1919
case invalidArgument(String)
2020
case invalidVersionString(String)
21-
case noCollectionMatchingURL(String)
2221
}
2322

2423
extension CollectionsError: CustomStringConvertible {
@@ -28,8 +27,6 @@ extension CollectionsError: CustomStringConvertible {
2827
return "invalid argument '\(argumentName)'"
2928
case .invalidVersionString(let versionString):
3029
return "invalid version string '\(versionString)'"
31-
case .noCollectionMatchingURL(let url):
32-
return "no collection matching URL '\(url)'"
3330
}
3431
}
3532
}
@@ -169,12 +166,8 @@ public struct SwiftPackageCollectionsTool: ParsableCommand {
169166
throw CollectionsError.invalidArgument("collectionUrl")
170167
}
171168

172-
let collections = try tsc_await { self.collections.listCollections(identifiers: nil, in: profileOptions.usedProfile, callback: $0) }
173169
let source = PackageCollectionsModel.CollectionSource(type: .feed, url: collectionUrl)
174-
175-
guard let collection = collections.first(where: { $0.source == source }) else {
176-
throw CollectionsError.noCollectionMatchingURL(collectionUrl.absoluteString)
177-
}
170+
let collection = try tsc_await { self.collections.getCollection(source, callback: $0) }
178171

179172
_ = try tsc_await { self.collections.removeCollection(source, from: profileOptions.usedProfile, callback: $0) }
180173
print("Removed \"\(collection.name)\" from your package collections.")
@@ -195,12 +188,8 @@ public struct SwiftPackageCollectionsTool: ParsableCommand {
195188
throw CollectionsError.invalidArgument("collectionUrl")
196189
}
197190

198-
let collections = try tsc_await { self.collections.listCollections(identifiers: nil, in: profileOptions.usedProfile, callback: $0) }
199191
let source = PackageCollectionsModel.CollectionSource(type: .feed, url: collectionUrl)
200-
201-
guard let collection = collections.first(where: { $0.source == source }) else {
202-
throw CollectionsError.noCollectionMatchingURL(collectionUrl.absoluteString)
203-
}
192+
let collection = try tsc_await { self.collections.getCollection(source, callback: $0) }
204193

205194
let description = optionalRow("Description", collection.description)
206195
let keywords = optionalRow("Keywords", collection.keywords?.joined(separator: ", "))
@@ -251,10 +240,9 @@ public struct SwiftPackageCollectionsTool: ParsableCommand {
251240
case .module:
252241
let results = try tsc_await { collections.findTargets(searchQuery, searchType: .exactMatch, collections: nil, profile: profileOptions.usedProfile, callback: $0) }
253242

254-
results.items.forEach {
255-
$0.packages.forEach {
256-
print("\($0.repository.url): \($0.description ?? "")")
257-
}
243+
let packages = Set(results.items.flatMap { $0.packages })
244+
packages.forEach {
245+
print("\($0.repository.url): \($0.description ?? "")")
258246
}
259247
}
260248
}

0 commit comments

Comments
 (0)