diff --git a/Package.resolved b/Package.resolved index 48fd79fbe..5f4fd7a4a 100644 --- a/Package.resolved +++ b/Package.resolved @@ -258,8 +258,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/SwiftPackageIndex/SPIManifest.git", "state" : { - "revision" : "7726c6e0b7ac997b0869f37fe864209988707bb5", - "version" : "1.7.0" + "revision" : "b4fa843a4f21a80ef8d58eca7daae39892b30a48", + "version" : "1.8.0" } }, { diff --git a/Sources/App/Core/SwiftVersion+Build.swift b/Sources/App/Core/SwiftVersion+Build.swift index 177e9c46b..d30c5ed14 100644 --- a/Sources/App/Core/SwiftVersion+Build.swift +++ b/Sources/App/Core/SwiftVersion+Build.swift @@ -18,27 +18,27 @@ extension SwiftVersion { // https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/1267#issuecomment-975379966 // Patch versions are irrelevant here but the underlying type requires one, so use 0 // in general. - static let v5_8: Self = .init(5, 8, 0) static let v5_9: Self = .init(5, 9, 0) static let v5_10: Self = .init(5, 10, 0) static let v6_0: Self = .init(6, 0, 0) + static let v6_1: Self = .init(6, 1, 0) /// Currently supported swift versions for building static var allActive: [Self] { - [.v5_8, .v5_9, .v5_10, .v6_0] + [.v5_9, .v5_10, .v6_0, .v6_1] } var xcodeVersion: String? { // NB: this is used for display purposes and not critical for compiler selection switch self { - case .v5_8: - return "Xcode 14.3" case .v5_9: return "Xcode 15.2" case .v5_10: return "Xcode 15.4" case .v6_0: return "Xcode 16.2" + case .v6_1: + return "Xcode 16.3" default: return nil } diff --git a/Sources/App/Models/Manifest.swift b/Sources/App/Models/Manifest.swift index 17b601f12..3ed93311f 100644 --- a/Sources/App/Models/Manifest.swift +++ b/Sources/App/Models/Manifest.swift @@ -39,6 +39,7 @@ struct Manifest: Decodable, Equatable { case android // from 5.2 case custom // from 5.6 case driverkit // from 5.5 + case freebsd // from 6.1 case ios case linux case maccatalyst // from 5.5 diff --git a/Sources/App/Models/Platform.swift b/Sources/App/Models/Platform.swift index 3f2e56cbc..affcf711f 100644 --- a/Sources/App/Models/Platform.swift +++ b/Sources/App/Models/Platform.swift @@ -21,6 +21,7 @@ struct Platform: Codable, Equatable { case android case custom case driverkit + case freebsd case ios case linux case maccatalyst @@ -62,6 +63,8 @@ extension Platform: CustomStringConvertible { return "Custom \(version)" case .driverkit: return "DriverKit \(version)" + case .freebsd: + return "FreeBSD \(version)" case .ios: return "iOS \(version)" case .linux: diff --git a/Tests/AppTests/API+PackageController+GetRoute+ModelTests.swift b/Tests/AppTests/API+PackageController+GetRoute+ModelTests.swift index 5b7082fbd..e9aaf25f6 100644 --- a/Tests/AppTests/API+PackageController+GetRoute+ModelTests.swift +++ b/Tests/AppTests/API+PackageController+GetRoute+ModelTests.swift @@ -484,25 +484,25 @@ extension AllTests.API_PackageController_GetRoute_ModelTests { do { let info = BuildInfo(stable: .some(.init(referenceName: "1.2.3", - results: Results(results: [.v5_8: .compatible, - .v5_9: .incompatible, - .v5_10: .unknown, - .v6_0: .compatible]))), + results: Results(results: [.v1: .compatible, + .v2: .incompatible, + .v3: .unknown, + .v4: .compatible]))), beta: nil, latest: nil) #expect(info?.compatibility == [.v1, .v4]) } do { let info = BuildInfo(stable: .some(.init(referenceName: "1.2.3", - results: Results(results: [.v5_8: .compatible, - .v5_9: .incompatible, - .v5_10: .unknown, - .v6_0: .compatible]))), + results: Results(results: [.v1: .compatible, + .v2: .incompatible, + .v3: .unknown, + .v4: .compatible]))), beta: .some(.init(referenceName: "1.2.3-b1", - results: Results(results: [.v5_8: .incompatible, - .v5_9: .incompatible, - .v5_10: .compatible, - .v6_0: .unknown]))), + results: Results(results: [.v1: .incompatible, + .v2: .incompatible, + .v3: .compatible, + .v4: .unknown]))), latest: nil) #expect(info?.compatibility == [.v1, .v3, .v4]) } @@ -545,18 +545,18 @@ extension AllTests.API_PackageController_GetRoute_ModelTests { @Test func groupBuildInfo() async throws { try await withSPIApp { app in - let result1: BuildResults = .init(results: [.v5_8: .compatible, - .v5_9: .compatible, - .v5_10: .compatible, - .v6_0: .compatible]) - let result2: BuildResults = .init(results: [.v5_8: .compatible, - .v5_9: .incompatible, - .v5_10: .incompatible, - .v6_0: .incompatible]) - let result3: BuildResults = .init(results: [.v5_8: .unknown, - .v5_9: .unknown, - .v5_10: .unknown, - .v6_0: .unknown]) + let result1: BuildResults = .init(results: [.v1: .compatible, + .v2: .compatible, + .v3: .compatible, + .v4: .compatible]) + let result2: BuildResults = .init(results: [.v1: .compatible, + .v2: .incompatible, + .v3: .incompatible, + .v4: .incompatible]) + let result3: BuildResults = .init(results: [.v1: .unknown, + .v2: .unknown, + .v3: .unknown, + .v4: .unknown]) do { // three distinct groups let buildInfo: BuildInfo = .init(stable: .init(referenceName: "1.2.3", results: result1), beta: .init(referenceName: "2.0.0-b1", results: result2), diff --git a/Tests/AppTests/API+PackageControllerTests.swift b/Tests/AppTests/API+PackageControllerTests.swift index bb47e19a7..be51ff9ae 100644 --- a/Tests/AppTests/API+PackageControllerTests.swift +++ b/Tests/AppTests/API+PackageControllerTests.swift @@ -343,9 +343,9 @@ extension AllTests.API_PackageControllerTests { #expect(platform.beta?.referenceName == "2.0.0-b1") let swiftVersion = try #require(res.swiftVersion) #expect(swiftVersion.latest?.referenceName == "main") - #expect(swiftVersion.latest?.results[.v5_10] == .compatible) - #expect(swiftVersion.latest?.results[.v5_9] == .incompatible) - #expect(swiftVersion.latest?.results[.v5_8] == .unknown) + #expect(swiftVersion.latest?.results[.v3] == .compatible) + #expect(swiftVersion.latest?.results[.v2] == .incompatible) + #expect(swiftVersion.latest?.results[.v1] == .unknown) #expect(swiftVersion.stable?.referenceName == "1.2.3") #expect(swiftVersion.beta?.referenceName == "2.0.0-b1") } diff --git a/Tests/AppTests/AlertingTests.swift b/Tests/AppTests/AlertingTests.swift index acf740ba8..88fc8400d 100644 --- a/Tests/AppTests/AlertingTests.swift +++ b/Tests/AppTests/AlertingTests.swift @@ -34,8 +34,8 @@ extension AllTests.AlertingTests { Alerting.BuildInfo.mock(swiftVersion: $0) } #expect(all.validateSwiftVersionsPresent() == .ok) - #expect(all.filter { $0.swiftVersion != .v1 }.validateSwiftVersionsPresent() == .failed(reasons: ["Missing Swift version: 5.8"])) - #expect(all.filter { $0.swiftVersion != .v1 && $0.swiftVersion != .v2 }.validateSwiftVersionsPresent() == .failed(reasons: ["Missing Swift version: 5.8", "Missing Swift version: 5.9"])) + #expect(all.filter { $0.swiftVersion != .v1 }.validateSwiftVersionsPresent() == .failed(reasons: ["Missing Swift version: 5.9"])) + #expect(all.filter { $0.swiftVersion != .v1 && $0.swiftVersion != .v2 }.validateSwiftVersionsPresent() == .failed(reasons: ["Missing Swift version: 5.9", "Missing Swift version: 5.10"])) } @Test func validatePlatformsSuccessful() throws { @@ -57,13 +57,13 @@ extension AllTests.AlertingTests { Alerting.BuildInfo.mock(swiftVersion: $0, status: .ok) } #expect(all.validateSwiftVersionsSuccessful() == .ok) - #expect(all.filter { $0.swiftVersion != .v1 }.validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.8"])) + #expect(all.filter { $0.swiftVersion != .v1 }.validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.9"])) #expect( Array(all.filter { $0.swiftVersion != .v1 }) .appending(.mock(swiftVersion: .v1, status: .failed)) - .validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.8"]) + .validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.9"]) ) - #expect(all.filter { $0.swiftVersion != .v1 && $0.swiftVersion != .v2 }.validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.8", "Swift version without successful builds: 5.9"])) + #expect(all.filter { $0.swiftVersion != .v1 && $0.swiftVersion != .v2 }.validateSwiftVersionsSuccessful() == .failed(reasons: ["Swift version without successful builds: 5.9", "Swift version without successful builds: 5.10"])) } @Test func validateRunnerIdsPresent() throws { diff --git a/Tests/AppTests/ApiTests.swift b/Tests/AppTests/ApiTests.swift index afc7f803d..3799bab3a 100644 --- a/Tests/AppTests/ApiTests.swift +++ b/Tests/AppTests/ApiTests.swift @@ -817,7 +817,7 @@ extension AllTests.ApiTests { let badge = try res.content.decode(Badge.self) #expect(badge.schemaVersion == 1) #expect(badge.label == "Swift") - #expect(badge.message == "5.9 | 5.8") + #expect(badge.message == "5.10 | 5.9") #expect(badge.isError == false) #expect(badge.color == "blue") #expect(badge.cacheSeconds == 6*3600) diff --git a/Tests/AppTests/BadgeTests.swift b/Tests/AppTests/BadgeTests.swift index c42882e8f..4a9de501a 100644 --- a/Tests/AppTests/BadgeTests.swift +++ b/Tests/AppTests/BadgeTests.swift @@ -20,7 +20,7 @@ import Testing extension AllTests.BadgeTests { @Test func badgeMessage_swiftVersions() throws { - #expect(Badge.badgeMessage(swiftVersions: [.v1, .v2, .v3, .v4]) == "6.0 | 5.10 | 5.9 | 5.8") + #expect(Badge.badgeMessage(swiftVersions: [.v1, .v2, .v3, .v4]) == "6.1 | 6.0 | 5.10 | 5.9") #expect(Badge.badgeMessage(swiftVersions: []) == nil) } diff --git a/Tests/AppTests/BuildIndexModelTests.swift b/Tests/AppTests/BuildIndexModelTests.swift index f069c6c49..47f0ec1d2 100644 --- a/Tests/AppTests/BuildIndexModelTests.swift +++ b/Tests/AppTests/BuildIndexModelTests.swift @@ -96,7 +96,7 @@ extension AllTests.BuildIndexModelTests { let matrix = model.buildMatrix // validate - #expect(matrix.values.keys.count == 27) + #expect(matrix.values.keys.count == 28) #expect( matrix.values[.init(swiftVersion: .v3, platform: .iOS)]?.map(\.column.label) == ["1.2.3", "2.0.0-b1", "main"] ) @@ -141,7 +141,7 @@ extension AllTests.BuildIndexModelTests { let matrix = model.buildMatrix // validate - #expect(matrix.values.keys.count == 27) + #expect(matrix.values.keys.count == 28) #expect( matrix.values[.init(swiftVersion: .v3, platform: .iOS)]?.map(\.column.label) == ["1.2.3", "main"] ) diff --git a/Tests/AppTests/BuildTriggerTests.swift b/Tests/AppTests/BuildTriggerTests.swift index a7e3e2f75..213983e04 100644 --- a/Tests/AppTests/BuildTriggerTests.swift +++ b/Tests/AppTests/BuildTriggerTests.swift @@ -266,9 +266,10 @@ extension AllTests.BuildTriggerTests { "\(v) could not be converted to a SPIManifest Swift version") } // Check the values specifically (which we can't easily do in the loop above) - #expect(BuildPair(.iOS, .v5_8).manifestSwiftVersion == .v5_8) #expect(BuildPair(.iOS, .v5_9).manifestSwiftVersion == .v5_9) #expect(BuildPair(.iOS, .v5_10).manifestSwiftVersion == .v5_10) + #expect(BuildPair(.iOS, .v6_0).manifestSwiftVersion == .v6_0) + #expect(BuildPair(.iOS, .v6_1).manifestSwiftVersion == .v6_1) } @Test func SPIManifest_docPairs() throws { @@ -279,7 +280,7 @@ extension AllTests.BuildTriggerTests { configs: - documentation_targets: [t0] """) - #expect(manifest.docPairs == [.init(.macosSpm, .v6_0)]) + #expect(manifest.docPairs == [.init(.macosSpm, .v6_1)]) } do { let manifest = try SPIManifest.Manifest(yml: """ @@ -288,9 +289,9 @@ extension AllTests.BuildTriggerTests { configs: - documentation_targets: [t0] platform: ios - swift_version: 5.8 + swift_version: 5.9 """) - #expect(manifest.docPairs == [.init(.iOS, .v5_8)]) + #expect(manifest.docPairs == [.init(.iOS, .v5_9)]) } do { let manifest = try SPIManifest.Manifest(yml: """ @@ -300,12 +301,12 @@ extension AllTests.BuildTriggerTests { configs: - documentation_targets: [t0] platform: ios - swift_version: 5.8 + swift_version: 5.9 - documentation_targets: [t0] platform: macos-spm - swift_version: 5.9 + swift_version: 5.10 """) - #expect(manifest.docPairs == [.init(.iOS, .v5_8), .init(.macosSpm, .v5_9)]) + #expect(manifest.docPairs == [.init(.iOS, .v5_9), .init(.macosSpm, .v5_10)]) } } @@ -347,7 +348,7 @@ extension AllTests.BuildTriggerTests { let expectedPairs = Set(SwiftVersion.allActive.map { BuildPair(.macosSpm, $0) }) #expect(res == [.init(versionId: versionId, buildPairs: expectedPairs, - docPairs: .init([.init(.macosSpm, .v6_0)]), + docPairs: .init([.init(.macosSpm, .v6_1)]), reference: .tag(1, 2, 3))!]) } } @@ -388,7 +389,7 @@ extension AllTests.BuildTriggerTests { #expect(queries.count == 1) #expect(queries.value.map { $0.variables["VERSION_ID"] } == [versionId.uuidString]) #expect(queries.value.map { $0.variables["BUILD_PLATFORM"] } == ["ios"]) - #expect(queries.value.map { $0.variables["SWIFT_VERSION"] } == ["5.8"]) + #expect(queries.value.map { $0.variables["SWIFT_VERSION"] } == ["5.9"]) // ensure the Build stubs is created to prevent re-selection let v = try await Version.find(versionId, on: app.db) @@ -435,8 +436,8 @@ extension AllTests.BuildTriggerTests { // validate // ensure Gitlab requests go out - #expect(queries.count == 27) - #expect(queries.value.map { $0.variables["VERSION_ID"] } == Array(repeating: versionId.uuidString, count: 27)) + #expect(queries.count == 28) + #expect(queries.value.map { $0.variables["VERSION_ID"] } == Array(repeating: versionId.uuidString, count: 28)) let buildPlatforms = queries.value.compactMap { $0.variables["BUILD_PLATFORM"] } #expect(Dictionary(grouping: buildPlatforms, by: { $0 }) .mapValues(\.count) == ["ios": 4, @@ -444,11 +445,11 @@ extension AllTests.BuildTriggerTests { "macos-xcodebuild": 4, "linux": 4, "watchos": 4, - "visionos": 3, + "visionos": 4, "tvos": 4]) let swiftVersions = queries.value.compactMap { $0.variables["SWIFT_VERSION"] } #expect(Dictionary(grouping: swiftVersions, by: { $0 }) - .mapValues(\.count) == [SwiftVersion.v1.description(droppingZeroes: .patch): 6, + .mapValues(\.count) == [SwiftVersion.v1.description(droppingZeroes: .patch): 7, SwiftVersion.v2.description(droppingZeroes: .patch): 7, SwiftVersion.v3.description(droppingZeroes: .patch): 7, SwiftVersion.v4.description(droppingZeroes: .patch): 7]) @@ -456,7 +457,7 @@ extension AllTests.BuildTriggerTests { // ensure the Build stubs are created to prevent re-selection let v = try await Version.find(versionId, on: app.db) try await v?.$builds.load(on: app.db) - #expect(v?.builds.count == 27) + #expect(v?.builds.count == 28) // ensure re-selection is empty let candidates = try await fetchBuildCandidates(app.db) @@ -594,11 +595,11 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false)) // validate - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) // ensure builds are now in progress let v = try await Version.find(versionId, on: app.db) try await v?.$builds.load(on: app.db) - #expect(v?.builds.count == 27) + #expect(v?.builds.count == 28) } } @@ -619,11 +620,11 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: true)) // validate - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) // ensure builds are now in progress let v = try await Version.find(versionId, on: app.db) try await v?.$builds.load(on: app.db) - #expect(v?.builds.count == 27) + #expect(v?.builds.count == 28) } } } @@ -668,7 +669,7 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .limit(4)) // validate - only the first batch must be allowed to trigger - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) } } } @@ -880,7 +881,7 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false)) // validate - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) } } } @@ -942,7 +943,7 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false)) // validate - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) } } } @@ -983,7 +984,7 @@ extension AllTests.BuildTriggerTests { try await triggerBuilds(on: app.db, mode: .packageId(.id0, force: false)) // validate - #expect(triggerCount.value == 27) + #expect(triggerCount.value == 28) } } } @@ -1227,37 +1228,38 @@ extension AllTests.BuildTriggerTests { @Test func BuildPair_all() throws { // Sanity checks for critical counts used in canadidate selection - #expect(BuildPair.all.count == 27) + #expect(BuildPair.all.count == 28) #expect(BuildPair.all == [ - .init(.iOS, .v5_8), - .init(.iOS, .v5_9), - .init(.iOS, .v5_10), - .init(.iOS, .v6_0), - .init(.macosSpm, .v5_8), - .init(.macosSpm, .v5_9), - .init(.macosSpm, .v5_10), - .init(.macosSpm, .v6_0), - .init(.macosXcodebuild, .v5_8), - .init(.macosXcodebuild, .v5_9), - .init(.macosXcodebuild, .v5_10), - .init(.macosXcodebuild, .v6_0), - .init(.visionOS, .v5_9), - .init(.visionOS, .v5_10), - .init(.visionOS, .v6_0), - .init(.tvOS, .v5_8), - .init(.tvOS, .v5_9), - .init(.tvOS, .v5_10), - .init(.tvOS, .v6_0), - .init(.watchOS, .v5_8), - .init(.watchOS, .v5_9), - .init(.watchOS, .v5_10), - .init(.watchOS, .v6_0), - .init(.linux, .v5_8), - .init(.linux, .v5_9), - .init(.linux, .v5_10), - .init(.linux, .v6_0), + .init(.iOS, .v1), + .init(.iOS, .v2), + .init(.iOS, .v3), + .init(.iOS, .v4), + .init(.macosSpm, .v1), + .init(.macosSpm, .v2), + .init(.macosSpm, .v3), + .init(.macosSpm, .v4), + .init(.macosXcodebuild, .v1), + .init(.macosXcodebuild, .v2), + .init(.macosXcodebuild, .v3), + .init(.macosXcodebuild, .v4), + .init(.visionOS, .v1), + .init(.visionOS, .v2), + .init(.visionOS, .v3), + .init(.visionOS, .v4), + .init(.tvOS, .v1), + .init(.tvOS, .v2), + .init(.tvOS, .v3), + .init(.tvOS, .v4), + .init(.watchOS, .v1), + .init(.watchOS, .v2), + .init(.watchOS, .v3), + .init(.watchOS, .v4), + .init(.linux, .v1), + .init(.linux, .v2), + .init(.linux, .v3), + .init(.linux, .v4), ]) - #expect(BuildPair.allExceptLatestSwiftVersion.count == 20) + #expect(BuildPair.allExceptLatestSwiftVersion.count == 21) } @Test func BuildPair_Equatable() throws { @@ -1302,7 +1304,7 @@ extension AllTests.BuildTriggerTests { let res = try await findMissingBuilds(app.db, packageId: pkgId) #expect(res.count == 1) let triggerInfo = try #require(res.first) - #expect(triggerInfo.buildPairs.count == 26) + #expect(triggerInfo.buildPairs.count == 27) #expect(!triggerInfo.buildPairs.contains(.init(.iOS, .v1))) } } diff --git a/Tests/AppTests/GitlabBuilderTests.swift b/Tests/AppTests/GitlabBuilderTests.swift index 6f4e76615..5bf7b9166 100644 --- a/Tests/AppTests/GitlabBuilderTests.swift +++ b/Tests/AppTests/GitlabBuilderTests.swift @@ -22,10 +22,10 @@ import Vapor extension AllTests.GitlabBuilderTests { @Test func SwiftVersion_rendering() throws { - #expect("\(SwiftVersion.v4)" == "6.0.0") - #expect(SwiftVersion.v4.description(droppingZeroes: .none) == "6.0.0") - #expect(SwiftVersion.v4.description(droppingZeroes: .patch) == "6.0") - #expect(SwiftVersion.v4.description(droppingZeroes: .all) == "6") + #expect("\(SwiftVersion(6, 0, 0))" == "6.0.0") + #expect(SwiftVersion(6, 0, 0).description(droppingZeroes: .none) == "6.0.0") + #expect(SwiftVersion(6, 0, 0).description(droppingZeroes: .patch) == "6.0") + #expect(SwiftVersion(6, 0, 0).description(droppingZeroes: .all) == "6") } @Test func variables_encoding() async throws { diff --git a/Tests/AppTests/Helpers/SwiftVersion+ext.swift b/Tests/AppTests/Helpers/SwiftVersion+ext.swift index fbdf09706..7ecbb9ba2 100644 --- a/Tests/AppTests/Helpers/SwiftVersion+ext.swift +++ b/Tests/AppTests/Helpers/SwiftVersion+ext.swift @@ -71,10 +71,10 @@ extension SwiftVersion { /// ``` /// /// And then all that remains is to adjust the mapping below whenever we change the range of Swift versions. - static var v1: Self { .v5_8 } - static var v2: Self { .v5_9 } - static var v3: Self { .v5_10 } - static var v4: Self { .v6_0 } + static var v1: Self { .v5_9 } + static var v2: Self { .v5_10 } + static var v3: Self { .v6_0 } + static var v4: Self { .v6_1 } func incrementingPatchVersion(by value: Int = 1) -> Self { .init(major, minor, patch + value) diff --git a/Tests/AppTests/Mocks/API.PackageController.GetRoute.Model+mock.swift b/Tests/AppTests/Mocks/API.PackageController.GetRoute.Model+mock.swift index 287017e42..45761b766 100644 --- a/Tests/AppTests/Mocks/API.PackageController.GetRoute.Model+mock.swift +++ b/Tests/AppTests/Mocks/API.PackageController.GetRoute.Model+mock.swift @@ -42,22 +42,22 @@ extension API.PackageController.GetRoute.Model { swiftVersionBuildInfo: .init( stable: NamedBuildResults( referenceName: "5.2.3", - results: .init(results: [.v5_8: .incompatible, - .v5_9: .incompatible, - .v5_10: .unknown, - .v6_0: .compatible])), + results: .init(results: [.v1: .incompatible, + .v2: .incompatible, + .v3: .unknown, + .v4: .compatible])), beta: NamedBuildResults( referenceName: "6.0.0-b1", - results: .init(results: [.v5_8: .incompatible, - .v5_9: .compatible, - .v5_10: .compatible, - .v6_0: .compatible])), + results: .init(results: [.v1: .incompatible, + .v2: .compatible, + .v3: .compatible, + .v4: .compatible])), latest: NamedBuildResults( referenceName: "main", - results: .init(results: [.v5_8: .incompatible, - .v5_9: .incompatible, - .v5_10: .unknown, - .v6_0: .compatible]))), + results: .init(results: [.v1: .incompatible, + .v2: .incompatible, + .v3: .unknown, + .v4: .compatible]))), platformBuildInfo: .init( stable: NamedBuildResults( referenceName: "5.2.3", diff --git a/Tests/AppTests/PackageCollectionTests.swift b/Tests/AppTests/PackageCollectionTests.swift index 7e02d792d..7c1a4479f 100644 --- a/Tests/AppTests/PackageCollectionTests.swift +++ b/Tests/AppTests/PackageCollectionTests.swift @@ -263,8 +263,8 @@ extension AllTests.PackageCollectionTests { #expect(res.version == "1.2.3") #expect(res.summary == "Bar") #expect(res.verifiedCompatibility == [ - .init(platform: .init(name: "ios"), swiftVersion: .init("5.8")), - .init(platform: .init(name: "macos"), swiftVersion: .init("5.9")), + .init(platform: .init(name: "ios"), swiftVersion: .init("5.9")), + .init(platform: .init(name: "macos"), swiftVersion: .init("5.10")), ]) #expect(res.license == .init(name: "MIT", url: URL(string: "https://foo/mit")!)) #expect(res.createdAt == Date(timeIntervalSince1970: 0)) diff --git a/Tests/AppTests/WebpageSnapshotTests.swift b/Tests/AppTests/WebpageSnapshotTests.swift index 1d7366574..a7f4f4c01 100644 --- a/Tests/AppTests/WebpageSnapshotTests.swift +++ b/Tests/AppTests/WebpageSnapshotTests.swift @@ -217,10 +217,10 @@ extension AllTests.WebpageSnapshotTests { // Test display when all three significant version collapse to a single row var model = API.PackageController.GetRoute.Model.mock do { - let compatible = CompatibilityMatrix.SwiftVersionCompatibility(results: [.v5_8: .compatible, - .v5_9: .compatible, - .v5_10: .compatible, - .v6_0: .compatible]) + let compatible = CompatibilityMatrix.SwiftVersionCompatibility(results: [.v1: .compatible, + .v2: .compatible, + .v3: .compatible, + .v4: .compatible]) model.swiftVersionBuildInfo = .init( stable: .init(referenceName: "5.2.5", results: compatible), beta: .init(referenceName: "6.0.0-b1", results: compatible), diff --git a/Tests/AppTests/__Snapshots__/WebpageSnapshotTests/BuildIndex_document.1.html b/Tests/AppTests/__Snapshots__/WebpageSnapshotTests/BuildIndex_document.1.html index 4977ae260..e9d778f1a 100644 --- a/Tests/AppTests/__Snapshots__/WebpageSnapshotTests/BuildIndex_document.1.html +++ b/Tests/AppTests/__Snapshots__/WebpageSnapshotTests/BuildIndex_document.1.html @@ -104,7 +104,7 @@
71b4d8
), with
- Swift 5.9 for
+ Swift 5.10 for
iOS using
- Xcode 15.2 on
+ Xcode 15.4 on
1 Jan 1970 00:00:00 UTC.