diff --git a/.swift-version b/.swift-version index 9f55b2c..5186d07 100644 --- a/.swift-version +++ b/.swift-version @@ -1 +1 @@ -3.0 +4.0 diff --git a/.travis.yml b/.travis.yml index 481d430..266f413 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,8 @@ -osx_image: xcode8.3 +osx_image: xcode9 language: objective-c podfile: Demo/Podfile cache: cocoapods before_install: - - gem install cocoapods -v '1.2.1' + - gem install cocoapods -v '1.3.1' - pod repo update -script: cd Demo ; set -o pipefail && xcodebuild -workspace 'Demo.xcworkspace' -scheme 'Demo' -configuration 'Debug' -sdk iphonesimulator -destination platform='iOS Simulator',OS='10.3',name='iPhone 6s' build test | xcpretty -c --test +script: cd Demo ; set -o pipefail && xcodebuild -workspace 'Demo.xcworkspace' -scheme 'Demo' -configuration 'Debug' -sdk iphonesimulator -destination platform='iOS Simulator',OS='11.0',name='iPhone 8' build test | xcpretty -c --test diff --git a/Changelog.md b/Changelog.md index ffd0848..121d6d5 100644 --- a/Changelog.md +++ b/Changelog.md @@ -4,9 +4,13 @@ - Nothing yet. +## 4.0.0 + +- Support for Swift 4.0, RxSwift 4.0 and RxBlocking 4.0. See [#27](https://github.com/RxSwiftCommunity/RxNimble/pull/27). + ## 3.0.0 -- Supprt for new Nimble 7 api. See [#21](https://github.com/RxSwiftCommunity/RxNimble/pull/21). +- Support for new Nimble 7 api. See [#21](https://github.com/RxSwiftCommunity/RxNimble/pull/21). ## 1.0.0 diff --git a/Demo/Demo.xcodeproj/project.pbxproj b/Demo/Demo.xcodeproj/project.pbxproj index 4ee21c5..027ceb8 100644 --- a/Demo/Demo.xcodeproj/project.pbxproj +++ b/Demo/Demo.xcodeproj/project.pbxproj @@ -253,13 +253,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-DemoTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; 8EC133641E3963166AA7C9C3 /* [CP] Embed Pods Frameworks */ = { @@ -298,9 +301,20 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-DemoTests/Pods-DemoTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/Nimble/Nimble.framework", + "${BUILT_PRODUCTS_DIR}/Quick/Quick.framework", + "${BUILT_PRODUCTS_DIR}/RxBlocking/RxBlocking.framework", + "${BUILT_PRODUCTS_DIR}/RxNimble/RxNimble.framework", + "${BUILT_PRODUCTS_DIR}/RxSwift/RxSwift.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Nimble.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Quick.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxBlocking.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxNimble.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxSwift.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -313,13 +327,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Demo-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -415,6 +432,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -454,6 +472,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 4.0; VALIDATE_PRODUCT = YES; }; name = Release; @@ -467,7 +486,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.Demo; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -480,7 +499,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.Demo; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; }; name = Release; }; @@ -492,7 +511,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.DemoTests; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -504,7 +523,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.DemoTests; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.0; }; name = Release; }; diff --git a/Demo/Demo/Assets.xcassets/AppIcon.appiconset/Contents.json b/Demo/Demo/Assets.xcassets/AppIcon.appiconset/Contents.json index 118c98f..19882d5 100644 --- a/Demo/Demo/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/Demo/Demo/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,5 +1,15 @@ { "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "29x29", @@ -29,6 +39,11 @@ "idiom" : "iphone", "size" : "60x60", "scale" : "3x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" } ], "info" : { diff --git a/Demo/Podfile.lock b/Demo/Podfile.lock index 9e95643..bb318ff 100644 --- a/Demo/Podfile.lock +++ b/Demo/Podfile.lock @@ -1,13 +1,13 @@ PODS: - - Nimble (7.0.0) - - Quick (1.0.0) - - RxBlocking (3.0.1): - - RxSwift (~> 3.0) - - RxNimble (2.0.0): + - Nimble (7.0.2) + - Quick (1.2.0) + - RxBlocking (4.0.0): + - RxSwift (~> 4.0) + - RxNimble (3.0.0): - Nimble (~> 7.0) - - RxBlocking (~> 3.0) - - RxSwift (~> 3.0) - - RxSwift (3.0.1) + - RxBlocking (~> 4.0) + - RxSwift (~> 4.0) + - RxSwift (4.0.0) DEPENDENCIES: - Nimble @@ -19,12 +19,12 @@ EXTERNAL SOURCES: :path: ../ SPEC CHECKSUMS: - Nimble: 874982b605d4d752fcac6be695d13c502de84b1b - Quick: 8024e4a47e6cc03a9d5245ef0948264fc6d27cff - RxBlocking: 5de082d09d1ab45b49173f309f1a97d6b50f34c4 - RxNimble: 0a187f22441eca11779f17ffd6565f03a3f5b1fb - RxSwift: af5680055c4ad04480189c52d28385b1029493a6 + Nimble: bfe1f814edabba69ff145cb1283e04ed636a67f2 + Quick: 58d203b1c5e27fff7229c4c1ae445ad7069a7a08 + RxBlocking: 923c2c8106d80d7c2d6b276afd66ce3b10824836 + RxNimble: 89a6dbed3832eebbcc0f16057cbfa38a58b99e58 + RxSwift: fd680d75283beb5e2559486f3c0ff852f0d35334 PODFILE CHECKSUM: 7405369509db0cbd242146add66181ab5ab0efb0 -COCOAPODS: 1.2.1 +COCOAPODS: 1.3.1 diff --git a/RxNimble.podspec b/RxNimble.podspec index 545117b..175467f 100644 --- a/RxNimble.podspec +++ b/RxNimble.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "RxNimble" - s.version = "3.0.0" + s.version = "4.0.0" s.summary = "Nimble extensions that making unit testing with RxSwift easier 🎉" s.description = <<-DESC This library includes functions that make testing RxSwift projects easier with Nimble. @@ -15,8 +15,8 @@ Pod::Spec.new do |s| s.source = { :git => "https://github.com/ashfurrow/RxNimble.git", :tag => s.version } s.source_files = "Source/**/*.swift" s.dependency "Nimble", "~> 7.0" - s.dependency "RxSwift", "~> 3.0" - s.dependency "RxBlocking", "~> 3.0" + s.dependency "RxSwift", "~> 4.0" + s.dependency "RxBlocking", "~> 4.0" s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO', 'FRAMEWORK_SEARCH_PATHS' => '$(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks"' } end