Skip to content

Release 1.0.0 #153

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 34 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
111d0e4
RolloutCacheConfiguration & SplitView updates in platform_interface (…
gthea Jan 28, 2025
f184762
Update config & method parser in Android implementation (#144)
gthea Jan 28, 2025
b781991
Update config & method parser in iOS implementation (#145)
gthea Jan 29, 2025
241752b
Updated License Year (#142)
github-actions[bot] Jul 14, 2025
c51e189
Add prereqs to SplitView (#148)
gthea Aug 11, 2025
62dfc28
WIP
gthea Aug 12, 2025
ff2a069
Adding evaluation options methods
gthea Aug 12, 2025
091d5e8
Change test names'
gthea Aug 12, 2025
bae5f5d
splitio updates
gthea Aug 12, 2025
b520a67
Add properties to impresion in impression listener
gthea Aug 13, 2025
a77fd23
Prereqs, imp disabled & eval options in Android impl
gthea Aug 13, 2025
446777a
Update test
gthea Aug 13, 2025
8022195
Update splitio_ios test
gthea Aug 13, 2025
31901cb
EvaluationOptions in dart (#149)
gthea Aug 13, 2025
6a7f32f
Merge branch 'SDKS-9245_baseline' into FME-8343
gthea Aug 13, 2025
2b8cef7
WIP ios changes
gthea Aug 13, 2025
d274592
Fixed test
gthea Aug 13, 2025
968343f
Evaluation options, prereqs & imp disabled in Android implementation …
gthea Aug 14, 2025
c1ff30e
Evaluation options, prereqs & imp disabled in iOS implementation (#151)
gthea Aug 14, 2025
e0da959
Merge branch 'SDKS-9245_baseline' into release_1.0.0-rc.1
gthea Aug 14, 2025
c212bb6
Fixes
gthea Aug 14, 2025
72e876b
Version name and code for example app
gthea Aug 14, 2025
8e2e6d2
Macos 14 in build workflow
gthea Aug 14, 2025
b425ba1
Macos 14 in test workflow
gthea Aug 14, 2025
52cfd42
Prepare release 1.0.0 rc.1 (#152)
gthea Aug 14, 2025
e81fd5f
Update platform_interface changelog
gthea Aug 14, 2025
d06b5af
Update splitio_android
gthea Aug 14, 2025
df2eba9
Update splitio_ios
gthea Aug 14, 2025
2a1cf24
Update splitio
gthea Aug 14, 2025
f411e28
Remove publish_to: none
gthea Aug 14, 2025
ec1a001
Platform to 2.0.0
gthea Aug 14, 2025
e4c7d99
Update splitio_ios to 1.0.0
gthea Aug 14, 2025
330ba62
Update splitio_ios to 1.0.0
gthea Aug 14, 2025
175d5f3
splitio to 1.0.0
gthea Aug 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:

build-ios:
name: Build iOS
runs-on: [ macos-latest ]
runs-on: [ macos-14 ]

steps:
- uses: actions/checkout@v4
Expand All @@ -55,7 +55,7 @@ jobs:

test-ios:
name: Test iOS
runs-on: [ macos-latest ]
runs-on: [ macos-14 ]

steps:
- uses: actions/checkout@v4
Expand Down
10 changes: 10 additions & 0 deletions splitio/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
# 1.0.0 (Aug 14, 2025)
- Updated Android SDK to `5.3.1` & iOS SDK to `3.3.2`
- Added support for rule-based segments. These segments determine membership at runtime by evaluating their configured rules against the user attributes provided to the SDK.
- Added support for feature flag prerequisites. This allows customers to define dependency conditions between flags, which are evaluated before any allowlists or targeting rules.
- Added two new configuration options to control the behavior of the persisted rollout plan cache. Use `rolloutCacheConfiguration` in the config.
- Added a new optional argument to the client `getTreatment` methods to allow passing additional evaluation options, such as a map of properties to append to the generated impressions sent to Split backend. Read more in our docs.
- Added support for the new impressions tracking toggle available on feature flags, both respecting the setting and including the new field being returned on SplitView type objects. Read more in our docs.

# 1.0.0-rc.1 (Aug 14, 2025)

# 0.2.0 (Nov 6, 2024)
* Added support for targeting rules based on large segments.
* BREAKING CHANGE (for Split Proxy users):
Expand Down
2 changes: 1 addition & 1 deletion splitio/LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@

END OF TERMS AND CONDITIONS

Copyright © 2024 Split Software, Inc.
Copyright © 2025 Split Software, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
31 changes: 5 additions & 26 deletions splitio/example/android/app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,29 +1,8 @@
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
plugins {
id 'com.android.application'
id 'dev.flutter.flutter-gradle-plugin'
}

apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

android {

compileSdk flutter.compileSdkVersion
Expand All @@ -37,8 +16,8 @@ android {
applicationId "io.split.splitio_example"
minSdkVersion flutter.minSdkVersion
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
versionCode 1
versionName "1.0"
}

buildTypes {
Expand Down
11 changes: 0 additions & 11 deletions splitio/example/android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,14 +1,3 @@
buildscript {
repositories {
google()
mavenCentral()
}

dependencies {
classpath 'com.android.tools.build:gradle:8.4.0'
}
}

allprojects {
repositories {
google()
Expand Down
29 changes: 21 additions & 8 deletions splitio/example/android/settings.gradle
Original file line number Diff line number Diff line change
@@ -1,11 +1,24 @@
include ':app'
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}()

def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
def properties = new Properties()
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")

assert localPropertiesFile.exists()
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}

def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0" // apply true
id "com.android.application" version "8.4.0" apply false
}

include ":app"
12 changes: 6 additions & 6 deletions splitio/example/ios/Podfile.lock
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
PODS:
- Flutter (1.0.0)
- Split (3.0.0)
- splitio_ios (0.7.0):
- Split (3.3.2)
- splitio_ios (0.8.0):
- Flutter
- Split (~> 3.0.0)
- Split (~> 3.3.2)

DEPENDENCIES:
- Flutter (from `Flutter`)
Expand All @@ -21,9 +21,9 @@ EXTERNAL SOURCES:

SPEC CHECKSUMS:
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
Split: 66424040ad573d052f58269f841e71b34578a916
splitio_ios: e4e3becbe89cae0a2fa9ca03a575c21f23af0d90
Split: 0d4962a6c15180e1857c1a3753e1ae9c91a6150b
splitio_ios: 438ad21d0dfe467670f8b9508773b77b16a71d6b

PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048

COCOAPODS: 1.15.0
COCOAPODS: 1.16.2
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
shouldUseLaunchSchemeArgsEnv = "YES">
<MacroExpansion>
<BuildableReference
Expand Down Expand Up @@ -53,11 +54,13 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
enableGPUValidationMode = "1"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
Expand Down
2 changes: 1 addition & 1 deletion splitio/example/ios/Runner/AppDelegate.swift
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import UIKit
import Flutter

@UIApplicationMain
@main
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
Expand Down
Loading