diff --git a/.gitignore b/.gitignore index a119ed5..c238bd0 100644 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,7 @@ Carthage # We recommend against adding the Pods directory to your .gitignore. However # you should judge for yourself, the pros and cons are mentioned at: # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control -# +# # Note: if you ignore the Pods directory, make sure to uncomment # `pod install` in .travis.yml # diff --git a/.xcode-version b/.xcode-version new file mode 100644 index 0000000..e2498ea --- /dev/null +++ b/.xcode-version @@ -0,0 +1 @@ +10.2 diff --git a/Example/JustTweak.xcodeproj/project.pbxproj b/Example/JustTweak.xcodeproj/project.pbxproj index f90281e..166f5f5 100644 --- a/Example/JustTweak.xcodeproj/project.pbxproj +++ b/Example/JustTweak.xcodeproj/project.pbxproj @@ -321,11 +321,11 @@ TargetAttributes = { 607FACCF1AFB9204008FA782 = { CreatedOnToolsVersion = 6.3.1; - LastSwiftMigration = 0910; + LastSwiftMigration = 1020; }; 607FACE41AFB9204008FA782 = { CreatedOnToolsVersion = 6.3.1; - LastSwiftMigration = 0910; + LastSwiftMigration = 1020; TestTargetID = 607FACCF1AFB9204008FA782; }; }; @@ -335,6 +335,7 @@ developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( + English, en, Base, ); @@ -418,7 +419,7 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-JustTweak_Example/Pods-JustTweak_Example-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-JustTweak_Example/Pods-JustTweak_Example-frameworks.sh", "${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework", "${BUILT_PRODUCTS_DIR}/JustTweak/JustTweak.framework", "${BUILT_PRODUCTS_DIR}/OptimizelySDKCore/OptimizelySDKCore.framework", @@ -445,7 +446,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-JustTweak_Example/Pods-JustTweak_Example-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-JustTweak_Example/Pods-JustTweak_Example-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -554,6 +555,7 @@ "$(inherited)", ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_TREAT_WARNINGS_AS_ERRORS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -565,6 +567,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; SWIFT_VERSION = 4.2; }; name = Debug; @@ -603,6 +606,7 @@ ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; + GCC_TREAT_WARNINGS_AS_ERRORS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -613,6 +617,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_TREAT_WARNINGS_AS_ERRORS = YES; SWIFT_VERSION = 4.2; VALIDATE_PRODUCT = YES; }; @@ -629,7 +634,7 @@ MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = com.justeat.JustTweak.Example; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -644,7 +649,7 @@ MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = com.justeat.JustTweak.Example; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; }; name = Release; }; @@ -663,7 +668,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/JustTweak_Example.app/JustTweak_Example"; }; name = Debug; @@ -678,7 +683,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/JustTweak_Example.app/JustTweak_Example"; }; name = Release; diff --git a/Example/JustTweak.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/JustTweak.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Example/JustTweak.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/JustTweak/AppDelegate.swift b/Example/JustTweak/AppDelegate.swift index 6fd64a6..81783af 100644 --- a/Example/JustTweak/AppDelegate.swift +++ b/Example/JustTweak/AppDelegate.swift @@ -35,15 +35,15 @@ class AppDelegate: UIResponder, UIApplicationDelegate { let jsonFileURL = Bundle.main.url(forResource: "ExampleConfiguration", withExtension: "json")! let jsonConfiguration = JSONTweaksConfiguration(jsonURL: jsonFileURL)! - let firebaseConfiguration = FirebaseTweaksConfiguration() +// let firebaseConfiguration = FirebaseTweaksConfiguration() - let optimizelyConfiguration = OptimizelyTweaksConfiguration() - optimizelyConfiguration.userId = UUID().uuidString +// let optimizelyConfiguration = OptimizelyTweaksConfiguration() +// optimizelyConfiguration.userId = UUID().uuidString let userDefaults = UserDefaults.standard let userDefaultsConfiguration = UserDefaultsTweaksConfiguration(userDefaults: userDefaults) - let configurations: [TweaksConfiguration] = [jsonConfiguration, firebaseConfiguration, optimizelyConfiguration, userDefaultsConfiguration] + let configurations: [TweaksConfiguration] = [jsonConfiguration, /*firebaseConfiguration, optimizelyConfiguration,*/ userDefaultsConfiguration] configurationsCoordinator = TweaksConfigurationsCoordinator(configurations: configurations) } } diff --git a/Example/JustTweak/Configurations/FirebaseTweaksConfiguration.swift b/Example/JustTweak/Configurations/FirebaseTweaksConfiguration.swift index 27da7f0..2dcc878 100644 --- a/Example/JustTweak/Configurations/FirebaseTweaksConfiguration.swift +++ b/Example/JustTweak/Configurations/FirebaseTweaksConfiguration.swift @@ -13,11 +13,9 @@ public class FirebaseTweaksConfiguration: NSObject, TweaksConfiguration { public override init() { super.init() - /* DOWNLOAD THE GoogleService.plist from your app in the Firebase console and modify `useFirebase` to true */ - let useFirebase = false - + /* DOWNLOAD THE GoogleService.plist from the Firebase dashboard */ let googleServicePlistURL = Bundle.main.url(forResource: "GoogleService-Info", withExtension: "plist") - if let _ = googleServicePlistURL, useFirebase { + if let _ = googleServicePlistURL { firebaseAppClass.configure() configured = true fetchTweaks() diff --git a/Example/JustTweak/Configurations/OptimizelyTweaksConfiguration.swift b/Example/JustTweak/Configurations/OptimizelyTweaksConfiguration.swift index 235d8ad..80eb92e 100644 --- a/Example/JustTweak/Configurations/OptimizelyTweaksConfiguration.swift +++ b/Example/JustTweak/Configurations/OptimizelyTweaksConfiguration.swift @@ -18,8 +18,7 @@ public class OptimizelyTweaksConfiguration: NSObject, TweaksConfiguration { public override init() { super.init() - let useOptimizely = false - guard useOptimizely else { return } + /* DOWNLOAD THE Optimizely datafile from the Optimizely dashboard */ optimizelyManager = OPTLYManager(builder: OPTLYManagerBuilder(block: { builder in guard let builder = builder, let filePath = Bundle.main.path(forResource: "ExampleOptimizelyDatafile", ofType: "json"), diff --git a/Example/Podfile.lock b/Example/Podfile.lock index bd435bd..1b20e4c 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,30 +1,31 @@ PODS: - - Firebase/Core (5.14.0): + - Firebase/Core (5.20.2): - Firebase/CoreOnly - - FirebaseAnalytics (= 5.4.0) - - Firebase/CoreOnly (5.14.0): - - FirebaseCore (= 5.1.9) - - Firebase/RemoteConfig (5.14.0): + - FirebaseAnalytics (= 5.8.1) + - Firebase/CoreOnly (5.20.2): + - FirebaseCore (= 5.4.1) + - Firebase/RemoteConfig (5.20.2): - Firebase/Core - FirebaseRemoteConfig (= 3.1.0) - FirebaseABTesting (2.0.0): - FirebaseCore (~> 5.0) - Protobuf (~> 3.5) - - FirebaseAnalytics (5.4.0): - - FirebaseCore (~> 5.1) - - FirebaseInstanceID (~> 3.3) - - GoogleAppMeasurement (= 5.4.0) + - FirebaseAnalytics (5.8.1): + - FirebaseCore (~> 5.4) + - FirebaseInstanceID (~> 3.8) + - GoogleAppMeasurement (= 5.8.1) - GoogleUtilities/AppDelegateSwizzler (~> 5.2) - GoogleUtilities/MethodSwizzler (~> 5.2) - GoogleUtilities/Network (~> 5.2) - "GoogleUtilities/NSData+zlib (~> 5.2)" - nanopb (~> 0.3) - - FirebaseCore (5.1.9): + - FirebaseCore (5.4.1): + - GoogleUtilities/Environment (~> 5.2) - GoogleUtilities/Logger (~> 5.2) - - FirebaseInstanceID (3.3.0): - - FirebaseCore (~> 5.1) - - GoogleUtilities/Environment (~> 5.3) - - GoogleUtilities/UserDefaults (~> 5.3) + - FirebaseInstanceID (3.8.1): + - FirebaseCore (~> 5.2) + - GoogleUtilities/Environment (~> 5.2) + - GoogleUtilities/UserDefaults (~> 5.2) - FirebaseRemoteConfig (3.1.0): - FirebaseABTesting (~> 2.0) - FirebaseAnalytics (~> 5.3) @@ -33,55 +34,55 @@ PODS: - GoogleUtilities/Environment (~> 5.2) - "GoogleUtilities/NSData+zlib (~> 5.2)" - Protobuf (~> 3.5) - - GoogleAppMeasurement (5.4.0): + - GoogleAppMeasurement (5.8.1): - GoogleUtilities/AppDelegateSwizzler (~> 5.2) - GoogleUtilities/MethodSwizzler (~> 5.2) - GoogleUtilities/Network (~> 5.2) - "GoogleUtilities/NSData+zlib (~> 5.2)" - nanopb (~> 0.3) - - GoogleUtilities/AppDelegateSwizzler (5.3.6): + - GoogleUtilities/AppDelegateSwizzler (5.8.0): - GoogleUtilities/Environment - GoogleUtilities/Logger - GoogleUtilities/Network - - GoogleUtilities/Environment (5.3.6) - - GoogleUtilities/Logger (5.3.6): + - GoogleUtilities/Environment (5.8.0) + - GoogleUtilities/Logger (5.8.0): - GoogleUtilities/Environment - - GoogleUtilities/MethodSwizzler (5.3.6): + - GoogleUtilities/MethodSwizzler (5.8.0): - GoogleUtilities/Logger - - GoogleUtilities/Network (5.3.6): + - GoogleUtilities/Network (5.8.0): - GoogleUtilities/Logger - "GoogleUtilities/NSData+zlib" - GoogleUtilities/Reachability - - "GoogleUtilities/NSData+zlib (5.3.6)" - - GoogleUtilities/Reachability (5.3.6): + - "GoogleUtilities/NSData+zlib (5.8.0)" + - GoogleUtilities/Reachability (5.8.0): - GoogleUtilities/Logger - - GoogleUtilities/UserDefaults (5.3.6): + - GoogleUtilities/UserDefaults (5.8.0): - GoogleUtilities/Logger - - JustTweak (3.3.0): - - JustTweak/Core (= 3.3.0) - - JustTweak/UI (= 3.3.0) - - JustTweak/Core (3.3.0) - - JustTweak/UI (3.3.0): + - JustTweak (3.4.0): + - JustTweak/Core (= 3.4.0) + - JustTweak/UI (= 3.4.0) + - JustTweak/Core (3.4.0) + - JustTweak/UI (3.4.0): - JustTweak/Core - nanopb (0.3.901): - nanopb/decode (= 0.3.901) - nanopb/encode (= 0.3.901) - nanopb/decode (0.3.901) - nanopb/encode (0.3.901) - - OptimizelySDKCore (2.1.5) - - OptimizelySDKDatafileManager (2.1.5): - - OptimizelySDKShared (= 2.1.5) - - OptimizelySDKEventDispatcher (2.1.5): - - OptimizelySDKShared (= 2.1.5) - - OptimizelySDKiOS (2.1.5): - - OptimizelySDKDatafileManager (= 2.1.5) - - OptimizelySDKEventDispatcher (= 2.1.5) - - OptimizelySDKUserProfileService (= 2.1.5) - - OptimizelySDKShared (2.1.5): - - OptimizelySDKCore (= 2.1.5) - - OptimizelySDKUserProfileService (2.1.5): - - OptimizelySDKShared (= 2.1.5) - - Protobuf (3.6.1) + - OptimizelySDKCore (3.0.2) + - OptimizelySDKDatafileManager (3.0.2): + - OptimizelySDKShared (= 3.0.2) + - OptimizelySDKEventDispatcher (3.0.2): + - OptimizelySDKShared (= 3.0.2) + - OptimizelySDKiOS (3.0.2): + - OptimizelySDKDatafileManager (= 3.0.2) + - OptimizelySDKEventDispatcher (= 3.0.2) + - OptimizelySDKUserProfileService (= 3.0.2) + - OptimizelySDKShared (3.0.2): + - OptimizelySDKCore (= 3.0.2) + - OptimizelySDKUserProfileService (3.0.2): + - OptimizelySDKShared (= 3.0.2) + - Protobuf (3.7.0) DEPENDENCIES: - Firebase/RemoteConfig @@ -112,24 +113,24 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Firebase: 963d5685fae888a56d6d4d9cfce6b9c976958798 + Firebase: 0c8cf33f266410c61ab3e2265cfa412200351d9c FirebaseABTesting: 1f50b8d50f5e3469eea54e7463a7b7fe221d1f5e - FirebaseAnalytics: c06f9d70577d79074214700a71fd5d39de5550fb - FirebaseCore: 8f49b70f57ab5cbb032ef41d64992ded21606459 - FirebaseInstanceID: e2fa4cb35ef5558c200f7f0ad8a53e212215f93e + FirebaseAnalytics: ece1aa57a4f43c64d53a648b5a5e05151aae947b + FirebaseCore: f1a9a8be1aee4bf71a2fc0f4096df6788bdfda61 + FirebaseInstanceID: a122b0c258720cf250551bb2bedf48c699f80d90 FirebaseRemoteConfig: 7e11c65f0769c09bff6947997c209515058c5318 - GoogleAppMeasurement: 98b71f5e04142793729a5ef23e5b96651ff4b70f - GoogleUtilities: 95996bea7c7d9b8fb811b7507669a4a8762f80c7 - JustTweak: c5ee966f54c0c00b14d6225c3f5714ad6a75a067 + GoogleAppMeasurement: ffe513e90551844a739e7bcbb1d2aca1c28a4338 + GoogleUtilities: 04fce34bcd5620c1ee76fb79172105c74a4df335 + JustTweak: 3f67df9fd81bdfbec4da283df6a70f76291c93f2 nanopb: 2901f78ea1b7b4015c860c2fdd1ea2fee1a18d48 - OptimizelySDKCore: cff8a662f868372ecedcd6be9ce823b546535a16 - OptimizelySDKDatafileManager: 805457da07957741c9199ae4e15e671bf9f6edb0 - OptimizelySDKEventDispatcher: 6c06e5c44422b9463154576a58c316d666558ded - OptimizelySDKiOS: 8b001b9a3a6c12e370811aff7822306d0a41eea8 - OptimizelySDKShared: fc9599c8185d4e59551ed929643ff62c43b7e43c - OptimizelySDKUserProfileService: 7cffcfbcdb104a864f7961b7a08e0a13de4540a4 - Protobuf: 1eb9700044745f00181c136ef21b8ff3ad5a0fd5 + OptimizelySDKCore: b888f8e8397e74ca811b4f0e236127ef8da11f77 + OptimizelySDKDatafileManager: 275d98dc1dad055a484b405fe10aecd1c2929827 + OptimizelySDKEventDispatcher: fea27e443627f9afd75594dd7687e2251bbef174 + OptimizelySDKiOS: 4b99fc5fd302ba272f9633fc7fd72c8486997a1e + OptimizelySDKShared: 4dc93074a383d65af2872cce9ee5afc26f730e08 + OptimizelySDKUserProfileService: e61d5d40fdc0cd6c1cc62ce23649f64955f18cda + Protobuf: 7a877b7f3e5964e3fce995e2eb323dbc6831bb5a PODFILE CHECKSUM: bc8e9826fb88612e28170bb505bed61edc07bc72 -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/Gemfile b/Gemfile index f30149d..188b2cc 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,7 @@ -ruby '2.5.1' +ruby '2.5.3' source 'https://rubygems.org' -gem 'cocoapods', '~> 1.5.3' -gem 'fastlane', '~> 2.108.0' +gem 'cocoapods', '~> 1.6.1' +gem 'fastlane', '~> 2.112.0' +gem 'xcode-install', '~> 2.5.0' diff --git a/Gemfile.lock b/Gemfile.lock index 1de58ca..0ee3410 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,45 +2,45 @@ GEM remote: https://rubygems.org/ specs: CFPropertyList (3.0.0) - activesupport (4.2.10) + activesupport (4.2.11.1) i18n (~> 0.7) minitest (~> 5.1) thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) - addressable (2.5.2) + addressable (2.6.0) public_suffix (>= 2.0.2, < 4.0) atomos (0.1.3) babosa (1.0.2) claide (1.0.2) - cocoapods (1.5.3) + cocoapods (1.6.1) activesupport (>= 4.0.2, < 5) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.5.3) + cocoapods-core (= 1.6.1) cocoapods-deintegrate (>= 1.0.2, < 2.0) - cocoapods-downloader (>= 1.2.0, < 2.0) + cocoapods-downloader (>= 1.2.2, < 2.0) cocoapods-plugins (>= 1.0.0, < 2.0) cocoapods-search (>= 1.0.0, < 2.0) cocoapods-stats (>= 1.0.0, < 2.0) - cocoapods-trunk (>= 1.3.0, < 2.0) + cocoapods-trunk (>= 1.3.1, < 2.0) cocoapods-try (>= 1.1.0, < 2.0) colored2 (~> 3.1) escape (~> 0.0.4) - fourflusher (~> 2.0.1) + fourflusher (>= 2.2.0, < 3.0) gh_inspector (~> 1.0) - molinillo (~> 0.6.5) + molinillo (~> 0.6.6) nap (~> 1.0) - ruby-macho (~> 1.1) - xcodeproj (>= 1.5.7, < 2.0) - cocoapods-core (1.5.3) + ruby-macho (~> 1.4) + xcodeproj (>= 1.8.1, < 2.0) + cocoapods-core (1.6.1) activesupport (>= 4.0.2, < 6) fuzzy_match (~> 2.0.4) nap (~> 1.0) - cocoapods-deintegrate (1.0.2) + cocoapods-deintegrate (1.0.4) cocoapods-downloader (1.2.2) cocoapods-plugins (1.0.0) nap cocoapods-search (1.0.0) - cocoapods-stats (1.0.0) + cocoapods-stats (1.1.0) cocoapods-trunk (1.3.1) nap (>= 0.8, < 2.0) netrc (~> 0.11) @@ -49,24 +49,25 @@ GEM colored2 (3.1.2) commander-fastlane (4.4.6) highline (~> 1.7.2) - concurrent-ruby (1.1.3) + concurrent-ruby (1.1.5) declarative (0.0.10) declarative-option (0.1.0) + digest-crc (0.4.1) domain_name (0.5.20180417) unf (>= 0.0.5, < 1.0.0) - dotenv (2.5.0) + dotenv (2.7.2) emoji_regex (0.1.1) escape (0.0.4) - excon (0.62.0) + excon (0.64.0) faraday (0.15.4) multipart-post (>= 1.2, < 3) faraday-cookie_jar (0.0.6) faraday (>= 0.7.4) http-cookie (~> 1.0.0) - faraday_middleware (0.12.2) + faraday_middleware (0.13.1) faraday (>= 0.7.4, < 1.0) - fastimage (2.1.4) - fastlane (2.108.0) + fastimage (2.1.5) + fastlane (2.112.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.3, < 3.0.0) babosa (>= 1.0.2, < 2.0.0) @@ -82,6 +83,7 @@ GEM fastimage (>= 2.1.0, < 3.0.0) gh_inspector (>= 1.1.2, < 2.0.0) google-api-client (>= 0.21.2, < 0.24.0) + google-cloud-storage (>= 1.15.0, < 2.0.0) highline (>= 1.7.2, < 2.0.0) json (< 3.0.0) mini_magick (~> 4.5.1) @@ -102,7 +104,7 @@ GEM xcodeproj (>= 1.6.0, < 2.0.0) xcpretty (~> 0.3.0) xcpretty-travis-formatter (>= 0.0.3) - fourflusher (2.0.1) + fourflusher (2.2.0) fuzzy_match (2.0.4) gh_inspector (1.1.3) google-api-client (0.23.9) @@ -113,6 +115,15 @@ GEM representable (~> 3.0) retriable (>= 2.0, < 4.0) signet (~> 0.9) + google-cloud-core (1.3.0) + google-cloud-env (~> 1.0) + google-cloud-env (1.0.5) + faraday (~> 0.11) + google-cloud-storage (1.16.0) + digest-crc (~> 0.4) + google-api-client (~> 0.23) + google-cloud-core (~> 1.2) + googleauth (>= 0.6.2, < 0.10.0) googleauth (0.6.7) faraday (~> 0.12) jwt (>= 1.4, < 3.0) @@ -126,12 +137,12 @@ GEM httpclient (2.8.3) i18n (0.9.5) concurrent-ruby (~> 1.0) - json (2.1.0) + json (2.2.0) jwt (2.1.0) memoist (0.16.0) mime-types (3.2.2) mime-types-data (~> 3.2015) - mime-types-data (3.2018.0812) + mime-types-data (3.2019.0331) mini_magick (4.5.1) minitest (5.11.3) molinillo (0.6.6) @@ -142,8 +153,8 @@ GEM nap (1.1.0) naturally (2.2.0) netrc (0.11.0) - os (1.0.0) - plist (3.4.0) + os (1.0.1) + plist (3.5.0) public_suffix (2.0.5) representable (3.0.4) declarative (< 0.1.0) @@ -151,7 +162,7 @@ GEM uber (< 0.2.0) retriable (3.1.2) rouge (2.0.7) - ruby-macho (1.3.1) + ruby-macho (1.4.0) rubyzip (1.2.2) security (0.1.3) signet (0.11.0) @@ -167,19 +178,22 @@ GEM terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) thread_safe (0.3.6) - tty-cursor (0.6.0) + tty-cursor (0.6.1) tty-screen (0.6.5) - tty-spinner (0.8.0) - tty-cursor (>= 0.5.0) + tty-spinner (0.9.0) + tty-cursor (~> 0.6.0) tzinfo (1.2.5) thread_safe (~> 0.1) uber (0.1.0) unf (0.1.4) unf_ext - unf_ext (0.0.7.5) - unicode-display_width (1.4.0) + unf_ext (0.0.7.6) + unicode-display_width (1.5.0) word_wrap (1.0.0) - xcodeproj (1.7.0) + xcode-install (2.5.0) + claide (>= 0.9.1, < 1.1.0) + fastlane (>= 2.1.0, < 3.0.0) + xcodeproj (1.9.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) @@ -194,11 +208,12 @@ PLATFORMS ruby DEPENDENCIES - cocoapods (~> 1.5.3) - fastlane (~> 2.108.0) + cocoapods (~> 1.6.1) + fastlane (~> 2.112.0) + xcode-install (~> 2.5.0) RUBY VERSION - ruby 2.5.1p57 + ruby 2.5.3p105 BUNDLED WITH - 1.16.2 + 1.16.6 diff --git a/JustTweak.podspec b/JustTweak.podspec index fce0d57..41f8cf5 100644 --- a/JustTweak.podspec +++ b/JustTweak.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = 'JustTweak' - s.version = '3.3.0' + s.version = '3.4.0' s.summary = 'A framework for feature flagging, locally and remotely configure and A/B test iOS apps.' s.description = <<-DESC JustTweak is a framework for feature flagging, locally and remotely configure and A/B test iOS apps. @@ -13,7 +13,7 @@ JustTweak is a framework for feature flagging, locally and remotely configure an s.source = { :git => 'https://github.com/justeat/JustTweak.git', :tag => s.version.to_s } s.ios.deployment_target = '10.0' - s.swift_version = '4.2' + s.swift_version = '5.0' s.default_subspecs = 'Core', 'UI' s.ios.resource_bundle = { 'JustTweak' => 'JustTweak/Assets/**/*' } diff --git a/JustTweak/Classes/Core/Tweak.swift b/JustTweak/Classes/Core/Tweak.swift index 19521c5..c7dc81a 100644 --- a/JustTweak/Classes/Core/Tweak.swift +++ b/JustTweak/Classes/Core/Tweak.swift @@ -72,23 +72,23 @@ final public class Tweak: NSObject { } public extension Tweak { - public var intValue: Int { + var intValue: Int { return value.intValue } - public var floatValue: Float { + var floatValue: Float { return value.floatValue } - public var doubleValue: Double { + var doubleValue: Double { return value.doubleValue } - public var boolValue: Bool { + var boolValue: Bool { return value.boolValue } - public var stringValue: String? { + var stringValue: String? { return value.stringValue } diff --git a/JustTweak/Classes/Core/TweakExtensions.swift b/JustTweak/Classes/Core/TweakExtensions.swift index a7ac4bd..9fc98d7 100644 --- a/JustTweak/Classes/Core/TweakExtensions.swift +++ b/JustTweak/Classes/Core/TweakExtensions.swift @@ -7,7 +7,7 @@ import Foundation public extension String { - public var tweakValue: TweakValue { + var tweakValue: TweakValue { get { let lowecase = lowercased() if lowecase == "true" || lowecase == "false" { diff --git a/JustTweak/Classes/Core/TweakValue.swift b/JustTweak/Classes/Core/TweakValue.swift index 4f51a04..e1eff70 100644 --- a/JustTweak/Classes/Core/TweakValue.swift +++ b/JustTweak/Classes/Core/TweakValue.swift @@ -19,23 +19,23 @@ extension String: TweakValue { public extension TweakValue { - public var intValue: Int { + var intValue: Int { return Int(doubleValue) } - public var floatValue: Float { + var floatValue: Float { return Float(doubleValue) } - public var doubleValue: Double { + var doubleValue: Double { return Double(description) ?? 0.0 } - public var boolValue: Bool { + var boolValue: Bool { return self as? Bool ?? false } - public var stringValue: String? { + var stringValue: String? { return self as? String }