From 1a3ca52270a0554b92422b534582a0ddbecbcacc Mon Sep 17 00:00:00 2001 From: peter-gyarmati Date: Wed, 14 Feb 2024 13:59:03 +0100 Subject: [PATCH] Added visionOS support to Spaceship and AppStoreConnect API (#1) * VisionOS Device support in Spaceship * VisionOS Platform in AppStoreConnect API * visionOS support * Removing merge conflict resolution leftover --- match/lib/match/runner.rb | 4 +++- sigh/lib/sigh/runner.rb | 3 ++- spaceship/lib/spaceship/connect_api.rb | 8 ++++++-- spaceship/lib/spaceship/connect_api/models/device.rb | 1 + 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/match/lib/match/runner.rb b/match/lib/match/runner.rb index 91f022fc700..cb611482869 100644 --- a/match/lib/match/runner.rb +++ b/match/lib/match/runner.rb @@ -367,7 +367,9 @@ def device_count_different?(profile: nil, keychain_path: nil, platform: nil, inc Spaceship::ConnectAPI::Device::DeviceClass::IPAD, Spaceship::ConnectAPI::Device::DeviceClass::IPHONE, Spaceship::ConnectAPI::Device::DeviceClass::IPOD, - Spaceship::ConnectAPI::Device::DeviceClass::APPLE_WATCH + Spaceship::ConnectAPI::Device::DeviceClass::APPLE_WATCH, + Spaceship::ConnectAPI::Device::DeviceClass::APPLE_VISION_PRO + ] when :tvos [ diff --git a/sigh/lib/sigh/runner.rb b/sigh/lib/sigh/runner.rb index 3ffaa824e48..197530a708a 100644 --- a/sigh/lib/sigh/runner.rb +++ b/sigh/lib/sigh/runner.rb @@ -282,7 +282,8 @@ def devices_to_use Spaceship::ConnectAPI::Device::DeviceClass::APPLE_WATCH, Spaceship::ConnectAPI::Device::DeviceClass::IPAD, Spaceship::ConnectAPI::Device::DeviceClass::IPHONE, - Spaceship::ConnectAPI::Device::DeviceClass::IPOD + Spaceship::ConnectAPI::Device::DeviceClass::IPOD, + Spaceship::ConnectAPI::Device::DeviceClass::APPLE_VISION_PRO ] when 'tvos' [Spaceship::ConnectAPI::Device::DeviceClass::APPLE_TV] diff --git a/spaceship/lib/spaceship/connect_api.rb b/spaceship/lib/spaceship/connect_api.rb index b69af3fba65..d0d9b4ca472 100644 --- a/spaceship/lib/spaceship/connect_api.rb +++ b/spaceship/lib/spaceship/connect_api.rb @@ -84,9 +84,11 @@ module Platform IOS = "IOS" MAC_OS = "MAC_OS" TV_OS = "TV_OS" + VISION_OS = "VISION_OS" WATCH_OS = "WATCH_OS" - ALL = [IOS, MAC_OS, TV_OS, WATCH_OS] + + ALL = [IOS, MAC_OS, TV_OS, VISION_OS, WATCH_OS] def self.map(platform) return platform if ALL.include?(platform) @@ -99,6 +101,8 @@ def self.map(platform) return Spaceship::ConnectAPI::Platform::MAC_OS when :ios return Spaceship::ConnectAPI::Platform::IOS + when :xros, :visionos + return Spaceship::ConnectAPI::Platform::VISION_OS else raise "Cannot find a matching platform for '#{platform}' - valid values are #{ALL.join(', ')}" end @@ -121,7 +125,7 @@ def self.map(platform) case platform.to_sym when :osx, :macos, :mac return Spaceship::ConnectAPI::Platform::MAC_OS - when :ios + when :ios, :xros, :visionos return Spaceship::ConnectAPI::Platform::IOS else raise "Cannot find a matching platform for '#{platform}' - valid values are #{ALL.join(', ')}" diff --git a/spaceship/lib/spaceship/connect_api/models/device.rb b/spaceship/lib/spaceship/connect_api/models/device.rb index cdc26e7884f..daa1c0d4140 100644 --- a/spaceship/lib/spaceship/connect_api/models/device.rb +++ b/spaceship/lib/spaceship/connect_api/models/device.rb @@ -29,6 +29,7 @@ module DeviceClass IPOD = "IPOD" APPLE_TV = "APPLE_TV" MAC = "MAC" + APPLE_VISION_PRO = "APPLE_VISION_PRO" # As of 2022-11-12, this is not officially supported by App Store Connect API APPLE_SILICON_MAC = "APPLE_SILICON_MAC"