Skip to content

Commit 899ca90

Browse files
authored
Revert "Package collections: improve search performance (#3108)"
This reverts commit 1eb1342.
1 parent 61ec61c commit 899ca90

File tree

8 files changed

+89
-799
lines changed

8 files changed

+89
-799
lines changed

Sources/Basics/ConcurrencyHelpers.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public final class ThreadSafeArrayStore<Value> {
126126
}
127127
}
128128

129-
/// Thread-safe value boxing structure
129+
/// Thread-safe value boxing structure
130130
public final class ThreadSafeBox<Value> {
131131
private var underlying: Value?
132132
private let lock = Lock()

Sources/PackageCollections/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ add_library(PackageCollections
2323
Storage/PackageCollectionsSourcesStorage.swift
2424
Storage/PackageCollectionsStorage.swift
2525
Storage/SQLitePackageCollectionsStorage.swift
26-
Storage/Trie.swift
2726
API.swift
2827
PackageCollections.swift
2928
PackageCollections+Configuration.swift

Sources/PackageCollections/Model/TargetListResult.swift

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,11 @@ extension PackageCollectionsModel.TargetListResult {
4848

4949
extension PackageCollectionsModel.TargetListResult {
5050
/// Represents a package version
51-
public struct PackageVersion: Hashable, Encodable, Comparable {
51+
public struct PackageVersion: Hashable, Encodable {
5252
/// The version
5353
public let version: TSCUtility.Version
5454

5555
/// Package name
5656
public let packageName: String
57-
58-
public static func < (lhs: PackageVersion, rhs: PackageVersion) -> Bool {
59-
lhs.version < rhs.version
60-
}
6157
}
6258
}

Sources/PackageCollections/Storage/PackageCollectionsStorage.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public protocol PackageCollectionsStorage {
5353
query: String,
5454
callback: @escaping (Result<PackageCollectionsModel.PackageSearchResult, Error>) -> Void)
5555

56-
/// Returns `PackageSearchResult.Item` for the given package identity.
56+
/// Returns optional `PackageSearchResult.Item` for the given package identity.
5757
///
5858
/// - Parameters:
5959
/// - identifier: The package identifier

Sources/PackageCollections/Storage/SQLitePackageCollectionsStorage.swift

Lines changed: 86 additions & 311 deletions
Large diffs are not rendered by default.

Sources/PackageCollections/Storage/Trie.swift

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

Tests/PackageCollectionsTests/PackageCollectionsStorageTests.swift

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -196,37 +196,4 @@ class PackageCollectionsStorageTests: XCTestCase {
196196
_ = try tsc_await { callback in storage.put(collection: mockCollections.last!, callback: callback) }
197197
XCTAssertEqual(list.count, mockCollections.count)
198198
}
199-
200-
func testPopulateTargetTrie() throws {
201-
try testWithTemporaryDirectory { tmpPath in
202-
let path = tmpPath.appending(component: "test.db")
203-
let storage = SQLitePackageCollectionsStorage(path: path)
204-
defer { XCTAssertNoThrow(try storage.close()) }
205-
206-
let mockCollections = makeMockCollections(count: 3)
207-
try mockCollections.forEach { collection in
208-
_ = try tsc_await { callback in storage.put(collection: collection, callback: callback) }
209-
}
210-
211-
let targetName = mockCollections.last!.packages.last!.versions.last!.targets.last!.name
212-
213-
do {
214-
let searchResult = try tsc_await { callback in storage.searchTargets(query: targetName, type: .exactMatch, callback: callback) }
215-
XCTAssert(searchResult.items.count > 0, "should get results")
216-
}
217-
218-
// Create another instance, which should read existing data and populate target trie with it.
219-
// Since we are not calling `storage2.put`, there is no other way for target trie to get populated.
220-
let storage2 = SQLitePackageCollectionsStorage(path: path)
221-
defer { XCTAssertNoThrow(try storage2.close()) }
222-
223-
// populateTargetTrie is called in `.init`; call it again explicitly so we know when it's finished
224-
try tsc_await { callback in storage2.populateTargetTrie(callback: callback) }
225-
226-
do {
227-
let searchResult = try tsc_await { callback in storage2.searchTargets(query: targetName, type: .exactMatch, callback: callback) }
228-
XCTAssert(searchResult.items.count > 0, "should get results")
229-
}
230-
}
231-
}
232199
}

0 commit comments

Comments
 (0)