diff --git a/.github/workflows/PR.yml b/.github/workflows/PR.yml index 64b3a6e..fb1c4fc 100644 --- a/.github/workflows/PR.yml +++ b/.github/workflows/PR.yml @@ -19,10 +19,13 @@ concurrency: jobs: build: environment: PR - runs-on: macos-latest + runs-on: macos-13 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 + + - name: Updating Cocoapods + run: gem install cocoapods - name: Updating CocoaPods repo run: pod repo update diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b2eb8a5..628a085 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,10 +18,13 @@ concurrency: jobs: build: - runs-on: macos-latest + runs-on: macOS-13 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 + + - name: Updating Cocoapods + run: gem install cocoapods - name: Updating CocoaPods repo run: pod repo update diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aef2671..d050ce4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,13 +6,13 @@ on: jobs: TAGGING: - runs-on: macos-latest + runs-on: macos-13 environment: Tag outputs: output1: ${{ steps.tagging.outputs.tag }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Switching Podspec to release mode run: | @@ -24,13 +24,16 @@ jobs: GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }} sh .github/tag.sh PODS_PUSH: - runs-on: macos-latest + runs-on: macos-13 environment: CocoaPods needs: TAGGING steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: git pull + + - name: Updating Cocoapods + run: gem install cocoapods - name: Updating CocoaPods repo run: pod repo update diff --git a/KalturaPlayer.podspec b/KalturaPlayer.podspec index 913c406..4c6c284 100644 --- a/KalturaPlayer.podspec +++ b/KalturaPlayer.podspec @@ -5,7 +5,7 @@ suffix = '.0000' # Dev mode Pod::Spec.new do |s| s.name = 'KalturaPlayer' - s.version = '4.9.0' + suffix + s.version = '4.9.1' + suffix s.summary = 'KalturaPlayer -- Kaltura Player for iOS and tvOS' s.homepage = 'https://github.com/kaltura/kaltura-player-ios' s.license = { :type => 'AGPLv3', :file => 'LICENSE' } @@ -13,38 +13,41 @@ Pod::Spec.new do |s| s.source = { :git => 'https://github.com/kaltura/kaltura-player-ios.git', :tag => 'v' + s.version.to_s } s.swift_version = '5.0' - s.ios.deployment_target = '10.0' - s.tvos.deployment_target = '10.0' + s.ios.deployment_target = '15.0' + s.tvos.deployment_target = '15.0' s.subspec 'Interceptor' do |sp| sp.source_files = 'Sources/Interceptor/*' - sp.dependency 'PlayKit', '~> 3.28' + sp.dependency 'PlayKit', '~> 3.30' end - s.xcconfig = { - ### The following is required for Xcode 12 (https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios) - 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' - } + # Fix pod lint error: could not find moduleĀ for target 'arm64-apple-ios-simulator' + # This error indicates that a pod dependency in your project doesn't have a compiled version for the arm64 architecture of the iOS simulator. + # This is because Apple Silicon Macs (M1, M2, etc.) use arm64 architecture, while Intel Macs use x86_64. + # see: https://stackoverflow.com/a/63955114/1571228 + s.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' } + s.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' } + ################################################################ s.subspec 'Core' do |sp| - sp.ios.deployment_target = '10.0' - sp.tvos.deployment_target = '10.0' + sp.ios.deployment_target = '15.0' + sp.tvos.deployment_target = '15.0' sp.source_files = 'Sources/*', 'Sources/Basic/*', 'Sources/Playlist/*' sp.dependency 'KalturaPlayer/Interceptor' end - s.subspec 'OTT' do |sp| + s.subspec 'OTT' do |sp| sp.source_files = 'Sources/OTT/*', 'Sources/Common' sp.resources = 'Sources/OTT/*.xcdatamodeld' sp.dependency 'KalturaPlayer/Core' - sp.dependency 'PlayKitProviders', '~> 1.18' - sp.dependency 'PlayKitKava', '~> 1.10' + sp.dependency 'PlayKitProviders', '~> 1.19' + sp.dependency 'PlayKitKava', '~> 1.11' end s.subspec 'OVP' do |sp| @@ -52,61 +55,44 @@ Pod::Spec.new do |s| sp.resources = 'Sources/OVP/*.xcdatamodeld' sp.dependency 'KalturaPlayer/Core' - sp.dependency 'PlayKitProviders', '~> 1.18' - sp.dependency 'PlayKitKava', '~> 1.10' + sp.dependency 'PlayKitProviders', '~> 1.19' + sp.dependency 'PlayKitKava', '~> 1.11' end ################################################################ + ### Offline Supported only in iOS ### ################################################################ s.subspec 'Offline' do |sp| - sp.ios.deployment_target = '10.0' + sp.ios.deployment_target = '15.0' sp.source_files = 'Sources/Offline/*', 'Sources/*', 'Sources/Basic/*', 'Sources/Interceptor/*', 'Sources/Playlist/*' - sp.dependency 'DownloadToGo', '~> 3.18' - sp.dependency 'PlayKit', '~> 3.28' - - sp.xcconfig = { - ### The following is required for Xcode 12 (https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios) - 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' - } - + sp.dependency 'DownloadToGo', '~> 3.20.0' + sp.dependency 'PlayKit', '~> 3.30' end - s.subspec 'Offline_OTT' do |sp| - sp.ios.deployment_target = '10.0' + s.subspec 'Offline_OTT' do |sp| + sp.ios.deployment_target = '15.0' sp.source_files = 'Sources/Offline/OTT/*', 'Sources/OTT/*', 'Sources/Common' sp.resources = 'Sources/OTT/*.xcdatamodeld' sp.dependency 'KalturaPlayer/Offline' - sp.dependency 'PlayKitProviders', '~> 1.18' - sp.dependency 'PlayKitKava', '~> 1.10' - - sp.xcconfig = { - ### The following is required for Xcode 12 (https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios) - 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' - } - + sp.dependency 'PlayKitProviders', '~> 1.19' + sp.dependency 'PlayKitKava', '~> 1.11' end s.subspec 'Offline_OVP' do |sp| - sp.ios.deployment_target = '10.0' + sp.ios.deployment_target = '15.0' sp.source_files = 'Sources/Offline/OVP/*', 'Sources/OVP/*', 'Sources/Common' sp.resources = 'Sources/OVP/*.xcdatamodeld' sp.dependency 'KalturaPlayer/Offline' - sp.dependency 'PlayKitProviders', '~> 1.18' - sp.dependency 'PlayKitKava', '~> 1.10' - - sp.xcconfig = { - ### The following is required for Xcode 12 (https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios) - 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' - } - + sp.dependency 'PlayKitProviders', '~> 1.19' + sp.dependency 'PlayKitKava', '~> 1.11' end ################################################################ @@ -114,15 +100,14 @@ Pod::Spec.new do |s| ################################################################ s.subspec 'UI' do |sp| - sp.ios.deployment_target = '10.0' + sp.ios.deployment_target = '15.0' sp.source_files = 'Sources/UI/*' sp.resources = [ 'Sources/UI/Assets/*'] sp.dependency 'KalturaPlayer/Core' - end - + ################################################################ s.default_subspec = 'Core' diff --git a/iOSTestApp/Podfile b/iOSTestApp/Podfile index c9546aa..3812764 100644 --- a/iOSTestApp/Podfile +++ b/iOSTestApp/Podfile @@ -1,5 +1,5 @@ # Uncomment the next line to define a global platform for your project -platform :ios, '10.0' +platform :ios, '15.0' target 'iOSTestApp' do # Comment the next line if you don't want to use dynamic frameworks diff --git a/iOSTestApp/iOSTestApp.xcodeproj/project.pbxproj b/iOSTestApp/iOSTestApp.xcodeproj/project.pbxproj index 82c55aa..2f5fcf5 100644 --- a/iOSTestApp/iOSTestApp.xcodeproj/project.pbxproj +++ b/iOSTestApp/iOSTestApp.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 51; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -175,8 +175,9 @@ D205382E2435D85E000A2008 /* Project object */ = { isa = PBXProject; attributes = { + BuildIndependentTargetsInParallel = YES; LastSwiftUpdateCheck = 1130; - LastUpgradeCheck = 1130; + LastUpgradeCheck = 1520; ORGANIZATIONNAME = "Kaltura Inc."; TargetAttributes = { D20538352435D85E000A2008 = { @@ -365,6 +366,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -375,6 +377,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -389,7 +392,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -425,6 +428,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -435,6 +439,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -443,7 +448,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; @@ -461,7 +466,7 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = X8RDCFJK95; INFOPLIST_FILE = iOSTestApp/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -481,7 +486,7 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = X8RDCFJK95; INFOPLIST_FILE = iOSTestApp/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -502,7 +507,7 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = X8RDCFJK95; INFOPLIST_FILE = iOSTestAppTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -525,7 +530,7 @@ CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = X8RDCFJK95; INFOPLIST_FILE = iOSTestAppTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.2; + IPHONEOS_DEPLOYMENT_TARGET = 15.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks",