Skip to content

Commit 1eb30c7

Browse files
authored
Merge pull request #31 from CodaFi/return-of-the-stm
Rewrite the STM
2 parents c1f9c32 + db2cade commit 1eb30c7

33 files changed

+1974
-472
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ DerivedData
1717
*.ipa
1818
*.xcuserstate
1919
*.xcscmblueprint
20-
Cartfile.resolved
2120
Carthage/
2221

2322
# CocoaPods

.travis.yml

Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,48 @@
1-
language: objective-c
2-
osx_image: xcode7.1
3-
before_install: true
4-
install: true
5-
script: script/cibuild Concurrent Concurrent-iOS
1+
env:
2+
global:
3+
- LC_CTYPE=en_US.UTF-8
4+
matrix:
5+
include:
6+
- os: osx
7+
language: objective-c
8+
osx_image: xcode7.3
9+
before_install:
10+
- git submodule update --init --recursive
11+
script:
12+
# Restore pod build before shipping for 3.0
13+
# - pod lib lint
14+
- carthage build --no-skip-current
15+
- os: osx
16+
language: objective-c
17+
osx_image: xcode7.3
18+
before_install:
19+
- git submodule update --init --recursive
20+
script:
21+
- set -o pipefail
22+
- xcodebuild test -scheme Concurrent | xcpretty -c
23+
# !!!: Make sure desired device name & OS version are suitable for the Xcode version installed on osx_image
24+
- iOS_DEVICE_NAME="iPad Pro"
25+
- iOS_RUNTIME_VERSION="9.3"
26+
# Get simulator identifier for desired device/runtime pair
27+
- SIMULATOR_ID=$(xcrun instruments -s | grep -o "${iOS_DEVICE_NAME} (${iOS_RUNTIME_VERSION}) \[.*\]" | grep -o "\[.*\]" | sed "s/^\[\(.*\)\]$/\1/")
28+
- echo $SIMULATOR_ID
29+
- echo $iOS_DEVICE_NAME
30+
- echo $iOS_RUNTIME_VERSION
31+
- xcodebuild test -scheme Concurrent-iOS -destination "platform=iOS Simulator,name=${iOS_DEVICE_NAME},OS=${iOS_RUNTIME_VERSION}" | xcpretty -c
32+
- xcodebuild test -scheme Concurrent-tvOS -destination 'platform=tvOS Simulator,name=Apple TV 1080p' | xcpretty -c
33+
- os: linux
34+
language: generic
35+
sudo: required
36+
dist: trusty
37+
before_install:
38+
- git submodule update --init --recursive
39+
- wget -q -O - https://swift.org/keys/all-keys.asc | gpg --import -
40+
- wget https://swift.org/builds/swift-2.2.1-release/ubuntu1404/swift-2.2.1-RELEASE/swift-2.2.1-RELEASE-ubuntu14.04.tar.gz
41+
- tar xzf swift-2.2.1-RELEASE-ubuntu14.04.tar.gz
42+
- export PATH=${PWD}/swift-2.2.1-RELEASE-ubuntu14.04/usr/bin:"${PATH}"
43+
script:
44+
# Uncomment when releasing Swift 3.0
45+
# - swift build
646
notifications:
747
webhooks:
848
urls:

Cartfile.resolved

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github "typelift/SwiftCheck" "v0.6.2"

Carthage/Checkouts/SwiftCheck

Submodule SwiftCheck updated 63 files

Concurrent.xcodeproj/project.pbxproj

Lines changed: 536 additions & 4 deletions
Large diffs are not rendered by default.

