Skip to content

Commit d18dd89

Browse files
authored
Merge pull request #153 from splitio/update-1.0.0-rc.1
Release 1.0.0
2 parents c195d67 + 175d5f3 commit d18dd89

File tree

62 files changed

+1569
-446
lines changed

Some content is hidden

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

62 files changed

+1569
-446
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343

4444
build-ios:
4545
name: Build iOS
46-
runs-on: [ macos-latest ]
46+
runs-on: [ macos-14 ]
4747

4848
steps:
4949
- uses: actions/checkout@v4
@@ -55,7 +55,7 @@ jobs:
5555

5656
test-ios:
5757
name: Test iOS
58-
runs-on: [ macos-latest ]
58+
runs-on: [ macos-14 ]
5959

6060
steps:
6161
- uses: actions/checkout@v4

splitio/CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
# 1.0.0 (Aug 14, 2025)
2+
- Updated Android SDK to `5.3.1` & iOS SDK to `3.3.2`
3+
- 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.
4+
- Added support for feature flag prerequisites. This allows customers to define dependency conditions between flags, which are evaluated before any allowlists or targeting rules.
5+
- Added two new configuration options to control the behavior of the persisted rollout plan cache. Use `rolloutCacheConfiguration` in the config.
6+
- 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.
7+
- 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.
8+
9+
# 1.0.0-rc.1 (Aug 14, 2025)
10+
111
# 0.2.0 (Nov 6, 2024)
212
* Added support for targeting rules based on large segments.
313
* BREAKING CHANGE (for Split Proxy users):

splitio/LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@
176176

177177
END OF TERMS AND CONDITIONS
178178

179-
Copyright © 2024 Split Software, Inc.
179+
Copyright © 2025 Split Software, Inc.
180180

181181
Licensed under the Apache License, Version 2.0 (the "License");
182182
you may not use this file except in compliance with the License.

splitio/example/android/app/build.gradle

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,8 @@
1-
def localProperties = new Properties()
2-
def localPropertiesFile = rootProject.file('local.properties')
3-
if (localPropertiesFile.exists()) {
4-
localPropertiesFile.withReader('UTF-8') { reader ->
5-
localProperties.load(reader)
6-
}
7-
}
8-
9-
def flutterRoot = localProperties.getProperty('flutter.sdk')
10-
if (flutterRoot == null) {
11-
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
12-
}
13-
14-
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
15-
if (flutterVersionCode == null) {
16-
flutterVersionCode = '1'
17-
}
18-
19-
def flutterVersionName = localProperties.getProperty('flutter.versionName')
20-
if (flutterVersionName == null) {
21-
flutterVersionName = '1.0'
1+
plugins {
2+
id 'com.android.application'
3+
id 'dev.flutter.flutter-gradle-plugin'
224
}
235

24-
apply plugin: 'com.android.application'
25-
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
26-
276
android {
287

298
compileSdk flutter.compileSdkVersion
@@ -37,8 +16,8 @@ android {
3716
applicationId "io.split.splitio_example"
3817
minSdkVersion flutter.minSdkVersion
3918
targetSdkVersion flutter.targetSdkVersion
40-
versionCode flutterVersionCode.toInteger()
41-
versionName flutterVersionName
19+
versionCode 1
20+
versionName "1.0"
4221
}
4322

4423
buildTypes {

splitio/example/android/build.gradle

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,3 @@
1-
buildscript {
2-
repositories {
3-
google()
4-
mavenCentral()
5-
}
6-
7-
dependencies {
8-
classpath 'com.android.tools.build:gradle:8.4.0'
9-
}
10-
}
11-
121
allprojects {
132
repositories {
143
google()
Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,24 @@
1-
include ':app'
1+
pluginManagement {
2+
def flutterSdkPath = {
3+
def properties = new Properties()
4+
file("local.properties").withInputStream { properties.load(it) }
5+
def flutterSdkPath = properties.getProperty("flutter.sdk")
6+
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
7+
return flutterSdkPath
8+
}()
29

3-
def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
4-
def properties = new Properties()
10+
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
511

6-
assert localPropertiesFile.exists()
7-
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
12+
repositories {
13+
google()
14+
mavenCentral()
15+
gradlePluginPortal()
16+
}
17+
}
818

9-
def flutterSdkPath = properties.getProperty("flutter.sdk")
10-
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
11-
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
19+
plugins {
20+
id "dev.flutter.flutter-plugin-loader" version "1.0.0" // apply true
21+
id "com.android.application" version "8.4.0" apply false
22+
}
23+
24+
include ":app"

splitio/example/ios/Podfile.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
PODS:
22
- Flutter (1.0.0)
3-
- Split (3.0.0)
4-
- splitio_ios (0.7.0):
3+
- Split (3.3.2)
4+
- splitio_ios (0.8.0):
55
- Flutter
6-
- Split (~> 3.0.0)
6+
- Split (~> 3.3.2)
77

88
DEPENDENCIES:
99
- Flutter (from `Flutter`)
@@ -21,9 +21,9 @@ EXTERNAL SOURCES:
2121

2222
SPEC CHECKSUMS:
2323
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
24-
Split: 66424040ad573d052f58269f841e71b34578a916
25-
splitio_ios: e4e3becbe89cae0a2fa9ca03a575c21f23af0d90
24+
Split: 0d4962a6c15180e1857c1a3753e1ae9c91a6150b
25+
splitio_ios: 438ad21d0dfe467670f8b9508773b77b16a71d6b
2626

2727
PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048
2828

29-
COCOAPODS: 1.15.0
29+
COCOAPODS: 1.16.2

splitio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
buildConfiguration = "Debug"
2727
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
2828
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
2930
shouldUseLaunchSchemeArgsEnv = "YES">
3031
<MacroExpansion>
3132
<BuildableReference
@@ -53,11 +54,13 @@
5354
buildConfiguration = "Debug"
5455
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
5556
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
57+
customLLDBInitFile = "$(SRCROOT)/Flutter/ephemeral/flutter_lldbinit"
5658
launchStyle = "0"
5759
useCustomWorkingDirectory = "NO"
5860
ignoresPersistentStateOnLaunch = "NO"
5961
debugDocumentVersioning = "YES"
6062
debugServiceExtension = "internal"
63+
enableGPUValidationMode = "1"
6164
allowLocationSimulation = "YES">
6265
<BuildableProductRunnable
6366
runnableDebuggingMode = "0">

splitio/example/ios/Runner/AppDelegate.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import UIKit
22
import Flutter
33

4-
@UIApplicationMain
4+
@main
55
@objc class AppDelegate: FlutterAppDelegate {
66
override func application(
77
_ application: UIApplication,

0 commit comments

Comments
 (0)