From 59f57c541e457c1d47627b55e0e5ef409f7bf1dc Mon Sep 17 00:00:00 2001 From: Max Howell Date: Sat, 6 Apr 2019 15:42:02 -0400 Subject: [PATCH] Carthage Xcode 10.2 support --- .travis.yml | 101 ++++++++++++++---- Cartfile | 2 +- Cartfile.resolved | 2 +- PMKAssetsLibrary.xcodeproj/project.pbxproj | 16 +-- .../xcschemes/PMKAssetsLibrary.xcscheme | 2 +- Tests/TestUIImagePickerController.swift | 1 - 6 files changed, 90 insertions(+), 34 deletions(-) diff --git a/.travis.yml b/.travis.yml index da6a2ee..975960d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,25 +1,80 @@ os: osx -language: objective-c -matrix: +language: swift +osx_image: xcode10.2 + +branches: + only: + - master +stages: + - lint + - carthage + - test +jobs: include: - - {osx_image: xcode8.3, env: 'SWFT=3.1 DST="OS=10.3.1,name=iPhone SE"'} - - {osx_image: xcode9.2, env: 'SWFT=3.2 DST="OS=11.2,name=iPhone SE"'} - - {osx_image: xcode9.4, env: 'SWFT=3.3 DST="OS=11.4,name=iPhone 5s"'} - - {osx_image: xcode10, env: 'SWFT=3.4 DST="OS=12.0,name=iPhone SE"'} - - {osx_image: xcode9.2, env: 'SWFT=4.0 DST="OS=11.2,name=iPhone SE"'} - - {osx_image: xcode9.4, env: 'SWFT=4.1 DST="OS=11.4,name=iPhone 5s" TEST=1'} - - {osx_image: xcode10, env: 'SWFT=4.2 DST="OS=12.0,name=iPhone SE"'} -cache: - directories: - - Carthage -before_install: - - carthage bootstrap --cache-builds --no-use-binaries --platform iOS --verbose -install: - - xcodebuild -scheme PMKAssetsLibrary -target PMKAssetsLibrary -quiet -destination "$DST" SWIFT_VERSION=$SWFT SWIFT_TREAT_WARNINGS_AS_ERRORS=YES build - - if [[ $TEST == "1" ]]; then - xcodebuild -scheme PMKAssetsLibrary -target PMKALTests -quiet -destination "$DST" build; - fi -script: - - if [ "$TEST" == "1" ]; then - xcodebuild -scheme PMKAssetsLibrary -quiet -destination "$DST" test; - fi + - &pod + stage: lint + osx_image: xcode8.3 + env: SWIFT=3.1 + before_install: + gem install cocoapods --prerelease --version 1.7.0.beta.3 + install: + carthage bootstrap --no-build PromiseKit + script: | + cd Carthage/Checkouts/PromiseKit + mv .github/PromiseKit.podspec . + rm -rf Extensions/AssetsLibrary/Sources + cp -R ../../../Sources Extensions/AssetsLibrary + pod lib lint --subspec=PromiseKit/AssetsLibrary --fail-fast --swift-version=$SWIFT + - <<: *pod + osx_image: xcode9.2 + env: SWIFT=3.2 + - <<: *pod + osx_image: xcode9.4 + env: SWIFT=3.3 + - <<: *pod + osx_image: xcode10.1 + env: SWIFT=3.4 + - <<: *pod + osx_image: xcode9.2 + env: SWIFT=4.0 + - <<: *pod + osx_image: xcode9.4 + env: SWIFT=4.1 + - <<: *pod + osx_image: xcode10.1 + env: SWIFT=4.2 + # Fails at PromiseKit level currently + # - <<: *pod + # osx_image: xcode10.2 + # env: SWIFT=4.3 + # name: pod lib lint --swift-version=4.3 + - <<: *pod + osx_image: xcode10.2 + env: SWIFT=5.0 + + - &carthage + stage: carthage + osx_image: xcode9.2 + script: | + carthage bootstrap --cache-builds --platform iOS + carthage build --no-skip-current + cache: + directories: + - Carthage + - <<: *carthage + osx_image: xcode9.4 + - <<: *carthage + osx_image: xcode10.1 + - <<: *carthage + osx_image: xcode10.2 + + - stage: test + xcode_scheme: PMKAssetsLibrary + xcode_project: PMKAssetsLibrary.xcodeproj + xcode_destination: 'platform=iOS Simulator,OS=12.2,name=iPhone SE' + cache: + directories: + - Carthage + before_install: | + carthage bootstrap --cache-builds --no-use-binaries --platform iOS + sed -i '' "s/SWIFT_TREAT_WARNINGS_AS_ERRORS = NO;/SWIFT_TREAT_WARNINGS_AS_ERRORS = YES;/" *.xcodeproj/project.pbxproj diff --git a/Cartfile b/Cartfile index 2bfea98..d4703e9 100644 --- a/Cartfile +++ b/Cartfile @@ -1 +1 @@ -github "mxcl/PromiseKit" ~> 6.0 +github "mxcl/PromiseKit" ~> 6.8.4 diff --git a/Cartfile.resolved b/Cartfile.resolved index 8d4fefc..f54bbdb 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1 +1 @@ -github "mxcl/PromiseKit" "6.3.4" +github "mxcl/PromiseKit" "6.8.4" diff --git a/PMKAssetsLibrary.xcodeproj/project.pbxproj b/PMKAssetsLibrary.xcodeproj/project.pbxproj index e60c153..4a5ef10 100644 --- a/PMKAssetsLibrary.xcodeproj/project.pbxproj +++ b/PMKAssetsLibrary.xcodeproj/project.pbxproj @@ -207,28 +207,28 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0800; - LastUpgradeCheck = 1000; + LastUpgradeCheck = 1020; ORGANIZATIONNAME = "Max Howell"; TargetAttributes = { 630B2DFF1D5D0AF500DC10E9 = { - LastSwiftMigration = 0900; + LastSwiftMigration = 1020; TestTargetID = 63C9C4441D5D334700101ECE; }; 63C7FFA61D5BEE09003BAE60 = { CreatedOnToolsVersion = 8.0; - LastSwiftMigration = 0900; + LastSwiftMigration = 1020; ProvisioningStyle = Automatic; }; 63C9C4441D5D334700101ECE = { CreatedOnToolsVersion = 8.0; - LastSwiftMigration = 0900; + LastSwiftMigration = 1020; ProvisioningStyle = Automatic; }; }; }; buildConfigurationList = 63C7FFA11D5BEE09003BAE60 /* Build configuration list for PBXProject "PMKAssetsLibrary" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -359,6 +359,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; BUNDLE_PACKAGE_TYPE = FMWK; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -413,7 +414,7 @@ SUPPORTED_PLATFORMS = "iphonesimulator iphoneos"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2,3,4"; TVOS_DEPLOYMENT_TARGET = 9.0; VERSIONING_SYSTEM = "apple-generic"; @@ -428,6 +429,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; BUNDLE_PACKAGE_TYPE = FMWK; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -474,7 +476,7 @@ PRODUCT_BUNDLE_IDENTIFIER = org.promisekit.UIKit; SUPPORTED_PLATFORMS = "iphonesimulator iphoneos"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2,3,4"; TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; diff --git a/PMKAssetsLibrary.xcodeproj/xcshareddata/xcschemes/PMKAssetsLibrary.xcscheme b/PMKAssetsLibrary.xcodeproj/xcshareddata/xcschemes/PMKAssetsLibrary.xcscheme index 9539598..456af2f 100644 --- a/PMKAssetsLibrary.xcodeproj/xcshareddata/xcschemes/PMKAssetsLibrary.xcscheme +++ b/PMKAssetsLibrary.xcodeproj/xcshareddata/xcschemes/PMKAssetsLibrary.xcscheme @@ -1,6 +1,6 @@