Concurrent.xcodeproj/xcshareddata/xcschemes/Concurrent-iOS.xcscheme

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0700"
3+
LastUpgradeVersion = "0800"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -37,10 +37,10 @@
3737
</BuildActionEntries>
3838
</BuildAction>
3939
<TestAction
40+
buildConfiguration = "Debug"
4041
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
4142
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
42-
shouldUseLaunchSchemeArgsEnv = "YES"
43-
buildConfiguration = "Debug">
43+
shouldUseLaunchSchemeArgsEnv = "YES">
4444
<Testables>
4545
<TestableReference
4646
skipped = "NO">
@@ -66,11 +66,11 @@
6666
</AdditionalOptions>
6767
</TestAction>
6868
<LaunchAction
69+
buildConfiguration = "Debug"
6970
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
7071
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
7172
launchStyle = "0"
7273
useCustomWorkingDirectory = "NO"
73-
buildConfiguration = "Debug"
7474
ignoresPersistentStateOnLaunch = "NO"
7575
debugDocumentVersioning = "YES"
7676
debugServiceExtension = "internal"
@@ -88,10 +88,10 @@
8888
</AdditionalOptions>
8989
</LaunchAction>
9090
<ProfileAction
91+
buildConfiguration = "Release"
9192
shouldUseLaunchSchemeArgsEnv = "YES"
9293
savedToolIdentifier = ""
9394
useCustomWorkingDirectory = "NO"
94-
buildConfiguration = "Release"
9595
debugDocumentVersioning = "YES">
9696
<MacroExpansion>
9797
<BuildableReference
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "0800"
4+
version = "1.3">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES">
8+
<BuildActionEntries>
9+
<BuildActionEntry
10+
buildForTesting = "YES"
11+
buildForRunning = "YES"
12+
buildForProfiling = "YES"
13+
buildForArchiving = "YES"
14+
buildForAnalyzing = "YES">
15+
<BuildableReference
16+
BuildableIdentifier = "primary"
17+
BlueprintIdentifier = "82AA03FD1D7B206300DD3037"
18+
BuildableName = "Concurrent-tvOS.framework"
19+
BlueprintName = "Concurrent-tvOS"
20+
ReferencedContainer = "container:Concurrent.xcodeproj">
21+
</BuildableReference>
22+
</BuildActionEntry>
23+
</BuildActionEntries>
24+
</BuildAction>
25+
<TestAction
26+
buildConfiguration = "Debug"
27+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
shouldUseLaunchSchemeArgsEnv = "YES">
30+
<Testables>
31+
<TestableReference
32+
skipped = "NO">
33+
<BuildableReference
34+
BuildableIdentifier = "primary"
35+
BlueprintIdentifier = "82AA04051D7B206300DD3037"
36+
BuildableName = "Concurrent-tvOSTests.xctest"
37+
BlueprintName = "Concurrent-tvOSTests"
38+
ReferencedContainer = "container:Concurrent.xcodeproj">
39+
</BuildableReference>
40+
</TestableReference>
41+
</Testables>
42+
<MacroExpansion>
43+
<BuildableReference
44+
BuildableIdentifier = "primary"
45+
BlueprintIdentifier = "82AA03FD1D7B206300DD3037"
46+
BuildableName = "Concurrent-tvOS.framework"
47+
BlueprintName = "Concurrent-tvOS"
48+
ReferencedContainer = "container:Concurrent.xcodeproj">
49+
</BuildableReference>
50+
</MacroExpansion>
51+
<AdditionalOptions>
52+
</AdditionalOptions>
53+
</TestAction>
54+
<LaunchAction
55+
buildConfiguration = "Debug"
56+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
57+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
58+
launchStyle = "0"
59+
useCustomWorkingDirectory = "NO"
60+
ignoresPersistentStateOnLaunch = "NO"
61+
debugDocumentVersioning = "YES"
62+
debugServiceExtension = "internal"
63+
allowLocationSimulation = "YES">
64+
<MacroExpansion>
65+
<BuildableReference
66+
BuildableIdentifier = "primary"
67+
BlueprintIdentifier = "82AA03FD1D7B206300DD3037"
68+
BuildableName = "Concurrent-tvOS.framework"
69+
BlueprintName = "Concurrent-tvOS"
70+
ReferencedContainer = "container:Concurrent.xcodeproj">
71+
</BuildableReference>
72+
</MacroExpansion>
73+
<AdditionalOptions>
74+
</AdditionalOptions>
75+
</LaunchAction>
76+
<ProfileAction
77+
buildConfiguration = "Release"
78+
shouldUseLaunchSchemeArgsEnv = "YES"
79+
savedToolIdentifier = ""
80+
useCustomWorkingDirectory = "NO"
81+
debugDocumentVersioning = "YES">
82+
<MacroExpansion>
83+
<BuildableReference
84+
BuildableIdentifier = "primary"
85+
BlueprintIdentifier = "82AA03FD1D7B206300DD3037"
86+
BuildableName = "Concurrent-tvOS.framework"
87+
BlueprintName = "Concurrent-tvOS"
88+
ReferencedContainer = "container:Concurrent.xcodeproj">
89+
</BuildableReference>
90+
</MacroExpansion>
91+
</ProfileAction>
92+
<AnalyzeAction
93+
buildConfiguration = "Debug">
94+
</AnalyzeAction>
95+
<ArchiveAction
96+
buildConfiguration = "Release"
97+
revealArchiveInOrganizer = "YES">
98+
</ArchiveAction>
99+
</Scheme>
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "0800"
4+
version = "1.3">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES">
8+
<BuildActionEntries>
9+
<BuildActionEntry
10+
buildForTesting = "YES"
11+
buildForRunning = "YES"
12+
buildForProfiling = "YES"
13+
buildForArchiving = "YES"
14+
buildForAnalyzing = "YES">
15+
<BuildableReference
16+
BuildableIdentifier = "primary"
17+
BlueprintIdentifier = "82AA041D1D7B206C00DD3037"
18+
BuildableName = "Concurrent-watchOS.framework"
19+
BlueprintName = "Concurrent-watchOS"
20+
ReferencedContainer = "container:Concurrent.xcodeproj">
21+
</BuildableReference>
22+
</BuildActionEntry>
23+
</BuildActionEntries>
24+
</BuildAction>
25+
<TestAction
26+
buildConfiguration = "Debug"
27+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
shouldUseLaunchSchemeArgsEnv = "YES">
30+
<Testables>
31+
</Testables>
32+
<AdditionalOptions>
33+
</AdditionalOptions>
34+
</TestAction>
35+
<LaunchAction
36+
buildConfiguration = "Debug"
37+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
38+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
39+
launchStyle = "0"
40+
useCustomWorkingDirectory = "NO"
41+
ignoresPersistentStateOnLaunch = "NO"
42+
debugDocumentVersioning = "YES"
43+
debugServiceExtension = "internal"
44+
allowLocationSimulation = "YES">
45+
<MacroExpansion>
46+
<BuildableReference
47+
BuildableIdentifier = "primary"
48+
BlueprintIdentifier = "82AA041D1D7B206C00DD3037"
49+
BuildableName = "Concurrent-watchOS.framework"
50+
BlueprintName = "Concurrent-watchOS"
51+
ReferencedContainer = "container:Concurrent.xcodeproj">
52+
</BuildableReference>
53+
</MacroExpansion>
54+
<AdditionalOptions>
55+
</AdditionalOptions>
56+
</LaunchAction>
57+
<ProfileAction
58+
buildConfiguration = "Release"
59+
shouldUseLaunchSchemeArgsEnv = "YES"
60+
savedToolIdentifier = ""
61+
useCustomWorkingDirectory = "NO"
62+
debugDocumentVersioning = "YES">
63+
<MacroExpansion>
64+
<BuildableReference
65+
BuildableIdentifier = "primary"
66+
BlueprintIdentifier = "82AA041D1D7B206C00DD3037"
67+
BuildableName = "Concurrent-watchOS.framework"
68+
BlueprintName = "Concurrent-watchOS"
69+
ReferencedContainer = "container:Concurrent.xcodeproj">
70+
</BuildableReference>
71+
</MacroExpansion>
72+
</ProfileAction>
73+
<AnalyzeAction
74+
buildConfiguration = "Debug">
75+
</AnalyzeAction>
76+
<ArchiveAction
77+
buildConfiguration = "Release"
78+
revealArchiveInOrganizer = "YES">
79+
</ArchiveAction>
80+
</Scheme>

