From b689b013e51690f0b7f3228f61646dfe56213742 Mon Sep 17 00:00:00 2001 From: Craig Siemens Date: Mon, 3 Nov 2025 19:12:35 -0700 Subject: [PATCH] Fixed sorting for downloading the latest release --- Sources/XcodeVersionManager/Commands/DownloadCommand.swift | 4 ++-- Sources/XcodeVersionManager/Models/XcodeRelease.swift | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Sources/XcodeVersionManager/Commands/DownloadCommand.swift b/Sources/XcodeVersionManager/Commands/DownloadCommand.swift index 646936a..434cfef 100644 --- a/Sources/XcodeVersionManager/Commands/DownloadCommand.swift +++ b/Sources/XcodeVersionManager/Commands/DownloadCommand.swift @@ -50,9 +50,9 @@ struct DownloadCommand: AsyncParsableCommand { } .sorted { lhs, rhs in if preferUniversal { - lhs.download.architectures.count > rhs.download.architectures.count + lhs.download.isUniversal && !rhs.download.isUniversal } else { - lhs.download.architectures.count < rhs.download.architectures.count + !lhs.download.isUniversal && rhs.download.isUniversal } } diff --git a/Sources/XcodeVersionManager/Models/XcodeRelease.swift b/Sources/XcodeVersionManager/Models/XcodeRelease.swift index cdcab27..52dbc11 100644 --- a/Sources/XcodeVersionManager/Models/XcodeRelease.swift +++ b/Sources/XcodeVersionManager/Models/XcodeRelease.swift @@ -9,6 +9,10 @@ struct XcodeRelease { struct Download: Equatable { let architectures: [Architecture] let url: URL + + var isUniversal: Bool { + architectures.count == 2 || architectures.count == 0 + } } struct Version: Equatable {