Skip to content

Commit 0c4bb8f

Browse files
Merge pull request #732 from splitio/release/3.4.0-rc3
chore: Update version to 3.4.0-rc3
2 parents bfbca72 + 950dfd2 commit 0c4bb8f

File tree

9 files changed

+225
-6
lines changed

9 files changed

+225
-6
lines changed

.github/workflows/test_all.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
SplitiOSUnit_2,
2828
SplitiOSUnit_3,
2929
SplitiOSUnit_4,
30+
SplitiOSUnit_5,
3031
SemVer,
3132
SplitPushManagerUT,
3233
SplitStreamingUT

Split.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Pod::Spec.new do |s|
22
s.name = 'Split'
33
s.module_name = 'Split'
4-
s.version = '3.4.0-rc2'
4+
s.version = '3.4.0-rc3'
55
s.summary = 'iOS SDK for Split'
66
s.description = <<-DESC
77
This SDK is designed to work with Split, the platform for controlled rollouts, serving features to your users via the Split feature flag to manage your complete customer experience.

Split.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,7 @@
358358
5B343EAE2E26E93B006BEBE7 /* StorageHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B343EAC2E26E937006BEBE7 /* StorageHelper.swift */; };
359359
5B48D8172DEA2CED00351925 /* PrerequisitesMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF52DF52DE0B60300FEDAFE /* PrerequisitesMatcher.swift */; };
360360
5B91B8392DDE4A3B000510F0 /* SplitDTOTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B91B8382DDE4A30000510F0 /* SplitDTOTests.swift */; };
361+
5BD75F832E5C9B5700F9EFBD /* SplitiOSUnit_5.xctestplan in Resources */ = {isa = PBXBuildFile; fileRef = 5BD75F822E5C9B5700F9EFBD /* SplitiOSUnit_5.xctestplan */; };
361362
5BF52DF72DE0B60700FEDAFE /* PrerequisitesMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF52DF52DE0B60300FEDAFE /* PrerequisitesMatcher.swift */; };
362363
5BF52DF92DE4B8D400FEDAFE /* PrerequisitesMatcherTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF52DF82DE4B8CA00FEDAFE /* PrerequisitesMatcherTest.swift */; };
363364
5BF52E032DE62F0500FEDAFE /* PrerequisitesMatcherMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BF52E022DE62EFE00FEDAFE /* PrerequisitesMatcherMock.swift */; };
@@ -1563,6 +1564,7 @@
15631564
5B279CF82E340FB900B73A36 /* splitschanges_no_segments.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = splitschanges_no_segments.json; sourceTree = "<group>"; };
15641565
5B343EAC2E26E937006BEBE7 /* StorageHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StorageHelper.swift; sourceTree = "<group>"; };
15651566
5B91B8382DDE4A30000510F0 /* SplitDTOTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SplitDTOTests.swift; sourceTree = "<group>"; };
1567+
5BD75F822E5C9B5700F9EFBD /* SplitiOSUnit_5.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = SplitiOSUnit_5.xctestplan; sourceTree = "<group>"; };
15661568
5BF52DF52DE0B60300FEDAFE /* PrerequisitesMatcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrerequisitesMatcher.swift; sourceTree = "<group>"; };
15671569
5BF52DF82DE4B8CA00FEDAFE /* PrerequisitesMatcherTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrerequisitesMatcherTest.swift; sourceTree = "<group>"; };
15681570
5BF52E022DE62EFE00FEDAFE /* PrerequisitesMatcherMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrerequisitesMatcherMock.swift; sourceTree = "<group>"; };
@@ -2140,6 +2142,7 @@
21402142
95DF58EB2BEBBE9D009220B8 /* SplitiOSUnit_2.xctestplan */,
21412143
95DF58F72BEC5432009220B8 /* SplitiOSUnit_3.xctestplan */,
21422144
95DF58F92BEE513F009220B8 /* SplitiOSUnit_4.xctestplan */,
2145+
5BD75F822E5C9B5700F9EFBD /* SplitiOSUnit_5.xctestplan */,
21432146
950F72FE292E8D6B008A0040 /* SplitiOSFull.xctestplan */,
21442147
3B6DEE5C20EA6A4E0067435E /* Split */,
21452148
592C6AA6211B6C99002D120C /* SplitTests */,
@@ -3972,6 +3975,7 @@
39723975
590DF9CA213DAC9D0082B94F /* splits.json in Resources */,
39733976
592C6AEA211CBBB0002D120C /* regex.csv in Resources */,
39743977
5959C46E2278D9AD0064F968 /* segment_conta_condition.json in Resources */,
3978+
5BD75F832E5C9B5700F9EFBD /* SplitiOSUnit_5.xctestplan in Resources */,
39753979
59C493052167E3B400F5F774 /* murmur3-sample-double-treatment-users.csv in Resources */,
39763980
95F7BC082C1CE84500C5F2E4 /* rsa_2048_cert.pem.der in Resources */,
39773981
C5977C322BF4031A003E293A /* split_changes_semver.json in Resources */,