Concurrent.xcodeproj/xcshareddata/xcschemes/Concurrent.xcscheme

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0700"
3+
LastUpgradeVersion = "0800"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -37,10 +37,10 @@
3737
</BuildActionEntries>
3838
</BuildAction>
3939
<TestAction
40+
buildConfiguration = "Debug"
4041
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
4142
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
42-
shouldUseLaunchSchemeArgsEnv = "YES"
43-
buildConfiguration = "Debug">
43+
shouldUseLaunchSchemeArgsEnv = "YES">
4444
<Testables>
4545
<TestableReference
4646
skipped = "NO">
@@ -66,11 +66,11 @@
6666
</AdditionalOptions>
6767
</TestAction>
6868
<LaunchAction
69+
buildConfiguration = "Debug"
6970
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
7071
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
7172
launchStyle = "0"
7273
useCustomWorkingDirectory = "NO"
73-
buildConfiguration = "Debug"
7474
ignoresPersistentStateOnLaunch = "NO"
7575
debugDocumentVersioning = "YES"
7676
debugServiceExtension = "internal"
@@ -88,10 +88,10 @@
8888
</AdditionalOptions>
8989
</LaunchAction>
9090
<ProfileAction
91+
buildConfiguration = "Release"
9192
shouldUseLaunchSchemeArgsEnv = "YES"
9293
savedToolIdentifier = ""
9394
useCustomWorkingDirectory = "NO"
94-
buildConfiguration = "Release"
9595
debugDocumentVersioning = "YES">
9696
<MacroExpansion>
9797
<BuildableReference

0 commit comments

Comments
 (0)