diff --git a/.circleci/config.yml b/.circleci/config.yml index f14240799d..3ae63329fd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -675,35 +675,6 @@ jobs: path: fastlane/test_output/xctest destination: scan-test-output - run-test-ios-12: - <<: *base-job - # M1 unsupported - resource_class: macos.x86.medium.gen2 - steps: - - checkout - - install-dependencies - - update-spm-installation-commit - - install-runtime: - runtime-name: iOS 12.4 - - run: - name: Run tests - command: bundle exec fastlane test_ios - no_output_timeout: 5m - environment: - SCAN_DEVICE: iPhone 6 (12.4) - - compress_result_bundle: - directory: fastlane/test_output/xctest/ios - bundle_name: RevenueCat - - create-snapshot-pr-if-needed: - condition: << pipeline.parameters.generate_snapshots >> - job: "create_snapshot_pr" - version: "ios-12" - - store_test_results: - path: fastlane/test_output - - store_artifacts: - path: fastlane/test_output/xctest - destination: scan-test-output - build-tv-watch-and-macos: <<: *base-job steps: @@ -1081,8 +1052,6 @@ workflows: xcode_version: '14.2.0' - run-test-ios-13: xcode_version: '14.2.0' - - run-test-ios-12: - xcode_version: '14.2.0' - run-test-macos: xcode_version: '15.2' @@ -1143,9 +1112,6 @@ workflows: - run-test-ios-13: xcode_version: '14.2.0' <<: *release-branches-and-main - - run-test-ios-12: - xcode_version: '14.2.0' - <<: *release-branches-and-main - build-tv-watch-and-macos: xcode_version: '14.3.0' - build-visionos: diff --git a/Package.swift b/Package.swift index 082d1134ef..6374cf072e 100644 --- a/Package.swift +++ b/Package.swift @@ -26,10 +26,10 @@ let package = Package( name: "RevenueCat", defaultLocalization: "en", platforms: [ - .macOS(.v10_13), + .macOS(.v10_15), .watchOS("6.2"), - .tvOS(.v11), - .iOS(.v11), + .tvOS(.v13), + .iOS(.v13), .visionOS(.v1) ], products: [ diff --git a/Package@swift-5.7.swift b/Package@swift-5.7.swift index c3460f2270..5a812fafe7 100644 --- a/Package@swift-5.7.swift +++ b/Package@swift-5.7.swift @@ -21,10 +21,10 @@ let package = Package( name: "RevenueCat", defaultLocalization: "en", platforms: [ - .macOS(.v10_13), + .macOS(.v10_15), .watchOS("6.2"), - .tvOS(.v11), - .iOS(.v11) + .tvOS(.v13), + .iOS(.v13) ], products: [ .library(name: "RevenueCat", diff --git a/Package@swift-5.8.swift b/Package@swift-5.8.swift index 5c7690efdf..83f9528646 100644 --- a/Package@swift-5.8.swift +++ b/Package@swift-5.8.swift @@ -21,10 +21,10 @@ let package = Package( name: "RevenueCat", defaultLocalization: "en", platforms: [ - .macOS(.v10_13), + .macOS(.v10_15), .watchOS("6.2"), - .tvOS(.v11), - .iOS(.v11) + .tvOS(.v13), + .iOS(.v13) ], products: [ .library(name: "RevenueCat", diff --git a/README.md b/README.md index c1a0072be4..f76ef4ae59 100644 --- a/README.md +++ b/README.md @@ -54,9 +54,9 @@ Or view our iOS sample apps: | Platform | Minimum target | | --- | --- | -| iOS | 11.0+ | -| tvOS | 11.0+ | -| macOS | 10.13+ | +| iOS | 13.0+ | +| tvOS | 13.0+ | +| macOS | 10.15+ | | watchOS | 6.2+ | | visionOS | 1.0+ | diff --git a/RevenueCat.podspec b/RevenueCat.podspec index e54abb96cc..b255f77283 100644 --- a/RevenueCat.podspec +++ b/RevenueCat.podspec @@ -16,10 +16,10 @@ Pod::Spec.new do |s| s.framework = 'StoreKit' s.swift_version = '5.7' - s.ios.deployment_target = '11.0' + s.ios.deployment_target = '13.0' s.watchos.deployment_target = '6.2' - s.tvos.deployment_target = '11.0' - s.osx.deployment_target = '10.13' + s.tvos.deployment_target = '13.0' + s.osx.deployment_target = '10.15' s.visionos.deployment_target = '1.0' s.pod_target_xcconfig = { diff --git a/RevenueCat.xcodeproj/project.pbxproj b/RevenueCat.xcodeproj/project.pbxproj index f55e972a2f..b05a2e82f9 100644 --- a/RevenueCat.xcodeproj/project.pbxproj +++ b/RevenueCat.xcodeproj/project.pbxproj @@ -4080,13 +4080,11 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = 8SXR2327BM; GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 1.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -4099,7 +4097,6 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/UnitTestsHostApp.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/UnitTestsHostApp"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Debug; }; @@ -4113,13 +4110,11 @@ CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = 8SXR2327BM; GENERATE_INFOPLIST_FILE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 1.0; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.revenuecat.StoreKitUnitTests; @@ -4130,7 +4125,6 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/UnitTestsHostApp.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/UnitTestsHostApp"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Release; }; @@ -4223,7 +4217,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = Tests/UnitTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4240,8 +4233,6 @@ SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; - WATCHOS_DEPLOYMENT_TARGET = 7.0; }; name = Debug; }; @@ -4256,7 +4247,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = Tests/UnitTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4271,8 +4261,6 @@ SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; - WATCHOS_DEPLOYMENT_TARGET = 7.0; }; name = Release; }; @@ -4355,7 +4343,6 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TVOS_DEPLOYMENT_TARGET = 14.1; - WATCHOS_DEPLOYMENT_TARGET = 6.2; }; name = Debug; }; @@ -4382,7 +4369,6 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TVOS_DEPLOYMENT_TARGET = 14.1; - WATCHOS_DEPLOYMENT_TARGET = 6.2; }; name = Release; }; @@ -4396,7 +4382,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = Tests/UnitTestsHostApp/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4426,7 +4411,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = Tests/UnitTestsHostApp/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4495,8 +4479,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MACOSX_DEPLOYMENT_TARGET = 10.13; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -4505,7 +4489,7 @@ SWIFT_STRICT_CONCURRENCY = targeted; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; SWIFT_VERSION = 5.0; - TVOS_DEPLOYMENT_TARGET = 11.0; + TVOS_DEPLOYMENT_TARGET = 13.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; WATCHOS_DEPLOYMENT_TARGET = 6.2; @@ -4558,8 +4542,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MACOSX_DEPLOYMENT_TARGET = 10.13; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -4569,7 +4553,7 @@ SWIFT_STRICT_CONCURRENCY = targeted; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; SWIFT_VERSION = 5.0; - TVOS_DEPLOYMENT_TARGET = 11.0; + TVOS_DEPLOYMENT_TARGET = 13.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -4644,7 +4628,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = "Tests/ReceiptParserTests/ReceiptParserTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4660,7 +4643,6 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OBJC_BRIDGING_HEADER = ""; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Debug; }; @@ -4675,7 +4657,6 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 8SXR2327BM; INFOPLIST_FILE = "Tests/ReceiptParserTests/ReceiptParserTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -4689,7 +4670,6 @@ SUPPORTS_MACCATALYST = YES; SWIFT_OBJC_BRIDGING_HEADER = ""; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Release; }; diff --git a/RevenueCatUI.podspec b/RevenueCatUI.podspec index 5aa8af24d1..871acf19a4 100644 --- a/RevenueCatUI.podspec +++ b/RevenueCatUI.podspec @@ -19,10 +19,10 @@ Pod::Spec.new do |s| # RevenueCatUI APIs are not available in all these platforms / versions, however retaining this support at the Pod level # allows us to depend on it in the same platforms as RevenueCat. # Opening support allows us to depend on it in the same platforms as RevenueCat. - s.ios.deployment_target = '11.0' + s.ios.deployment_target = '13.0' s.watchos.deployment_target = '6.2' - s.tvos.deployment_target = '11.0' - s.osx.deployment_target = '10.13' + s.tvos.deployment_target = '13.0' + s.osx.deployment_target = '10.15' s.visionos.deployment_target = '1.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } diff --git a/Sources/Support/SwiftVersionCheck.swift b/Sources/Support/SwiftVersionCheck.swift index a0e43fbf3b..0e202d291f 100644 --- a/Sources/Support/SwiftVersionCheck.swift +++ b/Sources/Support/SwiftVersionCheck.swift @@ -13,7 +13,7 @@ import Foundation -#if swift(<5.5.2) -// See https://xcodereleases.com -#error("RevenueCat requires Xcode 14.0 with Swift 5.5.2 to compile.") +#if swift(<5.7) +// See https://xcodereleases.com and https://swiftversion.net +#error("RevenueCat requires Xcode 14.0 with Swift 5.7 to compile.") #endif diff --git a/Tests/APITesters/ObjCAPITester/ObjCAPITester.xcodeproj/project.pbxproj b/Tests/APITesters/ObjCAPITester/ObjCAPITester.xcodeproj/project.pbxproj index 0ecc74141b..e04181facc 100644 --- a/Tests/APITesters/ObjCAPITester/ObjCAPITester.xcodeproj/project.pbxproj +++ b/Tests/APITesters/ObjCAPITester/ObjCAPITester.xcodeproj/project.pbxproj @@ -328,7 +328,6 @@ INFOPLIST_KEY_UIMainStoryboardFile = Main; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -344,7 +343,6 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Debug; }; @@ -365,7 +363,6 @@ INFOPLIST_KEY_UIMainStoryboardFile = Main; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -381,7 +378,6 @@ SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; }; name = Release; @@ -438,11 +434,15 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Debug; }; @@ -492,10 +492,14 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = macosx; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Release; }; diff --git a/Tests/APITesters/ReceiptParserAPITester/ReceiptParserAPITester.xcodeproj/project.pbxproj b/Tests/APITesters/ReceiptParserAPITester/ReceiptParserAPITester.xcodeproj/project.pbxproj index 3b68ed1990..120659097a 100644 --- a/Tests/APITesters/ReceiptParserAPITester/ReceiptParserAPITester.xcodeproj/project.pbxproj +++ b/Tests/APITesters/ReceiptParserAPITester/ReceiptParserAPITester.xcodeproj/project.pbxproj @@ -186,7 +186,6 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -218,7 +217,6 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -285,7 +283,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -293,6 +292,9 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Debug; }; @@ -339,13 +341,17 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Release; }; diff --git a/Tests/APITesters/SwiftAPITester/SwiftAPITester.xcodeproj/project.pbxproj b/Tests/APITesters/SwiftAPITester/SwiftAPITester.xcodeproj/project.pbxproj index 953f39846d..c03be35e04 100644 --- a/Tests/APITesters/SwiftAPITester/SwiftAPITester.xcodeproj/project.pbxproj +++ b/Tests/APITesters/SwiftAPITester/SwiftAPITester.xcodeproj/project.pbxproj @@ -290,7 +290,6 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -304,7 +303,6 @@ SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; }; name = Debug; }; @@ -323,7 +321,6 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -337,7 +334,6 @@ SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3,4,6"; - TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; }; name = Release; @@ -391,7 +387,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -399,6 +396,9 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Debug; }; @@ -445,13 +445,17 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 11.3; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; + TVOS_DEPLOYMENT_TARGET = 13.0; + WATCHOS_DEPLOYMENT_TARGET = 6.2; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Release; }; diff --git a/Tests/StoreKitUnitTests/StoreMessagesHelperTests.swift b/Tests/StoreKitUnitTests/StoreMessagesHelperTests.swift index b0d0b8a271..135e5dd40c 100644 --- a/Tests/StoreKitUnitTests/StoreMessagesHelperTests.swift +++ b/Tests/StoreKitUnitTests/StoreMessagesHelperTests.swift @@ -124,10 +124,12 @@ private extension StoreMessagesHelperTests { @available(iOS 16.0, *) private final class MockStoreMessage: StoreMessage { - let reason: Message.Reason + // The indirection prevents a runtime Swift crash on iOS 15 + var reason: Message.Reason { self._reason.value } + private let _reason: Box init(reason: Message.Reason) { - self.reason = reason + self._reason = .init(reason) } private let _displayCalled: Atomic = false diff --git a/Tests/StoreKitUnitTests/TestHelpers/AvailabilityChecks.swift b/Tests/StoreKitUnitTests/TestHelpers/AvailabilityChecks.swift index 2b3422a7a0..b4795fd53e 100644 --- a/Tests/StoreKitUnitTests/TestHelpers/AvailabilityChecks.swift +++ b/Tests/StoreKitUnitTests/TestHelpers/AvailabilityChecks.swift @@ -32,7 +32,7 @@ enum AvailabilityChecks { } static func iOS14APIAvailableOrSkipTest() throws { - guard #available(iOS 14.0, tvOS 14.0, macOS 11.0, watchOS 6.2, *) else { + guard #available(iOS 14.0, tvOS 14.0, macOS 11.0, watchOS 7.0, *) else { throw XCTSkip("Required API is not available for this test.") } } diff --git a/Tests/UnitTests/StoreKitExtensions/SKErrorTests.swift b/Tests/UnitTests/StoreKitExtensions/SKErrorTests.swift index 5d9cf52b5f..6d4bc53c0c 100644 --- a/Tests/UnitTests/StoreKitExtensions/SKErrorTests.swift +++ b/Tests/UnitTests/StoreKitExtensions/SKErrorTests.swift @@ -70,7 +70,7 @@ class SKErrorTests: BaseErrorTests { underlyingError: error) } - @available(iOS 14.0, macOS 11.0, watchOS 6.2, *) + @available(iOS 14.0, macOS 11.0, watchOS 7.0, *) @available(tvOS, unavailable) func testUnsupportedPlatformError() throws { try AvailabilityChecks.iOS14APIAvailableOrSkipTest() @@ -82,7 +82,7 @@ class SKErrorTests: BaseErrorTests { underlyingError: error) } - @available(iOS 14.0, tvOS 14.0, macOS 11.0, watchOS 6.2, *) + @available(iOS 14.0, tvOS 14.0, macOS 11.0, watchOS 7.0, *) func testIneligibleForOfferError() throws { try AvailabilityChecks.iOS14APIAvailableOrSkipTest()