Split.xcodeproj/xcshareddata/xcschemes/Split.xcscheme

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,9 @@
100100
<TestPlanReference
101101
reference = "container:SplitiOSHalf_2.xctestplan">
102102
</TestPlanReference>
103+
<TestPlanReference
104+
reference = "container:SplitiOSUnit_5.xctestplan">
105+
</TestPlanReference>
103106
</TestPlans>
104107
<Testables>
105108
<TestableReference

Split/Common/Utils/Version.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import Foundation
99

1010
class Version {
1111
private static let kSdkPlatform: String = "ios"
12-
private static let kVersion = "3.4.0-rc2"
12+
private static let kVersion = "3.4.0-rc3"
1313

1414
static var semantic: String {
1515
return kVersion

Split/Events/SplitEventsManager.swift

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,7 @@ class DefaultSplitEventsManager: SplitEventsManager {
148148
self.triggered.append(event)
149149
switch event {
150150
case .splitsUpdated, .mySegmentsUpdated, .myLargeSegmentsUpdated:
151-
print(" EVENT !! **************\n\(event)\n EVENT !! **************")
152151
if isTriggered(external: .sdkReady) {
153-
print(" SDK UPDATED ")
154152
trigger(event: .sdkUpdated)
155153
continue
156154
}
@@ -199,7 +197,6 @@ class DefaultSplitEventsManager: SplitEventsManager {
199197
if !isTriggered(external: .sdkReadyFromCache) {
200198
self.trigger(event: .sdkReadyFromCache)
201199
}
202-
print(" --------- *** TRIGGER READy")
203200
self.trigger(event: .sdkReady)
204201
}
205202
}

Split/Storage/Splits/SplitsStorage.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ class DefaultSplitsStorage: SplitsStorage {
6868
let parsedSplit = parseSplit(split)
6969
inMemorySplits.setValue(parsedSplit, forKey: lowercasedName)
7070
return parsedSplit
71+
} else if isUnsupportedMatcher(split: split) {
72+
split.conditions = [SplitHelper.createDefaultCondition()]
7173
}
7274

7375
return split

SplitTests/Integration/streaming/TelemetryIntegrationTest.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ class TelemetryIntegrationTest: XCTestCase {
169169
XCTAssertEqual(2, statsItem?.impressionsQueued)
170170

171171
XCTAssertEqual(0, statsItem?.segmentCount)
172-
XCTAssertEqual(33, statsItem?.splitCount)
172+
XCTAssertEqual(35, statsItem?.splitCount)
173173

174174
XCTAssertTrue(statsItem?.httpLatencies?.splits?.count ?? 0 > 0)
175175
XCTAssertTrue(statsItem?.httpLatencies?.mySegments?.count ?? 0 > 0)

SplitiOSUnit_5.xctestplan

Lines changed: 212 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,212 @@
1+
{
2+
"configurations" : [
3+
{
4+
"id" : "4D2BC264-4956-4353-8F84-1D52C51BEA63",
5+
"name" : "Configuration 1",
6+
"options" : {
7+
8+
}
9+
}
10+
],
11+
"defaultOptions" : {
12+
"testTimeoutsEnabled" : true
13+
},
14+
"testTargets" : [
15+
{
16+
"skippedTests" : [
17+
"AnyValueValidatorTests",
18+
"ApiKeyValidatorTests",
19+
"ArrayBlockingQueueTests",
20+
"AttributesDaoTest",
21+
"AttributesEvaluationTest",
22+
"AttributesStorageTests",
23+
"Base64UtilsTest",
24+
"BetweenSemverMatcherTest",
25+
"BlockingQueueTest",
26+
"BucketSplitTest",
27+
"ByKeyAttributesStorageTests",
28+
"ByKeyFacadeTest",
29+
"ByKeyMySegmentsStorageTests",
30+
"CdnByPassTest",
31+
"CertificatePinningConfigTests",
32+
"CipherTest",
33+
"ComputeProcessTest",
34+
"ConcurrentSetTests",
35+
"ConfigObjcTest",
36+
"ConfigTest",
37+
"CountsRecorderCountWorkerTests",
38+
"CredentialPinParserTests",
39+
"DatesTest",
40+
"DbCipherTest",
41+
"DbForDifferentApiKeysTest",
42+
"DecompressionTest",
43+
"DestroyTests",
44+
"EndpointFactoryTest",
45+
"EndpointTest",
46+
"EqualToSemverMatcherTest",
47+
"EvaluatorTests",
48+
"EventDTOJsonTest",
49+
"EventDaoTest",
50+
"EventStreamParserTest",
51+
"EventValidatorTests",
52+
"EventsRecorderWorkerTests",
53+
"EventsStorageTest",
54+
"EventsSynchronizerTest",
55+
"EventsTrackerTest",
56+
"FactoryMonitorTest",
57+
"FactoryRegistryTest",
58+
"FeatureFlagsPayloadDecoderTest",
59+
"FeatureFlagsSynchronizerTest",
60+
"FetchSpecificSplitsTest",
61+
"FetcherThrottleTests",
62+
"FilterBuilderTest",
63+
"FlagSetValidatorTests",
64+
"FlagSetsCacheTests",
65+
"FlagSetsIntegrationTests",
66+
"FlushTests",
67+
"GeneralInfoDaoTest",
68+
"GeneralInfoStorageTest",
69+
"GreaterThanOrEqualToSemverMatcherTest",
70+
"HashedImpressionDaoTest",
71+
"HashedImpressionsStorageTests",
72+
"HttpClientTest",
73+
"HttpDataRequestTest",
74+
"HttpEventsRecorderTests",
75+
"HttpImpressionsCountRecorderTests",
76+
"HttpImpressionsRecorderTests",
77+
"HttpMySegmentsFetcherTest",
78+
"HttpRequestListTest",
79+
"HttpRequestManagerTests",
80+
"HttpResponseTest",
81+
"HttpSplitFetcherTests",
82+
"HttpStreamRequestTest",
83+
"HttpTelemetryConfigRecorderTest",
84+
"HttpTelemetryStatsRecorderTest",
85+
"HttpUniqueKeyRecorderTests",
86+
"ImpressionDaoTest",
87+
"ImpressionHasherTest",
88+
"ImpressionsCountDaoTest",
89+
"ImpressionsCounterTest",
90+
"ImpressionsDedupTest",
91+
"ImpressionsModeTypeWrapperTest",
92+
"ImpressionsNoneTest",
93+
"ImpressionsObserverTest",
94+
"ImpressionsPropertiesE2ETest",
95+
"ImpressionsRecorderWorkerTests",
96+
"ImpressionsStorageTest",
97+
"ImpressionsToggleTest",
98+
"ImpressionsTrackerTest",
99+
"InListSemverMatcherTest",
100+
"InMemoryTelemetryStorageTest",
101+
"InRuleBasedSegmentMatcherTest",
102+
"InitDbCipherTest",
103+
"InitialCacheTest",
104+
"InstantFeatureFlagsUpdateTest",
105+
"JwtTokenParserTest",
106+
"KeyGeneratorTest",
107+
"KeyValidatorTests",
108+
"LRUCacheTest",
109+
"LatencyCounterTests",
110+
"LegacyHashingTest",
111+
"LessThanOrEqualToSemverMatcherTest",
112+
"LocalhostManagerTests",
113+
"LocalhostParserTests",
114+
"LocalhostSplitClientTests",
115+
"LocalhostSplitLoaderTests",
116+
"LocalhostSplitStorageTests",
117+
"LocalhostSynchronizerTests",
118+
"LocalhostTests",
119+
"LocalhostYamlParserTest",
120+
"LoggerTest",
121+
"MatcherEvalTests",
122+
"MatcherTests",
123+
"MultiClientEvaluationTest",
124+
"MultiClientStreamingResetTest",
125+
"Murmur3HashingTest",
126+
"MyLargeSegmentsStorageTests",
127+
"MySegmentServerErrorTest",
128+
"MySegmentUpdateTest",
129+
"MySegmentUpdatedTest",
130+
"MySegmentsBgSyncWorkerTest",
131+
"MySegmentsChangesCheckerTest",
132+
"MySegmentsDaoTest",
133+
"MySegmentsPayloadDecoderTest",
134+
"MySegmentsStorageTests",
135+
"MySegmentsSyncWorkerTest",
136+
"MySegmentsSynchronizerTest",
137+
"MySegmentsV2PayloaDecoderTest",
138+
"NotificationManagerKeeperTest",
139+
"NotificationParserTest",
140+
"OutdatedProxyIntegrationTest",
141+
"OutdatedSplitProxyHandlerTests",
142+
"PeriodicMySegmentsSyncWorkerTest",
143+
"PeriodicRecorderWorkerTests",
144+
"PeriodicSplitsSyncWorkerTest",
145+
"PersistentAttributesStorageTests",
146+
"PersistentEventsStorageTests",
147+
"PersistentHashedImpressionsStorageTests",
148+
"PersistentImpressionsCountStorageTests",
149+
"PersistentImpressionsStorageTests",
150+
"PersistentMyLargeSegmentsStorageTests",
151+
"PersistentMySegmentsStorageTests",
152+
"PersistentRuleBasedSegmentStorageTest",
153+
"PersistentSplitsStorageTest",
154+
"PersistentUniqueKeysStorageTests",
155+
"PrerequisitesMatcherTests",
156+
"PropertyValidatorTest",
157+
"PushManagerEventBroadcasterTest",
158+
"PushNotificationManagerTest",
159+
"ReadyFromCacheTest",
160+
"ReconnectBackoffCounterTest",
161+
"RecorderFlusherCheckerTests",
162+
"RegexTest",
163+
"RestClientCustomDecoderTest",
164+
"RestClientCustomFailureHandlerTest",
165+
"RestClientSplitChangesTest",
166+
"RolloutCacheConfigurationTest",
167+
"RolloutCacheManagerIntegrationTest",
168+
"RolloutCacheManagerTest",
169+
"RuleBasedSegmentDaoTest",
170+
"RuleBasedSegmentStorageTest",
171+
"RuleBasedSegmentsIntegrationTest",
172+
"SdkUpdateStreamingTest",
173+
"SegmentsSyncHelperTests",
174+
"SegmentsUpdateWorkerTests",
175+
"SemverIntegrationTest",
176+
"SemverTest",
177+
"ServiceEndpointsTests",
178+
"SingleSyncTest",
179+
"SplitBgSynchronizerTest",
180+
"SplitChangeProcessorTests",
181+
"SplitChangesErrorHandlerTests",
182+
"SplitChangesServerErrorTest",
183+
"SplitChangesTest",
184+
"SplitClientManagerTest",
185+
"SplitClientTests",
186+
"SplitConfigurationsParsingTest",
187+
"SplitDTOTests",
188+
"SplitDaoTest",
189+
"SplitEventsCoordinatorTest",
190+
"SplitEventsManagerTest",
191+
"SplitFactoryBuilderTests",
192+
"SplitIntegrationTests",
193+
"SplitIntegrationTests\/testControlTreatment()",
194+
"SplitIntegrationTests\/testImpressionsCount()",
195+
"SplitIntegrationTests\/testPrerequisites()",
196+
"SplitIntegrationTests\/testPrerequisitesSplitView()",
197+
"SplitIntegrationTests\/testPrerequisitesTreatmentNotPass()",
198+
"SplitIntegrationTests\/testPrerequisitesTreatmentPass()",
199+
"SplitIntegrationTests\/testReadyMyLargeSegmentsEnabledError()",
200+
"SplitIntegrationTests\/testReadyMyLargeSegmentsEnabledNoWaitMls()",
201+
"SplitIntegrationTests\/testReadyMyLargeSegmentsEnabledWaitMls()",
202+
"SplitIntegrationTests\/testReadyNoRef()"
203+
],
204+
"target" : {
205+
"containerPath" : "container:Split.xcodeproj",
206+
"identifier" : "592C6AA4211B6C99002D120C",
207+
"name" : "SplitTests"
208+
}
209+
}
210+
],
211+
"version" : 1
212+
}

0 commit comments

Comments
 (0)