Skip to content

Commit 7fb1c12

Browse files
Release 2.0.2-beta2 (#273)
* revert get enabled features sorted (#229) * coveralls code coverage (#221) * coveralls added * enable code coverage * add style guide (#233) * data file CDN url changed (#234) * example to show folio3 how to refactor code (#238) * example to show folio3 how to refactor code * write failing test * fix single quote test * get record id to attach with event to remove * fix for TVOS events removal * Remedying Xcode 9.2 compiler warnings in unit tests (#244) * use new notification listeners (#243) * use new notification listeners * fix TVOS errors and rename notification listener methods that were incorrect * Kroach/oasis 2519 release20 master (#246) * Release iOS 2.0.0-beta1 (#230) * Bump version number to 2.2.0-beta1 * Remove unused Beta and RC XCBuildConfiguration's * Update workspace *.xcscheme's and *.pbxproj to Xcode 9.2 recommended settings * Remove static library 'Pods...' from tvOS demo app's Embedded Binaries * CURRENT_PROJECT_VERSION's can't have version suffixes like '-beta1' * Additional OptimizelyTVOSDemoApp images required for App Store 'Validation...' * unexported_symbols.txt update * Update release.sh * Rebuild universal frameworks * CHANGELOG.md update * Major release.sh overhaul. + Conflate all _VERSION's to single OPTIMIZELY_SDK_VERSION . * Improved release.sh * Resolve conflicts between '2.0.x' and 'master' * Release 2.0.0 GA (#245) * Bump version number to 2.0.0 * 'Optimizely Bucketing ID' --> '' per reference java-sdk and design doc * Update CHANGELOG.md * Add 'Bug Fixes' to CHANGELOG.md * unexported_symbols.txt update * Rebuild universal frameworks * Add 1.5.1 message to CHANGELOG.md * Merge 2.0.0 GA changes from 2.0.x into master branch. Summary: Pull request 2.0.0 GA changes made to 2.0.x branch into the master branch. This amounts to cherry-picking commits from 2.0.x and resolving conflicts. Test Plan: * sh ./Scripts/build_all.sh PASSED * 4 Analyze PASSED * 8+1 iOS test suites PASSED * 7+1 tvOS test suites PASSED We seemed to have some issues with tvos test suites last week, but they PASSED 3x in a row today. Reviewers: mike.ng, thomas.zurkan JIRA Issues: OASIS-2519 Differential Revision: https://phabricator.optimizely.com/D19752 * Resolve conflicts (generated-frameworks) (#248) * fix to send new events to new endpoint and any old events that might … (#249) * fix to send new events to new endpoint and any old events that might be around to the old events endpoints * use clientEngine instead of client_engine * add a couple of tests for sending to new and old endpoints * Kroach/oasis 2768 upgradev2 (#251) * Forcing old datafile to include anonymizeIP required by V4 format. * Add testOlderV2Datafile unit test * Pre-Release 2.0.2-beta1 (#252) (#253) * fix to send new events to new endpoint and any old events that might … (#249) * fix to send new events to new endpoint and any old events that might be around to the old events endpoints * use clientEngine instead of client_engine * add a couple of tests for sending to new and old endpoints * Kroach/oasis 2768 upgradev2 (#251) * Forcing old datafile to include anonymizeIP required by V4 format. * Add testOlderV2Datafile unit test * Bump version number to 2.0.2-beta1 * Rebuild universal frameworks * Update CHANGELOG.md * Enabling Source Clear (#255) * Kroach/oasis 2442 xcode94 (#254) * Update Project Settings to Xcode 9.4 recommended settings * Add ', strong, nonnull' to anonymizeIP @Property * Accept Xcode 9.4's recommended Fix's which add 'self->' * Eliminate Xcode Aanalyze warning for line in OPTLYFMDBDatabase.m * Add weakSelf and strongSelf to setupNetworkTimer: * setupNetworkTimer: nit * Kroach/oasis 2442 swift (#256) * Update OptimizelyiOSDemoApp to Swift 4 * 'pod update' and Localytics version update * Localytics version update * Revert "Enabling Source Clear (#255)" This reverts commit 390856e. * Xcode 9.4 recommended upgrade to Pods project settings * Kroach/oasis 2978 variables (#257) * Revive Live Variables API's * Add 2 V3.json datafiles * Repair all broken tests. Make OptimizelyV3Test live variables tests pass. * Add Live Variables (DEPRECATED) code comments * Add 2 'Mobile 1.x Live Variables are DEPRECATED' block comments * Add OPTLYLoggerMessagesLiveVariablesDeprecated log message to deprecated API's * Add #pragms's to get deprecated warnings to emit in old code using Mobile 1.x Variables * Managment -> Management * OPTLYDatafileKeysVariationVariableUsageInstances --> OPTLYDatafileKeysVariationVariables * re-enabled srcclr on every build (#263) * Added SourceClear to run in one build per commit (#258) * added sourceclear to only run in one build per commit * moved sourceclear.sh into Scripts folder * fix typo * it -> is, 'skipping sourceclear' * Add Release 1.5.2 message to master CHANGELOG.md (#267) * Fix impression sent from feature experiment variation toggled off. (#270) * Add environments support to SDK with SDK key initialization (#264) * iOS Environment refactor to use OPTLYDatafileConfig Test Plan: all tests pass on iOS and tvOS. Reviewers: ali, kelly.roach, thomas.zurkan Differential Revision: https://phabricator.optimizely.com/D19924 * Add unit test for initializing with SDK and fix a typo. * Undo disabling of MxP. * projectConfigURLPath: declaration removed * Improve initWithProjectId:withSDKKey: * Use BOOL values YES/NO * Add parentheses and formatting to improve code readability * Add areNilOrEqual:y: and refactor isEqual: for code clarity * Improved OPTLYDatafileConfig.m hash method * NSString+OPTLYCategory.m+.h dropped in favor of adding static method to OPTLYManagerBase.m+.h * Refer to 6 identical strings by SSOT OPTLY_DATAFILE_URL global * Changed enum type SqliteValueType to OPTLYSqliteValueType (#271) * changed enum type SqliteValueType to OPTLYSqliteValueType * Copyright headers updated * Suppress deprecated warnings in OptimizelyV3Test * Correct downloadDatafile:completionHandler: signature in OPTLYDatafileManagerTest.m * Suppress -Wnonnull warnings in tests for illegitmate args * Two nil --> [NSData data] in OPTLYDatafileManagerTest.m * 3x (NSObject *) casts in OPTLYDecisionServiceTest.m * OPTLYUserProfile --> NSDictionary in 2 places in OPTLYDecisionServiceTest.m * Bump version number to 2.0.2-beta2 * Update CHANGELOG.md and 2 code comments in OPTLYManagerBase.h * Improved unexported_symbols.sh * unexported_symbols.sh comment * Rebuild universal frameworks
1 parent 4131f7a commit 7fb1c12

File tree

304 files changed

+9547
-4307
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

304 files changed

+9547
-4307
lines changed

.travis.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,21 @@ branches:
55
- master
66
env:
77
matrix:
8-
- SCHEME=OptimizelySDKiOS TEST_SDK=iphonesimulator PLATFORM='iOS Simulator' OS=9.1 NAME='iPad Air'
8+
- SCHEME=OptimizelySDKiOS TEST_SDK=iphonesimulator PLATFORM='iOS Simulator' OS=9.1 NAME='iPad Air' RUN_SOURCECLEAR=true
99
- SCHEME=OptimizelySDKiOS TEST_SDK=iphonesimulator PLATFORM='iOS Simulator' OS=10.1 NAME='iPhone 7 Plus'
1010
- SCHEME=OptimizelySDKiOS TEST_SDK=iphonesimulator PLATFORM='iOS Simulator' OS=10.3.1 NAME='iPhone 7'
1111
- SCHEME=OptimizelySDKiOS-Universal TEST_SDK=iphonesimulator PLATFORM='iOS Simulator' OS=9.3 NAME='iPhone 6s'
1212
- SCHEME=OptimizelySDKTVOS TEST_SDK=appletvsimulator PLATFORM='tvOS Simulator' OS=10.2 NAME='Apple TV 1080p'
1313
- SCHEME=OptimizelySDKTVOS-Universal TEST_SDK=appletvsimulator PLATFORM='tvOS Simulator' OS=9.2 NAME='Apple TV 1080p'
1414
before_install:
1515
- gem install slather --no-rdoc --no-ri --no-document --quiet
16+
addons:
17+
srcclr: true
1618
script:
1719
- pod spec lint --quick
1820
- if [[ "$TRAVIS_BRANCH" == "master" ]]; then xcodebuild test -quiet -workspace OptimizelySDK.xcworkspace -scheme $SCHEME -configuration Release CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -sdk $TEST_SDK -destination "platform=$PLATFORM,OS=$OS,name=$NAME" ONLY_ACTIVE_ARCH=YES | egrep -B 10 -A 10 "(error|warning|failed|crash|exit|FAILED|Failing|failures)"; fi
1921
after_success:
22+
- ./Scripts/sourceclear.sh
2023
- slather
2124
- sleep 5 # https://github.com/travis-ci/travis-ci/issues/4725
2225

CHANGELOG.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Optimizely Objective-C SDK Changelog
2-
## 2.0.2-beta1
3-
May 17, 2018
2+
## 2.0.2-beta2
3+
Jun 25, 2018
44

5-
**This "-beta1" pre-release corrects two significant bugs present in the
5+
**This "-beta2" pre-release corrects two significant bugs present in the
66
previous 2.0.x releases which have been withdrawn. Please note that
77
2.0+ SDKs are incompatible with existing 1.x Mobile Optimizely
88
projects. Before you use 2.0+ and Feature Management, please contact
@@ -78,6 +78,8 @@ with Notification Listeners APIs
7878
- (void)clearNotificationListeners:(OPTLYNotificationType)type;
7979
- (void)clearAllNotificationListeners;
8080
```
81+
* Add environments support to SDK with SDK key initialization. A new sdkKey property has been added to OPTLYManagerBuilder
82+
that is an alternative to the older projectId property.
8183
* Added `@"$opt_bucketing_id"` in the attribute map for overriding bucketing using the user id. This string is
8284
available as OptimizelyBucketId in OPTLYEventBuilder.h .
8385

@@ -93,6 +95,13 @@ unable to be deleted from data store due to syntax error.
9395
* Removed track APIs with revenue as a parameter.
9496
* Deprecated live variable APIs.
9597

98+
## 1.5.2
99+
June 15, 2018
100+
101+
### New Features
102+
* Updated SDK targets to Xcode 9.4 recommended settings, pod update'd third party Cocoapods used by the 2 demo apps,
103+
and eliminated Xcode 9.4 Build and Analyze warnings for SDK targets.
104+
96105
## 1.5.1
97106
April 17, 2018
98107

OptimizelyDemoApp/AppDelegate.swift

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
3636

3737
// customizable settings
3838
let datafileName = "demoTestDatafile" // default parameter for initializing Optimizely from saved datafile
39-
var projectId = "8182362857" // project name: X Mobile - Sample App
39+
var projectId = "10657931863" // project name: X Mobile - Sample App
4040
var experimentKey = "background_experiment"
4141
var eventKey = "sample_conversion"
4242
let attributes = ["sample_attribute_key":"sample_attribute_value"]
@@ -73,12 +73,13 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
7373
// ---- Create the Datafile Manager ----
7474
let datafileManager = OPTLYDatafileManagerDefault.init{(builder) in
7575
// builder!.datafileFetchInterval = TimeInterval(self.datafileManagerDownloadInterval)
76-
builder!.projectId = self.projectId
76+
builder!.datafileConfig = OPTLYDatafileConfig(projectId: nil, withSDKKey:self.projectId)!;
7777
}
7878

7979
// ---- Create the Manager ----
8080
let optimizelyManager = OPTLYManager.init {(builder) in
81-
builder!.projectId = self.projectId
81+
builder!.projectId = nil;
82+
builder!.sdkKey = self.projectId
8283
builder!.datafileManager = datafileManager!
8384
builder!.eventDispatcher = eventDispatcher
8485
}
@@ -93,7 +94,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
9394
// ---- Amplitude ----
9495
let propertyKey : String! = "[Optimizely] " + experiment.experimentKey
9596
let identify : AMPIdentify = AMPIdentify()
96-
identify.set(propertyKey, value:variation.variationKey as NSObject!)
97+
identify.set(propertyKey, value:variation.variationKey as NSObject?)
9798
// Track impression event (optional)
9899
let eventIdentifier : String = "[Optimizely] " + experiment.experimentKey + " - " + variation.variationKey
99100
Amplitude.instance().logEvent(eventIdentifier)
@@ -103,7 +104,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
103104
let label : String = "Variation - " + variation.variationKey
104105
// Build and send a non-interaction Event
105106
let builder = GAIDictionaryBuilder.createEvent(withCategory: "Optimizely", action: action, label: label, value: nil).build()
106-
tracker?.send(builder as [NSObject : AnyObject]!)
107+
tracker?.send(builder as [NSObject : AnyObject]?)
107108
// ---- Mixpanel ----
108109
let mixpanel : MixpanelInstance = Mixpanel.mainInstance()
109110
mixpanel.registerSuperProperties([propertyKey: variation.variationKey])
@@ -120,6 +121,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
120121
})
121122
#endif
122123
let variation = optimizelyClient?.activate((self?.experimentKey)!, userId: (self?.userId)!, attributes: (self?.attributes))
124+
123125
self?.setRootViewController(optimizelyClient: optimizelyClient, bucketedVariation:variation)
124126
})
125127

OptimizelyDemoApp/OptimizelyDemoApp.xcodeproj/project.pbxproj

Lines changed: 23 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
3E3AD1412061E09E00081305 /* Pods_OptimizelyiOSDemoApp.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E3AD1422061E09E00081305 /* Pods_OptimizelyiOSDemoApp.framework */; };
1313
3E62A2602061E71500D1AC12 /* OptimizelySDKUserProfileService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB7197B1EC6589600B54F89 /* OptimizelySDKUserProfileService.framework */; };
1414
3EB7197C1EC6589600B54F89 /* OptimizelySDKUserProfileService.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB7197B1EC6589600B54F89 /* OptimizelySDKUserProfileService.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
15+
3EEC2AD520CB399500D096E4 /* demoTestDatafileV3.json in Resources */ = {isa = PBXBuildFile; fileRef = 3EEC2AD220CB399500D096E4 /* demoTestDatafileV3.json */; };
16+
3EEC2AD620CB399500D096E4 /* demoTestDatafileV3.json in Resources */ = {isa = PBXBuildFile; fileRef = 3EEC2AD220CB399500D096E4 /* demoTestDatafileV3.json */; };
1517
3EF452841ECA639300BA82CB /* OptimizelySDKUserProfileService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EF452831ECA639300BA82CB /* OptimizelySDKUserProfileService.framework */; };
1618
EA1E4B491E65060300BDDABD /* OptimizelySDKEventDispatcher.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EA1E4B481E65060300BDDABD /* OptimizelySDKEventDispatcher.framework */; };
1719
EA1E4B4A1E65060300BDDABD /* OptimizelySDKEventDispatcher.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EA1E4B481E65060300BDDABD /* OptimizelySDKEventDispatcher.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
@@ -158,6 +160,7 @@
158160
3E39BD0E2072E05E00F73BD0 /* Pods_OptimizelyTVOSDemoApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Pods_OptimizelyTVOSDemoApp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
159161
3E3AD1422061E09E00081305 /* Pods_OptimizelyiOSDemoApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Pods_OptimizelyiOSDemoApp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
160162
3EB7197B1EC6589600B54F89 /* OptimizelySDKUserProfileService.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = OptimizelySDKUserProfileService.framework; sourceTree = BUILT_PRODUCTS_DIR; };
163+
3EEC2AD220CB399500D096E4 /* demoTestDatafileV3.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = demoTestDatafileV3.json; sourceTree = "<group>"; };
161164
3EF452831ECA639300BA82CB /* OptimizelySDKUserProfileService.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OptimizelySDKUserProfileService.framework; path = "../Debug-appletvos/OptimizelySDKUserProfileService.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
162165
920E4FB688AA1A8926800320 /* Pods-OptimizelyTVOSDemoApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-OptimizelyTVOSDemoApp.release.xcconfig"; path = "../Pods/Target Support Files/Pods-OptimizelyTVOSDemoApp/Pods-OptimizelyTVOSDemoApp.release.xcconfig"; sourceTree = "<group>"; };
163166
B8C4B923152B213925B727C4 /* Pods_OptimizelyiOSDemoApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_OptimizelyiOSDemoApp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -253,6 +256,7 @@
253256
EA70FFC31E552D0B00590BEF /* Roboto-Medium.ttf */,
254257
EA70FFC41E552D0B00590BEF /* SF-UI-Text-Regular.otf */,
255258
EA4A62BA1E566F3500F1C3CE /* demoTestDatafile.json */,
259+
3EEC2AD220CB399500D096E4 /* demoTestDatafileV3.json */,
256260
EAF6953A1FA07BF800C73CC2 /* optimizely_6372300739.json */,
257261
EAF6953D1FA08DD900C73CC2 /* optimizely_8182362857.json */,
258262
);
@@ -345,8 +349,6 @@
345349
EA7000041E552EBD00590BEF /* Sources */,
346350
EA7000091E552EBD00590BEF /* Frameworks */,
347351
EA70000C1E552EBD00590BEF /* Resources */,
348-
EA7000131E552EBD00590BEF /* [CP] Embed Pods Frameworks */,
349-
EA7000141E552EBD00590BEF /* [CP] Copy Pods Resources */,
350352
EA7000151E552EBD00590BEF /* Embed Frameworks */,
351353
);
352354
buildRules = (
@@ -369,7 +371,6 @@
369371
EA70FFEB1E552E9E00590BEF /* Frameworks */,
370372
EA70FFEE1E552E9E00590BEF /* Resources */,
371373
EA70FFF61E552E9E00590BEF /* [CP] Embed Pods Frameworks */,
372-
EA70FFF71E552E9E00590BEF /* [CP] Copy Pods Resources */,
373374
EA299F031E55331000931399 /* Embed Frameworks */,
374375
);
375376
buildRules = (
@@ -390,14 +391,14 @@
390391
isa = PBXProject;
391392
attributes = {
392393
LastSwiftUpdateCheck = 0810;
393-
LastUpgradeCheck = 0900;
394+
LastUpgradeCheck = 0940;
394395
ORGANIZATIONNAME = Optimizely;
395396
TargetAttributes = {
396397
EA7000001E552EBD00590BEF = {
397-
LastSwiftMigration = 0820;
398+
LastSwiftMigration = 0940;
398399
};
399400
EA70FFE01E552E9E00590BEF = {
400-
LastSwiftMigration = 0820;
401+
LastSwiftMigration = 0940;
401402
};
402403
};
403404
};
@@ -473,6 +474,7 @@
473474
3E19F86C1F0176AC001FC077 /* Assets.xcassets in Resources */,
474475
EA299EDC1E55311700931399 /* tvOSMain.storyboard in Resources */,
475476
EA7000121E552EBD00590BEF /* ProximaNova-Regular.otf in Resources */,
477+
3EEC2AD620CB399500D096E4 /* demoTestDatafileV3.json in Resources */,
476478
);
477479
runOnlyForDeploymentPostprocessing = 0;
478480
};
@@ -487,6 +489,7 @@
487489
EA4A62BB1E566F3500F1C3CE /* demoTestDatafile.json in Resources */,
488490
EA70FFF41E552E9E00590BEF /* SF-UI-Text-Regular.otf in Resources */,
489491
EA299EEF1E55316300931399 /* Assets.xcassets in Resources */,
492+
3EEC2AD520CB399500D096E4 /* demoTestDatafileV3.json in Resources */,
490493
EA70FFF51E552E9E00590BEF /* ProximaNovaCond-Regular.otf in Resources */,
491494
EAF6953E1FA08DD900C73CC2 /* optimizely_8182362857.json in Resources */,
492495
);
@@ -513,36 +516,6 @@
513516
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";
514517
showEnvVarsInLog = 0;
515518
};
516-
EA7000131E552EBD00590BEF /* [CP] Embed Pods Frameworks */ = {
517-
isa = PBXShellScriptBuildPhase;
518-
buildActionMask = 2147483647;
519-
files = (
520-
);
521-
inputPaths = (
522-
);
523-
name = "[CP] Embed Pods Frameworks";
524-
outputPaths = (
525-
);
526-
runOnlyForDeploymentPostprocessing = 0;
527-
shellPath = /bin/sh;
528-
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-OptimizelyTVOSDemoApp/Pods-OptimizelyTVOSDemoApp-frameworks.sh\"\n";
529-
showEnvVarsInLog = 0;
530-
};
531-
EA7000141E552EBD00590BEF /* [CP] Copy Pods Resources */ = {
532-
isa = PBXShellScriptBuildPhase;
533-
buildActionMask = 2147483647;
534-
files = (
535-
);
536-
inputPaths = (
537-
);
538-
name = "[CP] Copy Pods Resources";
539-
outputPaths = (
540-
);
541-
runOnlyForDeploymentPostprocessing = 0;
542-
shellPath = /bin/sh;
543-
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-OptimizelyTVOSDemoApp/Pods-OptimizelyTVOSDemoApp-resources.sh\"\n";
544-
showEnvVarsInLog = 0;
545-
};
546519
EA70FFE51E552E9E00590BEF /* [CP] Check Pods Manifest.lock */ = {
547520
isa = PBXShellScriptBuildPhase;
548521
buildActionMask = 2147483647;
@@ -570,7 +543,7 @@
570543
"${SRCROOT}/../Pods/Target Support Files/Pods-OptimizelyiOSDemoApp/Pods-OptimizelyiOSDemoApp-frameworks.sh",
571544
"${BUILT_PRODUCTS_DIR}/Amplitude-iOS/Amplitude_iOS.framework",
572545
"${BUILT_PRODUCTS_DIR}/GoogleToolboxForMac/GoogleToolboxForMac.framework",
573-
"${PODS_ROOT}/Localytics/Localytics-iOS-4.4.1/Localytics.framework",
546+
"${PODS_ROOT}/Localytics/Localytics-iOS-5.1.0/Localytics.framework",
574547
"${BUILT_PRODUCTS_DIR}/Mixpanel-swift/Mixpanel.framework",
575548
);
576549
name = "[CP] Embed Pods Frameworks";
@@ -585,21 +558,6 @@
585558
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-OptimizelyiOSDemoApp/Pods-OptimizelyiOSDemoApp-frameworks.sh\"\n";
586559
showEnvVarsInLog = 0;
587560
};
588-
EA70FFF71E552E9E00590BEF /* [CP] Copy Pods Resources */ = {
589-
isa = PBXShellScriptBuildPhase;
590-
buildActionMask = 2147483647;
591-
files = (
592-
);
593-
inputPaths = (
594-
);
595-
name = "[CP] Copy Pods Resources";
596-
outputPaths = (
597-
);
598-
runOnlyForDeploymentPostprocessing = 0;
599-
shellPath = /bin/sh;
600-
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-OptimizelyiOSDemoApp/Pods-OptimizelyiOSDemoApp-resources.sh\"\n";
601-
showEnvVarsInLog = 0;
602-
};
603561
/* End PBXShellScriptBuildPhase section */
604562

605563
/* Begin PBXSourcesBuildPhase section */
@@ -684,13 +642,15 @@
684642
CLANG_WARN_BOOL_CONVERSION = YES;
685643
CLANG_WARN_COMMA = YES;
686644
CLANG_WARN_CONSTANT_CONVERSION = YES;
645+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
687646
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
688647
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
689648
CLANG_WARN_EMPTY_BODY = YES;
690649
CLANG_WARN_ENUM_CONVERSION = YES;
691650
CLANG_WARN_INFINITE_RECURSION = YES;
692651
CLANG_WARN_INT_CONVERSION = YES;
693652
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
653+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
694654
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
695655
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
696656
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
@@ -747,13 +707,15 @@
747707
CLANG_WARN_BOOL_CONVERSION = YES;
748708
CLANG_WARN_COMMA = YES;
749709
CLANG_WARN_CONSTANT_CONVERSION = YES;
710+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
750711
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
751712
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
752713
CLANG_WARN_EMPTY_BODY = YES;
753714
CLANG_WARN_ENUM_CONVERSION = YES;
754715
CLANG_WARN_INFINITE_RECURSION = YES;
755716
CLANG_WARN_INT_CONVERSION = YES;
756717
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
718+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
757719
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
758720
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
759721
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
@@ -806,7 +768,8 @@
806768
SDKROOT = appletvos;
807769
SWIFT_OBJC_BRIDGING_HEADER = "";
808770
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
809-
SWIFT_VERSION = 3.0;
771+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
772+
SWIFT_VERSION = 4.0;
810773
TARGETED_DEVICE_FAMILY = 3;
811774
TVOS_DEPLOYMENT_TARGET = 9.0;
812775
};
@@ -827,7 +790,8 @@
827790
PRODUCT_NAME = "$(TARGET_NAME)";
828791
SDKROOT = appletvos;
829792
SWIFT_OBJC_BRIDGING_HEADER = "";
830-
SWIFT_VERSION = 3.0;
793+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
794+
SWIFT_VERSION = 4.0;
831795
TARGETED_DEVICE_FAMILY = 3;
832796
TVOS_DEPLOYMENT_TARGET = 9.0;
833797
};
@@ -849,7 +813,7 @@
849813
"\"${PODS_ROOT}/FirebaseCore/Frameworks\"",
850814
"\"${PODS_ROOT}/FirebaseInstanceID/Frameworks\"",
851815
"\"${PODS_ROOT}/Google/Frameworks\"",
852-
"\"${PODS_ROOT}/Localytics/Localytics-iOS-4.4.1\"",
816+
"\"${PODS_ROOT}/Localytics/Localytics-iOS-5.1.0\"",
853817
);
854818
INFOPLIST_FILE = "$(SRCROOT)/OptimizelyiOSDemoApp/OptimizelyiOSDemoApp-Info.plist";
855819
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
@@ -858,7 +822,8 @@
858822
PRODUCT_NAME = "$(TARGET_NAME)";
859823
SWIFT_OBJC_BRIDGING_HEADER = "OptimizelyDemoApp-Bridging-Header.h";
860824
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
861-
SWIFT_VERSION = 3.0;
825+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
826+
SWIFT_VERSION = 4.0;
862827
USER_HEADER_SEARCH_PATHS = "";
863828
};
864829
name = Debug;
@@ -877,7 +842,8 @@
877842
PRODUCT_BUNDLE_IDENTIFIER = Optimizely.OptimizelyiOSDemoApp;
878843
PRODUCT_NAME = "$(TARGET_NAME)";
879844
SWIFT_OBJC_BRIDGING_HEADER = "OptimizelyDemoApp-Bridging-Header.h";
880-
SWIFT_VERSION = 3.0;
845+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
846+
SWIFT_VERSION = 4.0;
881847
USER_HEADER_SEARCH_PATHS = "";
882848
};
883849
name = Release;

OptimizelyDemoApp/OptimizelyDemoApp.xcodeproj/xcshareddata/xcschemes/OptimizelyTVOSDemoApp.xcscheme

Lines changed: 1 addition & 3 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 = "0920"
3+
LastUpgradeVersion = "0940"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -26,7 +26,6 @@
2626
buildConfiguration = "Debug"
2727
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
2828
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29-
language = ""
3029
shouldUseLaunchSchemeArgsEnv = "YES">
3130
<Testables>
3231
</Testables>
@@ -46,7 +45,6 @@
4645
buildConfiguration = "Debug"
4746
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
4847
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
49-
language = ""
5048
launchStyle = "0"
5149
useCustomWorkingDirectory = "NO"
5250
ignoresPersistentStateOnLaunch = "NO"

OptimizelyDemoApp/OptimizelyDemoApp.xcodeproj/xcshareddata/xcschemes/OptimizelyiOSDemoApp.xcscheme

Lines changed: 1 addition & 3 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 = "0920"
3+
LastUpgradeVersion = "0940"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -26,7 +26,6 @@
2626
buildConfiguration = "Debug"
2727
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
2828
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29-
language = ""
3029
shouldUseLaunchSchemeArgsEnv = "YES">
3130
<Testables>
3231
</Testables>
@@ -46,7 +45,6 @@
4645
buildConfiguration = "Debug"
4746
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
4847
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
49-
language = ""
5048
launchStyle = "0"
5149
useCustomWorkingDirectory = "NO"
5250
ignoresPersistentStateOnLaunch = "NO"

0 commit comments

Comments
 (0)