diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fd1ed97..8c561b7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,7 +30,7 @@ jobs: - uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: '11' + java-version: '17' - uses: subosito/flutter-action@v2 with: channel: 'stable' diff --git a/splitio/example/android/app/build.gradle b/splitio/example/android/app/build.gradle index 0e0c772..e231f55 100644 --- a/splitio/example/android/app/build.gradle +++ b/splitio/example/android/app/build.gradle @@ -25,8 +25,8 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion flutter.compileSdkVersion + compileSdk flutter.compileSdkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 @@ -48,6 +48,8 @@ android { signingConfig signingConfigs.debug } } + + namespace 'io.split.splitio_example' } flutter { diff --git a/splitio/example/android/app/src/debug/AndroidManifest.xml b/splitio/example/android/app/src/debug/AndroidManifest.xml index 2aa7fd2..f880684 100644 --- a/splitio/example/android/app/src/debug/AndroidManifest.xml +++ b/splitio/example/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,4 @@ - + diff --git a/splitio/example/android/app/src/main/AndroidManifest.xml b/splitio/example/android/app/src/main/AndroidManifest.xml index db67ecb..61f82a9 100644 --- a/splitio/example/android/app/src/main/AndroidManifest.xml +++ b/splitio/example/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,4 @@ - + + diff --git a/splitio/example/android/build.gradle b/splitio/example/android/build.gradle index 0822484..45f577c 100644 --- a/splitio/example/android/build.gradle +++ b/splitio/example/android/build.gradle @@ -5,7 +5,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:7.4.2' + classpath 'com.android.tools.build:gradle:8.4.0' } } diff --git a/splitio/example/android/gradle.properties b/splitio/example/android/gradle.properties index 94adc3a..b9a9a24 100644 --- a/splitio/example/android/gradle.properties +++ b/splitio/example/android/gradle.properties @@ -1,3 +1,6 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true +android.defaults.buildfeatures.buildconfig=true +android.nonTransitiveRClass=false +android.nonFinalResIds=false diff --git a/splitio/example/android/gradle/wrapper/gradle-wrapper.properties b/splitio/example/android/gradle/wrapper/gradle-wrapper.properties index bfd9890..2a0fcc1 100644 --- a/splitio/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/splitio/example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip diff --git a/splitio/example/ios/Flutter/AppFrameworkInfo.plist b/splitio/example/ios/Flutter/AppFrameworkInfo.plist index 9625e10..7c56964 100644 --- a/splitio/example/ios/Flutter/AppFrameworkInfo.plist +++ b/splitio/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/splitio/example/ios/Podfile.lock b/splitio/example/ios/Podfile.lock index 06aad74..6d9b1ac 100644 --- a/splitio/example/ios/Podfile.lock +++ b/splitio/example/ios/Podfile.lock @@ -1,9 +1,9 @@ PODS: - Flutter (1.0.0) - - Split (2.24.3) - - splitio_ios (0.4.0): + - Split (2.25.0) + - splitio_ios (0.5.0): - Flutter - - Split (~> 2.24.2) + - Split (~> 2.25.0) DEPENDENCIES: - Flutter (from `Flutter`) @@ -20,9 +20,9 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/splitio_ios/ios" SPEC CHECKSUMS: - Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - Split: 49b2d7a93a57062f4de8f210071b30cc86727937 - splitio_ios: a2e051130df42c320c500d90b3005999af7eefe8 + Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 + Split: 268875814285de6ab6cd25744e170b407651a080 + splitio_ios: f6af0613ceedf0c037673afe256479bb0f6fc6ec PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048 diff --git a/splitio/example/ios/Runner.xcodeproj/project.pbxproj b/splitio/example/ios/Runner.xcodeproj/project.pbxproj index a69a7aa..be642f5 100644 --- a/splitio/example/ios/Runner.xcodeproj/project.pbxproj +++ b/splitio/example/ios/Runner.xcodeproj/project.pbxproj @@ -164,7 +164,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1300; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -351,7 +351,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -428,7 +428,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -477,7 +477,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/splitio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/splitio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 087c2dd..e0c9630 100644 --- a/splitio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/splitio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ =3.0.0-0 <4.0.0" - flutter: ">=2.5.0" + dart: ">=3.3.0 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/splitio/pubspec.yaml b/splitio/pubspec.yaml index 576650b..9c957f9 100644 --- a/splitio/pubspec.yaml +++ b/splitio/pubspec.yaml @@ -19,8 +19,12 @@ flutter: dependencies: flutter: sdk: flutter - splitio_android: ^0.1.8 - splitio_ios: ^0.1.8 + # splitio_android: ^0.1.8 + splitio_android: + path: ../splitio_android + # splitio_ios: ^0.1.8 + splitio_ios: + path: ../splitio_ios splitio_platform_interface: ^1.4.0 dev_dependencies: diff --git a/splitio_android/android/build.gradle b/splitio_android/android/build.gradle index e7a949b..06f53d7 100644 --- a/splitio_android/android/build.gradle +++ b/splitio_android/android/build.gradle @@ -8,7 +8,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:7.0.0' + classpath 'com.android.tools.build:gradle:8.4.0' } } @@ -30,15 +30,17 @@ android { } defaultConfig { - minSdk 19 + minSdkVersion 19 consumerProguardFiles 'split-proguard-rules.pro' } dependencies { - implementation 'io.split.client:android-client:4.0.0' + implementation 'io.split.client:android-client:4.1.0' testImplementation 'junit:junit:4.13.2' testImplementation 'org.mockito:mockito-core:3.12.4' } + + namespace 'io.split.splitio' } diff --git a/splitio_android/android/gradle/wrapper/gradle-wrapper.properties b/splitio_android/android/gradle/wrapper/gradle-wrapper.properties index 8049c68..17655d0 100644 --- a/splitio_android/android/gradle/wrapper/gradle-wrapper.properties +++ b/splitio_android/android/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/splitio_android/android/src/main/AndroidManifest.xml b/splitio_android/android/src/main/AndroidManifest.xml index a1bff08..a2f47b6 100644 --- a/splitio_android/android/src/main/AndroidManifest.xml +++ b/splitio_android/android/src/main/AndroidManifest.xml @@ -1,3 +1,2 @@ - + diff --git a/splitio_ios/example/ios/Flutter/AppFrameworkInfo.plist b/splitio_ios/example/ios/Flutter/AppFrameworkInfo.plist index 8d4492f..7c56964 100644 --- a/splitio_ios/example/ios/Flutter/AppFrameworkInfo.plist +++ b/splitio_ios/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 9.0 + 12.0 diff --git a/splitio_ios/example/ios/Podfile.lock b/splitio_ios/example/ios/Podfile.lock index 69856b8..522e427 100644 --- a/splitio_ios/example/ios/Podfile.lock +++ b/splitio_ios/example/ios/Podfile.lock @@ -1,9 +1,9 @@ PODS: - Flutter (1.0.0) - - Split (2.24.3) - - splitio_ios (0.4.0): + - Split (2.25.0) + - splitio_ios (0.5.0): - Flutter - - Split (~> 2.24.3) + - Split (~> 2.25.0) DEPENDENCIES: - Flutter (from `Flutter`) @@ -20,9 +20,9 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/splitio_ios/ios" SPEC CHECKSUMS: - Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - Split: 49b2d7a93a57062f4de8f210071b30cc86727937 - splitio_ios: 173af2c0f8e068a5f96e4d13f7c661aba8e09db0 + Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 + Split: 268875814285de6ab6cd25744e170b407651a080 + splitio_ios: f6af0613ceedf0c037673afe256479bb0f6fc6ec PODFILE CHECKSUM: aed42fc5c94ade572556b7ed357c5c57f1bd83a2 diff --git a/splitio_ios/example/ios/Runner.xcodeproj/project.pbxproj b/splitio_ios/example/ios/Runner.xcodeproj/project.pbxproj index 7f3b9bb..667bff1 100644 --- a/splitio_ios/example/ios/Runner.xcodeproj/project.pbxproj +++ b/splitio_ios/example/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 51; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -231,7 +231,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1300; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -309,10 +309,12 @@ }; 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", ); name = "Thin Binary"; outputPaths = ( @@ -379,6 +381,7 @@ }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -487,7 +490,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -564,7 +567,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -613,7 +616,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/splitio_ios/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/splitio_ios/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 087c2dd..e0c9630 100644 --- a/splitio_ios/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/splitio_ios/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ UIViewControllerBasedStatusBarAppearance + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + diff --git a/splitio_ios/example/ios/SplitTests/SplitTests.swift b/splitio_ios/example/ios/SplitTests/SplitTests.swift index c01d314..7f378bb 100644 --- a/splitio_ios/example/ios/SplitTests/SplitTests.swift +++ b/splitio_ios/example/ios/SplitTests/SplitTests.swift @@ -334,7 +334,6 @@ class SplitFactoryStub: SplitFactory { } class SplitClientStub: SplitClient { - var destroyCalled: Bool = false var methodCalls = [ "getTreatment": false, @@ -407,8 +406,20 @@ class SplitClientStub: SplitClient { return [:] } + func on(event: SplitEvent, runInBackground: Bool, execute action: @escaping SplitAction) { + if event == .sdkReady { + sdkReadyEventAction = action + } + } + + func on(event: SplitEvent, queue: DispatchQueue, execute action: @escaping SplitAction) { + if event == .sdkReady { + sdkReadyEventAction = action + } + } + func on(event: SplitEvent, execute action: @escaping SplitAction) { - if event == SplitEvent.sdkReady { + if event == .sdkReady { sdkReadyEventAction = action } } diff --git a/splitio_ios/ios/splitio_ios.podspec b/splitio_ios/ios/splitio_ios.podspec index a723bf4..9fcdaeb 100644 --- a/splitio_ios/ios/splitio_ios.podspec +++ b/splitio_ios/ios/splitio_ios.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'splitio_ios' - s.version = '0.4.0' + s.version = '0.5.0' s.summary = 'split.io official Flutter plugin.' s.description = <<-DESC split.io official Flutter plugin. @@ -15,7 +15,7 @@ split.io official Flutter plugin. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'Split', '~> 2.24.3' + s.dependency 'Split', '~> 2.25.0' s.platform = :ios, '9.0' # Flutter.framework does not contain a i386 slice.