diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a2f755b2..666dd6af 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,30 +2,26 @@ name: CI on: [push, pull_request] jobs: xcode: - runs-on: macos-10.15 - strategy: - matrix: - swift: [5.0, 4.2] - fail-fast: false - name: Action Tests (Swift ${{ matrix.swift }}) + runs-on: macos-13 + name: Action Tests (Swift 5.0) env: - DEVELOPER_DIR: /Applications/Xcode_11.7.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_15.0.app/Contents/Developer steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Cache Carthage - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: Carthage key: ${{ runner.os }}-carthage-${{ hashFiles('**/Cartfile.resolved') }} restore-keys: | ${{ runner.os }}-carthage- - name: Bootstrap Carthage - run: carthage bootstrap --no-use-binaries --cache-builds + run: carthage bootstrap --no-use-binaries --use-xcframeworks --cache-builds - name: Tests run: | - set -o pipefail && xcodebuild test SWIFT_VERSION=${{ matrix.swift }} -workspace Action.xcworkspace -scheme Action -destination "platform=iOS Simulator,name=iPhone 11" | xcpretty -c --test - set -o pipefail && xcodebuild test SWIFT_VERSION=${{ matrix.swift }} -workspace Action.xcworkspace -scheme Action-macOS -destination "arch=x86_64" | xcpretty -c --test + set -o pipefail && xcodebuild test clean SWIFT_VERSION=5.0 -workspace Action.xcworkspace -scheme Action -destination "platform=iOS Simulator,name=iPhone 14" | xcpretty -c --test + set -o pipefail && xcodebuild test clean SWIFT_VERSION=5.0 -workspace Action.xcworkspace -scheme Action-macOS -destination "arch=x86_64" | xcpretty -c --test - name: Builds run: | - set -o pipefail && xcodebuild build SWIFT_VERSION=${{ matrix.swift }} -workspace Action.xcworkspace -scheme Action-watchOS -destination "platform=watchOS Simulator,name=Apple Watch Series 5 - 44mm" | xcpretty -c - set -o pipefail && xcodebuild build SWIFT_VERSION=${{ matrix.swift }} -workspace Action.xcworkspace -scheme Action-tvOS -destination "platform=tvOS Simulator,name=Apple TV 4K (at 1080p)" | xcpretty -c \ No newline at end of file + set -o pipefail && xcodebuild build clean SWIFT_VERSION=5.0 -workspace Action.xcworkspace -scheme Action-watchOS -destination "platform=watchOS Simulator,name=Apple Watch Series 5 (44mm)" | xcpretty -c + set -o pipefail && xcodebuild build clean SWIFT_VERSION=5.0 -workspace Action.xcworkspace -scheme Action-tvOS -destination "platform=tvOS Simulator,name=Apple TV 4K (3rd generation) (at 1080p)" | xcpretty -c diff --git a/Action.xcodeproj/project.pbxproj b/Action.xcodeproj/project.pbxproj index 8332161f..75e53d02 100644 --- a/Action.xcodeproj/project.pbxproj +++ b/Action.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -44,11 +44,6 @@ 7F612AD61D7F13B800B93BC5 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7F612AD51D7F13B800B93BC5 /* Assets.xcassets */; }; 7F612AD91D7F13B800B93BC5 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7F612AD71D7F13B800B93BC5 /* LaunchScreen.storyboard */; }; 7FB791EC1D7F1BB600789D53 /* Action.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BE73AD201CDCD101006F8B98 /* Action.framework */; }; - C41CE71F22283BBA0006E722 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C41CE71A22283BB90006E722 /* Nimble.framework */; }; - C41CE72122283BBA0006E722 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C41CE71C22283BB90006E722 /* Quick.framework */; }; - C41CE72E22283BEE0006E722 /* Quick.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C41CE72622283BEE0006E722 /* Quick.framework */; }; - C41CE73122283BEE0006E722 /* Nimble.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C41CE72922283BEE0006E722 /* Nimble.framework */; }; - C41CE73322283BEE0006E722 /* RxTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C41CE72B22283BEE0006E722 /* RxTest.framework */; }; C41E08EE2237D26D0039D213 /* Action+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4DE00042229758700FB50AB /* Action+Extensions.swift */; }; C41E08EF2237D2700039D213 /* Action+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4DE00042229758700FB50AB /* Action+Extensions.swift */; }; C41E08F02237D2740039D213 /* Action+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4DE00042229758700FB50AB /* Action+Extensions.swift */; }; @@ -59,14 +54,25 @@ C4D3237E2285ADF7004B05A5 /* ActionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3237D2285ADF7004B05A5 /* ActionTests.swift */; }; C4D3237F2285AEAD004B05A5 /* ActionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3237D2285ADF7004B05A5 /* ActionTests.swift */; }; C4DE00052229758700FB50AB /* Action+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4DE00042229758700FB50AB /* Action+Extensions.swift */; }; - FA35FEE4249732450072FBEA /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEE2249732450072FBEA /* RxSwift.framework */; }; - FA35FEE6249732450072FBEA /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEE3249732450072FBEA /* RxCocoa.framework */; }; - FA35FEED249732900072FBEA /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEEB249732900072FBEA /* RxCocoa.framework */; }; - FA35FEEF249732900072FBEA /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEEC249732900072FBEA /* RxSwift.framework */; }; - FA35FEF4249732AA0072FBEA /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEF2249732AA0072FBEA /* RxCocoa.framework */; }; - FA35FEF6249732AA0072FBEA /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEF3249732AA0072FBEA /* RxSwift.framework */; }; - FA35FEFB249732B90072FBEA /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEF9249732B90072FBEA /* RxSwift.framework */; }; - FA35FEFD249732B90072FBEA /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA35FEFA249732B90072FBEA /* RxCocoa.framework */; }; + CF23D7362ACBB6530007A649 /* Quick in Frameworks */ = {isa = PBXBuildFile; productRef = CF23D7352ACBB6530007A649 /* Quick */; }; + CF23D7392ACBB67A0007A649 /* Nimble in Frameworks */ = {isa = PBXBuildFile; productRef = CF23D7382ACBB67A0007A649 /* Nimble */; }; + CF23D73B2ACBB6850007A649 /* Nimble in Frameworks */ = {isa = PBXBuildFile; productRef = CF23D73A2ACBB6850007A649 /* Nimble */; }; + CF23D73C2ACBB6D20007A649 /* RxTest.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB42ACBB1C2007FE582 /* RxTest.xcframework */; }; + CF29D4252ACBB88700FF238B /* RxBlocking.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF29D4242ACBB88700FF238B /* RxBlocking.xcframework */; }; + CF8C4C9A2ACBB139007FE582 /* RxSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */; }; + CF8C4C9C2ACBB139007FE582 /* RxCocoa.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */; }; + CF8C4C9F2ACBB14B007FE582 /* RxCocoa.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */; }; + CF8C4CA12ACBB14B007FE582 /* RxSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */; }; + CF8C4CA42ACBB15A007FE582 /* RxCocoa.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */; }; + CF8C4CA62ACBB15A007FE582 /* RxSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */; }; + CF8C4CA92ACBB17F007FE582 /* RxCocoa.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */; }; + CF8C4CAB2ACBB17F007FE582 /* RxSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */; }; + CF8C4CB52ACBB1C2007FE582 /* RxTest.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB42ACBB1C2007FE582 /* RxTest.xcframework */; }; + CF8C4CB72ACBB1E2007FE582 /* RxRelay.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */; }; + CF8C4CB82ACBB1EF007FE582 /* RxRelay.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */; }; + CF8C4CBB2ACBB1FA007FE582 /* RxRelay.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */; }; + CF8C4CBE2ACBB205007FE582 /* RxRelay.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */; }; + CF8C4CC62ACBB637007FE582 /* Quick in Frameworks */ = {isa = PBXBuildFile; productRef = CF8C4CC52ACBB637007FE582 /* Quick */; }; FA3F973C1EDAF46F00A84787 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0569E21DE28587007E1D0D /* Action.swift */; }; FA3F973D1EDAF46F00A84787 /* Action+Internal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0569E01DE28587007E1D0D /* Action+Internal.swift */; }; /* End PBXBuildFile section */ @@ -131,29 +137,19 @@ 7F612AD81D7F13B800B93BC5 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 7F612ADA1D7F13B800B93BC5 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; BE73AD201CDCD101006F8B98 /* Action.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Action.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - C41CE71A22283BB90006E722 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = Carthage/Build/iOS/Nimble.framework; sourceTree = ""; }; - C41CE71C22283BB90006E722 /* Quick.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quick.framework; path = Carthage/Build/iOS/Quick.framework; sourceTree = ""; }; - C41CE72622283BEE0006E722 /* Quick.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quick.framework; path = Carthage/Build/Mac/Quick.framework; sourceTree = ""; }; - C41CE72922283BEE0006E722 /* Nimble.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Nimble.framework; path = Carthage/Build/Mac/Nimble.framework; sourceTree = ""; }; - C41CE72B22283BEE0006E722 /* RxTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxTest.framework; path = Carthage/Build/Mac/RxTest.framework; sourceTree = ""; }; C4BFF33C2281D6E100D1AA27 /* Nimble+RxTest+Ext.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Nimble+RxTest+Ext.swift"; sourceTree = ""; }; C4BFF33F2282B79F00D1AA27 /* TestEvents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestEvents.swift; sourceTree = ""; }; C4D3237D2285ADF7004B05A5 /* ActionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionTests.swift; sourceTree = ""; }; C4DE00042229758700FB50AB /* Action+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Action+Extensions.swift"; sourceTree = ""; }; C4E0263F20D119EE00C8164C /* Action.podspec */ = {isa = PBXFileReference; lastKnownFileType = text; path = Action.podspec; sourceTree = ""; }; C4E0264020D11A0F00C8164C /* Cartfile */ = {isa = PBXFileReference; lastKnownFileType = text; path = Cartfile; sourceTree = ""; }; - C4E0264120D11A0F00C8164C /* Cartfile.private */ = {isa = PBXFileReference; lastKnownFileType = text; path = Cartfile.private; sourceTree = ""; }; C4E0264220D11A3B00C8164C /* Readme.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = Readme.md; sourceTree = ""; }; - C4E0264320D11CDD00C8164C /* circle.yml */ = {isa = PBXFileReference; lastKnownFileType = text; path = circle.yml; sourceTree = ""; }; C4E0264420D1244900C8164C /* Changelog.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = Changelog.md; sourceTree = ""; }; - FA35FEE2249732450072FBEA /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxSwift.framework; path = Carthage/Build/iOS/RxSwift.framework; sourceTree = ""; }; - FA35FEE3249732450072FBEA /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxCocoa.framework; path = Carthage/Build/iOS/RxCocoa.framework; sourceTree = ""; }; - FA35FEEB249732900072FBEA /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxCocoa.framework; path = Carthage/Build/tvOS/RxCocoa.framework; sourceTree = ""; }; - FA35FEEC249732900072FBEA /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxSwift.framework; path = Carthage/Build/tvOS/RxSwift.framework; sourceTree = ""; }; - FA35FEF2249732AA0072FBEA /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxCocoa.framework; path = Carthage/Build/Mac/RxCocoa.framework; sourceTree = ""; }; - FA35FEF3249732AA0072FBEA /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxSwift.framework; path = Carthage/Build/Mac/RxSwift.framework; sourceTree = ""; }; - FA35FEF9249732B90072FBEA /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxSwift.framework; path = Carthage/Build/watchOS/RxSwift.framework; sourceTree = ""; }; - FA35FEFA249732B90072FBEA /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RxCocoa.framework; path = Carthage/Build/watchOS/RxCocoa.framework; sourceTree = ""; }; + CF29D4242ACBB88700FF238B /* RxBlocking.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RxBlocking.xcframework; path = Carthage/Build/RxBlocking.xcframework; sourceTree = ""; }; + CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RxSwift.xcframework; path = Carthage/Build/RxSwift.xcframework; sourceTree = ""; }; + CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RxCocoa.xcframework; path = Carthage/Build/RxCocoa.xcframework; sourceTree = ""; }; + CF8C4CB42ACBB1C2007FE582 /* RxTest.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RxTest.xcframework; path = Carthage/Build/RxTest.xcframework; sourceTree = ""; }; + CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RxRelay.xcframework; path = Carthage/Build/RxRelay.xcframework; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -161,8 +157,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FA35FEEF249732900072FBEA /* RxSwift.framework in Frameworks */, - FA35FEED249732900072FBEA /* RxCocoa.framework in Frameworks */, + CF8C4CB82ACBB1EF007FE582 /* RxRelay.xcframework in Frameworks */, + CF8C4CA12ACBB14B007FE582 /* RxSwift.xcframework in Frameworks */, + CF8C4C9F2ACBB14B007FE582 /* RxCocoa.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -170,8 +167,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FA35FEF6249732AA0072FBEA /* RxSwift.framework in Frameworks */, - FA35FEF4249732AA0072FBEA /* RxCocoa.framework in Frameworks */, + CF8C4CBB2ACBB1FA007FE582 /* RxRelay.xcframework in Frameworks */, + CF8C4CA62ACBB15A007FE582 /* RxSwift.xcframework in Frameworks */, + CF8C4CA42ACBB15A007FE582 /* RxCocoa.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -179,8 +177,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FA35FEFD249732B90072FBEA /* RxCocoa.framework in Frameworks */, - FA35FEFB249732B90072FBEA /* RxSwift.framework in Frameworks */, + CF8C4CBE2ACBB205007FE582 /* RxRelay.xcframework in Frameworks */, + CF8C4CAB2ACBB17F007FE582 /* RxSwift.xcframework in Frameworks */, + CF8C4CA92ACBB17F007FE582 /* RxCocoa.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -188,9 +187,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C41CE72E22283BEE0006E722 /* Quick.framework in Frameworks */, - C41CE73122283BEE0006E722 /* Nimble.framework in Frameworks */, - C41CE73322283BEE0006E722 /* RxTest.framework in Frameworks */, + CF23D7362ACBB6530007A649 /* Quick in Frameworks */, + CF23D73B2ACBB6850007A649 /* Nimble in Frameworks */, + CF29D4252ACBB88700FF238B /* RxBlocking.xcframework in Frameworks */, + CF8C4CB52ACBB1C2007FE582 /* RxTest.xcframework in Frameworks */, 3DD965C01F5DC0E400C180FE /* Action.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -199,8 +199,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C41CE71F22283BBA0006E722 /* Nimble.framework in Frameworks */, - C41CE72122283BBA0006E722 /* Quick.framework in Frameworks */, + CF23D7392ACBB67A0007A649 /* Nimble in Frameworks */, + CF8C4CC62ACBB637007FE582 /* Quick in Frameworks */, + CF23D73C2ACBB6D20007A649 /* RxTest.xcframework in Frameworks */, 7F612AA01D7F103A00B93BC5 /* Action.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -217,8 +218,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FA35FEE6249732450072FBEA /* RxCocoa.framework in Frameworks */, - FA35FEE4249732450072FBEA /* RxSwift.framework in Frameworks */, + CF8C4CB72ACBB1E2007FE582 /* RxRelay.xcframework in Frameworks */, + CF8C4C9A2ACBB139007FE582 /* RxSwift.xcframework in Frameworks */, + CF8C4C9C2ACBB139007FE582 /* RxCocoa.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -298,19 +300,11 @@ 7F5E6A5C1D7F06C4000B6076 /* Frameworks */ = { isa = PBXGroup; children = ( - FA35FEEB249732900072FBEA /* RxCocoa.framework */, - FA35FEFA249732B90072FBEA /* RxCocoa.framework */, - FA35FEEC249732900072FBEA /* RxSwift.framework */, - FA35FEE3249732450072FBEA /* RxCocoa.framework */, - FA35FEE2249732450072FBEA /* RxSwift.framework */, - FA35FEF2249732AA0072FBEA /* RxCocoa.framework */, - FA35FEF3249732AA0072FBEA /* RxSwift.framework */, - FA35FEF9249732B90072FBEA /* RxSwift.framework */, - C41CE72922283BEE0006E722 /* Nimble.framework */, - C41CE72622283BEE0006E722 /* Quick.framework */, - C41CE72B22283BEE0006E722 /* RxTest.framework */, - C41CE71A22283BB90006E722 /* Nimble.framework */, - C41CE71C22283BB90006E722 /* Quick.framework */, + CF29D4242ACBB88700FF238B /* RxBlocking.xcframework */, + CF8C4CB62ACBB1E2007FE582 /* RxRelay.xcframework */, + CF8C4CB42ACBB1C2007FE582 /* RxTest.xcframework */, + CF8C4C992ACBB139007FE582 /* RxCocoa.xcframework */, + CF8C4C982ACBB139007FE582 /* RxSwift.xcframework */, ); name = Frameworks; sourceTree = ""; @@ -351,9 +345,7 @@ 7F5E6A5C1D7F06C4000B6076 /* Frameworks */, C4E0263F20D119EE00C8164C /* Action.podspec */, C4E0264020D11A0F00C8164C /* Cartfile */, - C4E0264120D11A0F00C8164C /* Cartfile.private */, C4E0264220D11A3B00C8164C /* Readme.md */, - C4E0264320D11CDD00C8164C /* circle.yml */, C4E0264420D1244900C8164C /* Changelog.md */, ); sourceTree = ""; @@ -478,6 +470,10 @@ 3DD965C21F5DC0E400C180FE /* PBXTargetDependency */, ); name = "macOS-Tests"; + packageProductDependencies = ( + CF23D7352ACBB6530007A649 /* Quick */, + CF23D73A2ACBB6850007A649 /* Nimble */, + ); productName = "Tests-macOS1"; productReference = 3DD965BB1F5DC0E400C180FE /* macOS-Tests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; @@ -497,6 +493,10 @@ 7F5E6A6E1D7F08D2000B6076 /* PBXTargetDependency */, ); name = "iOS-Tests"; + packageProductDependencies = ( + CF8C4CC52ACBB637007FE582 /* Quick */, + CF23D7382ACBB67A0007A649 /* Nimble */, + ); productName = Tests; productReference = 7F5E6A671D7F08D2000B6076 /* iOS-Tests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; @@ -508,7 +508,6 @@ 7F612AC81D7F13B800B93BC5 /* Sources */, 7F612AC91D7F13B800B93BC5 /* Frameworks */, 7F612ACA1D7F13B800B93BC5 /* Resources */, - FC9C416A215A99C600541C4B /* ShellScript */, ); buildRules = ( ); @@ -589,6 +588,10 @@ Base, ); mainGroup = BE73AD161CDCD101006F8B98; + packageReferences = ( + CF8C4CC42ACBB637007FE582 /* XCRemoteSwiftPackageReference "Quick" */, + CF23D7372ACBB67A0007A649 /* XCRemoteSwiftPackageReference "Nimble" */, + ); productRefGroup = BE73AD211CDCD101006F8B98 /* Products */; projectDirPath = ""; projectRoot = ""; @@ -659,28 +662,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - FC9C416A215A99C600541C4B /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "$(SRCROOT)/Carthage/Build/iOS/RxSwift.framework", - "$(SRCROOT)/Carthage/Build/iOS/RxCocoa.framework", - ); - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/usr/local/bin/carthage copy-frameworks\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ 1FCDDA561EAC315A006EB95B /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -815,19 +796,19 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 9.0; }; @@ -843,18 +824,18 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; SDKROOT = appletvos; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 9.0; }; @@ -873,15 +854,15 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); FRAMEWORK_VERSION = A; GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.15; PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -905,15 +886,15 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); FRAMEWORK_VERSION = A; GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.15; PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -934,19 +915,19 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; SDKROOT = watchos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 4; WATCHOS_DEPLOYMENT_TARGET = 3.0; }; @@ -963,18 +944,18 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = jp.toshi0383.Action; PRODUCT_NAME = Action; SDKROOT = watchos; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 4; WATCHOS_DEPLOYMENT_TARGET = 3.0; }; @@ -994,15 +975,16 @@ CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); GCC_C_LANGUAGE_STANDARD = gnu11; GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INFOPLIST_FILE = Tests/ActionTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks $(PROJECT_DIR)/Carthage/Build/Mac"; - MACOSX_DEPLOYMENT_TARGET = 10.12; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + MACOSX_DEPLOYMENT_TARGET = 10.15; PRODUCT_BUNDLE_IDENTIFIER = "com.ashfurrow.Tests-macOS"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; @@ -1025,15 +1007,16 @@ CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); GCC_C_LANGUAGE_STANDARD = gnu11; GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INFOPLIST_FILE = Tests/ActionTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks $(PROJECT_DIR)/Carthage/Build/Mac"; - MACOSX_DEPLOYMENT_TARGET = 10.12; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + MACOSX_DEPLOYMENT_TARGET = 10.15; PRODUCT_BUNDLE_IDENTIFIER = "com.ashfurrow.Tests-macOS"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; @@ -1048,13 +1031,15 @@ CLANG_ENABLE_MODULES = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_SUSPICIOUS_MOVES = YES; - FRAMEWORK_SEARCH_PATHS = ( + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; + INFOPLIST_FILE = Tests/ActionTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", "$(PROJECT_DIR)/Carthage/Build/iOS", ); - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; - INFOPLIST_FILE = Tests/ActionTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(PROJECT_DIR)/Carthage/Build/iOS"; PRODUCT_BUNDLE_IDENTIFIER = "-.Tests"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; @@ -1070,13 +1055,15 @@ CLANG_ENABLE_MODULES = YES; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_SUSPICIOUS_MOVES = YES; - FRAMEWORK_SEARCH_PATHS = ( + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; + INFOPLIST_FILE = Tests/ActionTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; + LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", "$(PROJECT_DIR)/Carthage/Build/iOS", ); - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; - INFOPLIST_FILE = Tests/ActionTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks $(PROJECT_DIR)/Carthage/Build/iOS"; PRODUCT_BUNDLE_IDENTIFIER = "-.Tests"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; @@ -1089,13 +1076,12 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_SUSPICIOUS_MOVES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "-.Demo"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; @@ -1108,13 +1094,12 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_SUSPICIOUS_MOVES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "-.Demo"; PRODUCT_NAME = "$(TARGET_NAME)"; }; @@ -1175,7 +1160,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -1229,8 +1214,9 @@ IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.2; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -1247,14 +1233,13 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.Action; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -1272,14 +1257,13 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.ashfurrow.Action; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -1363,6 +1347,48 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + CF23D7372ACBB67A0007A649 /* XCRemoteSwiftPackageReference "Nimble" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/Quick/Nimble.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 12.3.0; + }; + }; + CF8C4CC42ACBB637007FE582 /* XCRemoteSwiftPackageReference "Quick" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/Quick/Quick.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 7.3.0; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + CF23D7352ACBB6530007A649 /* Quick */ = { + isa = XCSwiftPackageProductDependency; + package = CF8C4CC42ACBB637007FE582 /* XCRemoteSwiftPackageReference "Quick" */; + productName = Quick; + }; + CF23D7382ACBB67A0007A649 /* Nimble */ = { + isa = XCSwiftPackageProductDependency; + package = CF23D7372ACBB67A0007A649 /* XCRemoteSwiftPackageReference "Nimble" */; + productName = Nimble; + }; + CF23D73A2ACBB6850007A649 /* Nimble */ = { + isa = XCSwiftPackageProductDependency; + package = CF23D7372ACBB67A0007A649 /* XCRemoteSwiftPackageReference "Nimble" */; + productName = Nimble; + }; + CF8C4CC52ACBB637007FE582 /* Quick */ = { + isa = XCSwiftPackageProductDependency; + package = CF8C4CC42ACBB637007FE582 /* XCRemoteSwiftPackageReference "Quick" */; + productName = Quick; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = BE73AD171CDCD101006F8B98 /* Project object */; } diff --git a/Action.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Action.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 00000000..ce7457a9 --- /dev/null +++ b/Action.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,41 @@ +{ + "pins" : [ + { + "identity" : "cwlcatchexception", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlCatchException.git", + "state" : { + "revision" : "3b123999de19bf04905bc1dfdb76f817b0f2cc00", + "version" : "2.1.2" + } + }, + { + "identity" : "cwlpreconditiontesting", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlPreconditionTesting.git", + "state" : { + "revision" : "a23ded2c91df9156628a6996ab4f347526f17b6b", + "version" : "2.1.2" + } + }, + { + "identity" : "nimble", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Quick/Nimble.git", + "state" : { + "revision" : "edaedc1ec86f14ac6e2ca495b94f0ff7150d98d0", + "version" : "12.3.0" + } + }, + { + "identity" : "quick", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Quick/Quick.git", + "state" : { + "revision" : "ef9aaf3f634b3a1ab6f54f1173fe2400b36e7cb8", + "version" : "7.3.0" + } + } + ], + "version" : 2 +} diff --git a/Cartfile.private b/Cartfile.private deleted file mode 100644 index c2786fb0..00000000 --- a/Cartfile.private +++ /dev/null @@ -1,2 +0,0 @@ -github "Quick/Quick" -github "Quick/Nimble" diff --git a/Cartfile.resolved b/Cartfile.resolved index f8760ef9..80bb22d8 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1,3 +1 @@ -github "Quick/Nimble" "v9.0.0" -github "Quick/Quick" "v3.1.2" -github "ReactiveX/RxSwift" "6.1.0" +github "ReactiveX/RxSwift" "6.6.0" diff --git a/Package.resolved b/Package.resolved index 402d4d2f..a89d00ca 100644 --- a/Package.resolved +++ b/Package.resolved @@ -6,8 +6,8 @@ "repositoryURL": "https://github.com/ReactiveX/RxSwift.git", "state": { "branch": null, - "revision": "002d325b0bdee94e7882e1114af5ff4fe1e96afa", - "version": "5.1.1" + "revision": "9dcaa4b333db437b0fbfaf453fad29069044a8b4", + "version": "6.6.0" } } ] diff --git a/Tests/ActionTests.swift b/Tests/ActionTests.swift index 2ae9d4cf..bb60a2b3 100644 --- a/Tests/ActionTests.swift +++ b/Tests/ActionTests.swift @@ -5,7 +5,7 @@ import RxTest @testable import Action class ActionTests: QuickSpec { - override func spec() { + override class func spec() { var scheduler: TestScheduler! var disposeBag: DisposeBag! diff --git a/Tests/Nimble+RxTest+Ext.swift b/Tests/Nimble+RxTest+Ext.swift index 6b65bdb5..83c622e4 100644 --- a/Tests/Nimble+RxTest+Ext.swift +++ b/Tests/Nimble+RxTest+Ext.swift @@ -38,7 +38,7 @@ extension PredicateResult { } } -public func match(_ expected: T) -> Predicate where T: Equatable { +public func match(_ expected: T) -> Nimble.Predicate where T: Equatable { return Predicate { events in guard let source = try events.evaluate() else { @@ -54,7 +54,7 @@ public func match(_ expected: T) -> Predicate where T: Equatable { } } -public func match(_ expected: [Recorded>]) -> Predicate<[Recorded>]> where T: Equatable { +public func match(_ expected: [Recorded>]) -> Nimble.Predicate<[Recorded>]> where T: Equatable { return Predicate { events in guard let source = try events.evaluate() else { @@ -78,7 +78,7 @@ public func match(_ expected: [Recorded>]) -> Predicate<[Recorded(with expectedErrors: [Recorded>]) -> Predicate<[Recorded>]> where E: Equatable { +public func match(with expectedErrors: [Recorded>]) -> Nimble.Predicate<[Recorded>]> where E: Equatable { return Predicate { events in guard let source = try events.evaluate() else { return PredicateResult.evaluationFailed diff --git a/Tests/iOS-Tests/AlertActionTests.swift b/Tests/iOS-Tests/AlertActionTests.swift index fa8c21dc..bd53957d 100644 --- a/Tests/iOS-Tests/AlertActionTests.swift +++ b/Tests/iOS-Tests/AlertActionTests.swift @@ -1,10 +1,11 @@ import Quick import Nimble import RxSwift +import UIKit import Action class AlertActionTests: QuickSpec { - override func spec() { + override class func spec() { it("is nil by default") { let subject = UIAlertAction.Action("Hi", style: .default) expect(subject.rx.action).to(beNil()) diff --git a/Tests/iOS-Tests/BarButtonTests.swift b/Tests/iOS-Tests/BarButtonTests.swift index d1c11231..72d65f3d 100644 --- a/Tests/iOS-Tests/BarButtonTests.swift +++ b/Tests/iOS-Tests/BarButtonTests.swift @@ -1,10 +1,11 @@ import Quick import Nimble import RxSwift +import UIKit import Action class BarButtonTests: QuickSpec { - override func spec() { + override class func spec() { it("is nil by default") { let subject = UIBarButtonItem(barButtonSystemItem: .save, target: nil, action: nil) diff --git a/Tests/iOS-Tests/BindToTests.swift b/Tests/iOS-Tests/BindToTests.swift index c7e11278..e776b1fb 100644 --- a/Tests/iOS-Tests/BindToTests.swift +++ b/Tests/iOS-Tests/BindToTests.swift @@ -3,17 +3,18 @@ import Nimble import RxSwift import RxCocoa import RxTest +import UIKit import Action extension UIButton { - // Normally I'd use subject.sendActionsForControlEvents(.TouchUpInside) but it's not working - func test_executeTap() { - for case let target as NSObject in allTargets { - for action in actions(forTarget: target, forControlEvent: .touchUpInside) ?? [] { - target.perform(Selector(action), with: self) - } - } - } + // Normally I'd use subject.sendActionsForControlEvents(.TouchUpInside) but it's not working + func test_executeTap() { + for case let target as NSObject in allTargets { + for action in actions(forTarget: target, forControlEvent: .touchUpInside) ?? [] { + target.perform(Selector(action), with: self) + } + } + } } extension UIRefreshControl { @@ -28,77 +29,77 @@ extension UIRefreshControl { } class BindToTests: QuickSpec { - override func spec() { - it("actives a UIButton") { - var called = false - let button = UIButton() - let action = Action(workFactory: { _ in - called = true - return .empty() - }) - button.rx.bind(to: action, input: "Hi there!") - // Setting the action has an asynchronous effect of adding a target. - expect(button.allTargets.count) == 1 - - button.test_executeTap() - - expect(called).toEventually( beTrue() ) - } - - it("does not retain UIButton") { - var button: UIButton? = UIButton() - let action = Action(workFactory: { _ in - return .empty() - }) - button?.rx.bind(to: action, input: "Hi there!") - - weak var buttonWeakReference = button - button = nil - - expect(buttonWeakReference).to(beNil()) - } - - it("activates a generic control event") { - var called = false - let button = UIButton() - let action = Action(workFactory: { _ in - called = true - return .empty() - }) - button.rx.bind(to: action, controlEvent: button.rx.tap, inputTransform: { input in "\(input)" }) - // Setting the action has an asynchronous effect of adding a target. - expect(button.allTargets.count) == 1 - - button.test_executeTap() - - expect(called).toEventually( beTrue() ) - } - - it("actives a UIBarButtonItem") { - var called = false - let item = UIBarButtonItem() - let action = Action(workFactory: { _ in - called = true - return .empty() - }) - item.rx.bind(to: action, input: "Hi there!") - - _ = item.target!.perform(item.action!, with: item) - - expect(called).toEventually( beTrue() ) - } + override class func spec() { + it("actives a UIButton") { + var called = false + let button = UIButton() + let action = Action(workFactory: { _ in + called = true + return .empty() + }) + button.rx.bind(to: action, input: "Hi there!") + // Setting the action has an asynchronous effect of adding a target. + expect(button.allTargets.count) == 1 + + button.test_executeTap() + + expect(called).toEventually( beTrue() ) + } + + it("does not retain UIButton") { + var button: UIButton? = UIButton() + let action = Action(workFactory: { _ in + return .empty() + }) + button?.rx.bind(to: action, input: "Hi there!") + + weak var buttonWeakReference = button + button = nil + + expect(buttonWeakReference).to(beNil()) + } + + it("activates a generic control event") { + var called = false + let button = UIButton() + let action = Action(workFactory: { _ in + called = true + return .empty() + }) + button.rx.bind(to: action, controlEvent: button.rx.tap, inputTransform: { input in "\(input)" }) + // Setting the action has an asynchronous effect of adding a target. + expect(button.allTargets.count) == 1 + + button.test_executeTap() + + expect(called).toEventually( beTrue() ) + } + + it("actives a UIBarButtonItem") { + var called = false + let item = UIBarButtonItem() + let action = Action(workFactory: { _ in + called = true + return .empty() + }) + item.rx.bind(to: action, input: "Hi there!") + + _ = item.target!.perform(item.action!, with: item) + + expect(called).toEventually( beTrue() ) + } it("does not retain UIBarButtonItem") { - var barButtonItem: UIBarButtonItem? = UIBarButtonItem(barButtonSystemItem: .save, target: nil, action: nil) - let action = Action(workFactory: { _ in - return .empty() - }) - barButtonItem?.rx.bind(to: action, input: "Hi there!") + var barButtonItem: UIBarButtonItem? = UIBarButtonItem(barButtonSystemItem: .save, target: nil, action: nil) + let action = Action(workFactory: { _ in + return .empty() + }) + barButtonItem?.rx.bind(to: action, input: "Hi there!") - weak var barButtonItemWeakReference = barButtonItem - barButtonItem = nil + weak var barButtonItemWeakReference = barButtonItem + barButtonItem = nil - expect(barButtonItemWeakReference).to(beNil()) + expect(barButtonItemWeakReference).to(beNil()) } it("actives a UIRefreshControl") { @@ -116,34 +117,34 @@ class BindToTests: QuickSpec { } it("does not retain UIRefreshControl") { - var refreshControl: UIRefreshControl? = UIRefreshControl() - let action = Action(workFactory: { _ in - return .empty() - }) - refreshControl?.rx.bind(to: action, input: "Hi there!") + var refreshControl: UIRefreshControl? = UIRefreshControl() + let action = Action(workFactory: { _ in + return .empty() + }) + refreshControl?.rx.bind(to: action, input: "Hi there!") - weak var refreshControlWeakReference = refreshControl - refreshControl = nil + weak var refreshControlWeakReference = refreshControl + refreshControl = nil - expect(refreshControlWeakReference).to(beNil()) + expect(refreshControlWeakReference).to(beNil()) } - describe("unbinding") { - it("unbinds actions for UIButton") { - let button = UIButton() - let action = Action(workFactory: { _ in - assertionFailure() - return .empty() - }) - button.rx.bind(to: action, input: "Hi there!") - // Setting the action has an asynchronous effect of adding a target. - expect(button.allTargets.count) == 1 + describe("unbinding") { + it("unbinds actions for UIButton") { + let button = UIButton() + let action = Action(workFactory: { _ in + assertionFailure() + return .empty() + }) + button.rx.bind(to: action, input: "Hi there!") + // Setting the action has an asynchronous effect of adding a target. + expect(button.allTargets.count) == 1 - button.rx.unbindAction() - button.test_executeTap() + button.rx.unbindAction() + button.test_executeTap() - expect(button.allTargets.count) == 0 - } + expect(button.allTargets.count) == 0 + } it("unbinds actions for UIRefreshControl") { let refreshControl = UIRefreshControl() @@ -161,20 +162,20 @@ class BindToTests: QuickSpec { expect(refreshControl.allTargets.count) == 0 } - it("unbinds actions for UIBarButtonItem") { - var called = false - let item = UIBarButtonItem() - let action = Action(workFactory: { _ in - called = true - return .empty() - }) - item.rx.bind(to: action, input: "Hi there!") - - item.rx.unbindAction() - _ = item.target?.perform(item.action!, with: item) - - expect(called).to( beFalse() ) - } - } - } + it("unbinds actions for UIBarButtonItem") { + var called = false + let item = UIBarButtonItem() + let action = Action(workFactory: { _ in + called = true + return .empty() + }) + item.rx.bind(to: action, input: "Hi there!") + + item.rx.unbindAction() + _ = item.target?.perform(item.action!, with: item) + + expect(called).to( beFalse() ) + } + } + } } diff --git a/Tests/iOS-Tests/ButtonTests.swift b/Tests/iOS-Tests/ButtonTests.swift index 6eab9abf..740c8609 100644 --- a/Tests/iOS-Tests/ButtonTests.swift +++ b/Tests/iOS-Tests/ButtonTests.swift @@ -1,10 +1,11 @@ import Quick import Nimble import RxSwift +import UIKit import Action class ButtonTests: QuickSpec { - override func spec() { + override class func spec() { it("is nil by default") { let subject = UIButton(type: .system) diff --git a/Tests/iOS-Tests/RefreshControlTests.swift b/Tests/iOS-Tests/RefreshControlTests.swift index 996f43fd..2a831ff6 100644 --- a/Tests/iOS-Tests/RefreshControlTests.swift +++ b/Tests/iOS-Tests/RefreshControlTests.swift @@ -1,10 +1,11 @@ import Quick import Nimble import RxSwift +import UIKit import Action class RefreshControlTests: QuickSpec { - override func spec() { + override class func spec() { it("is nil by default") { let subject = UIRefreshControl() diff --git a/Tests/macOS-Tests/BindToTests.swift b/Tests/macOS-Tests/BindToTests.swift index b12135f7..a7c8922b 100644 --- a/Tests/macOS-Tests/BindToTests.swift +++ b/Tests/macOS-Tests/BindToTests.swift @@ -4,6 +4,7 @@ import RxSwift import RxCocoa import RxBlocking import RxTest +import AppKit import Action extension NSButton { @@ -15,7 +16,7 @@ extension NSButton { } class BindToTests: QuickSpec { - override func spec() { + override class func spec() { it("actives a NSButton") { var called = false let button = NSButton() diff --git a/Tests/macOS-Tests/NSButtonTests.swift b/Tests/macOS-Tests/NSButtonTests.swift index b6abbe8f..a53afd21 100644 --- a/Tests/macOS-Tests/NSButtonTests.swift +++ b/Tests/macOS-Tests/NSButtonTests.swift @@ -6,7 +6,7 @@ import RxBlocking import Action class NSButtonTests: QuickSpec { - override func spec() { + override class func spec() { it("is nil by default") { let subject = NSButton()