Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: phalva/optimizely-flutter-sdk
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: optimizely/optimizely-flutter-sdk
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 7 commits
  • 22 files changed
  • 1 contributor

Commits on Oct 3, 2025

  1. [FSSDK-11875] chore: add support for android 15 (optimizely#84)

    * build: update Android build configurations
    
    - Bump compile SDK version to 35 and build tools version to "35.0.0"
    - Update target SDK version to 35
    - Add namespace 'com.optimizely.optimizely_flutter_sdk'
    - Enable buildConfig feature
    - Update kotlin-stdlib-jdk7 to version 2.1.0
    - Update jackson-databind to version 2.17.2
    - Set minSdkVersion and targetSdkVersion to 35 for example app
    - Update distributionUrl in gradle-wrapper.properties to Gradle 8.10.2
    - Update android plugin version to 8.7.0 and kotlin-android version to 2.1.0
    
    * build: update Android SDK versions
    
    - Update compile SDK version to 36 and build tools version to "36.0.0"
    - Change min SDK version to 21 and target SDK version to 36 in the Android build configuration
    - Update compile SDK version to 36 and target SDK version to 36 in the example app build.gradle file
    
    * fix: update android build configuration
    
    - Update compile_sdk_version and build_tools_version to 35
    - Remove target_sdk_version from ext
    - Update compileSdkVersion and targetSdkVersion in app/build.gradle to 35
    
    * refactor: update compile and target SDK versions
    
    - Update compile SDK version to use project property if available, fallback to default
    - Update target SDK version to use project property if available, fallback to default
    
    * fix: remove conditional expressions for compileSdkVersion and targetSdkVersion
    
    - Simplify specifying compileSdkVersion and targetSdkVersion directly from flutter configuration
    muzahidul-opti authored Oct 3, 2025
    Configuration menu
    Copy the full SHA
    5913f27 View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2025

  1. [FSSDK-11888] fix: disable code minify to support R8 compatibility (o…

    …ptimizely#87)
    
    * build: update minifyEnabled setting in release build
    
    - Change minifyEnabled from true to false in the release buildType
    - Update the ProGuard configuration to exclude javax.mail and javax.activation. classes
    
    * chore: update ProGuard rules
    
    - Keep necessary classes for Optimizely and Jackson libraries
    - Keep Logback classes
    - Remove unnecessary warnings for javax.mail classes
    - Add ProGuard configuration to build.gradle for minification
    - Update proguard-rules.txt in app folder
    
    * build: enable resource shrinking in release build
    
    - Add configuration to shrink resources for reducing APK size
    
    * chore: update build configuration
    
    - Remove 'minifyEnabled' setting from release build type in android/build.gradle
    - Exclude javax.mail and javax.activation classes in proguard configuration
    - Delete deprecated mail classes warning in proguard-rules.txt
    muzahidul-opti authored Oct 9, 2025
    Configuration menu
    Copy the full SHA
    3970033 View commit details
    Browse the repository at this point in the history
  2. chore: prepare for release 3.1.0 (optimizely#85)

    * feat: add Android 15 support and update versions
    
    - Update AGP version to 8.7.0
    - Update gradle version to 8.10.2
    - Update kotlin version to 2.1.0
    - Update SDK version to 3.1.0 in README.md, package_info.dart, and pubspec.yaml
    
    * feat: add Android 15 support and update dependencies
    
    - Add Android 15 support
    - Update AGP version to 8.7.0
    - Update gradle version to 8.10.2
    - Update kotlin version to 2.1.0
    
    * Update date
    muzahidul-opti authored Oct 9, 2025
    Configuration menu
    Copy the full SHA
    34d2a3b View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2025

  1. [FSSDK-11853] add swift logger support (optimizely#88)

    * build: add Optimizely SDK logger classes
    
    - Add FlutterOptimizelyLogger class implementing OPTLogger protocol
    - Add constants for customLogger and loggerChannel
    - Implement FlutterMethodChannel for invoking log method
    - Add logger field to OptimizelyFlutterSdk constructor
    - Initialize custom logger in OptimizelyClientWrapper
    - Create LoggerBridge to handle log method calls
    - Implement OptimizelyLogger interface and DefaultOptimizelyLogger class
    
    * fix: resolve logging inconsistencies
    
    - Update custom logger initialization in OptimizelyFlutterSdkPlugin
    - Adjust logger channel setup in onDetachedFromEngine
    - Refactor LoggerBridge to handle log calls from native Swift/Java code properly
    - Ensure proper logging when no custom logger is set
    
    * refactor: update logger imports
    
    - Rename 'OptimizelyLogger.dart' to 'flutter_logger.dart'
    - Rename 'LoggerBridge.dart' to 'logger_bridge.dart'
    - Modify imports in 'optimizely_client_wrapper.dart' to reflect changes in logger files
    
    * feat: add custom logger implementation
    
    - Implement a custom logger class
    - Define logLevel property with default debug level
    - Define log method to print log messages with custom format
    
    * refactor: rename logger classes in Android and iOS
    
    - Rename FlutterOptimizelyLogger to OptimizelyFlutterLogger in Android
    - Rename FlutterOptimizelyLogger to OptimizelyFlutterLogger in iOS
    
    * feat: update logging behavior for Optimizely SDK
    
    - Remove unused log level property in CustomLogger
    - Implement channel setter method in OptimizelyFlutterLogger
    - Add guard clauses for levels and logger channel availability in log method
    - Update channel invocation to happen on main thread
    - Set log level in SwiftOptimizelyFlutterSdkPlugin based on parameters
    - Simplify DefaultOptimizelyLogger log method
    - Update log message formatting in logger bridge for consistency
    
    * feat: add methods and tests for logger state management
    
    - Add methods to expose converting log level, checking if a custom logger is set, retrieving the current logger, and resetting the logger state
    - Implement a method for simulating method calls
    - Add tests for maintaining logger state across multiple operations
    - Include a test for handling logger replacement
    - Create tests for edge cases including handling empty messages and special characters
    
    * feat: add separate logger channel for outgoing log calls
    
    - Define LOGGER_CHANNEL constant for OptimizelyFlutterLogger class
    - Set up separate FlutterMethodChannel for outgoing log calls
    - Update SwiftOptimizelyFlutterSdkPlugin to use the new logger channel
    
    * refactor: improve main thread dispatch for Flutter method channel calls
    
    - Add DispatchQueue.main.async for each method call to ensure platform channel messages are sent on the correct thread
    
    * chore: clean up logger implementation
    
    - Remove unnecessary comments and TODOs
    - Replace direct print statements with AppLogger methods
    - Refactor AppLogger to enhance flexibility and ease of use
    
    * style: update comment in sendLogToFlutter method
    
    - Remove comparison to Swift's DispatchQueue.main.async
    
    * chore: remove unused import statement
    
    - Remove import statement for 'log_level' that is no longer used
    - Update import paths for 'flutter_logger' and 'optimizely_flutter_sdk'
    
    test: update test cases in logger_test.dart
    
    - Update test cases to use 'const MethodCall' for creating method calls
    - Change null and empty arguments to be created and handled correctly
    - Fix missing level or message argument handling scenarios
    - Improve handling of invalid level data types in method calls
    
    docs: add comments to improve code clarity in logger_test.dart
    
    - Add comments explaining the purpose of each test group and case
    - Include comments for the different scenarios being tested in each case
    
    * chore: update log messages and method channel handling
    
    - Update log message format in CustomLogger class
    - Refactor main thread dispatch logic for method channel calls in Utils.swift
    - Enhance error handling and main thread dispatch in OptimizelyFlutterLogger.swift
    - Modify method channel creation and task queue handling in SwiftOptimizelyFlutterSdkPlugin.swift
    
    * refactor: enhance logging functionalities
    
    - Replace usage of static AppLogger class with separate logging functions
    - Introduce individual logger functions for error, warning, info, and debug levels
    - Create a default stand-alone logger instance to handle logging operations
    
    * test: add global logging functions test cases
    
    - Test calling global logging functions without errors
    - Test handling empty messages in global functions
    - Test handling special characters in global functions
    - Test handling rapid calls to global functions
    
    * chore: remove custom logger functionality
    
    - Remove code related to setting up and using a custom logger in OptimizelyFlutterClient.java
    - Delete OptimizelyFlutterLogger.java file as it is no longer needed
    - Update references to the logger channel in OptimizelyFlutterSdkPlugin.java
    
    * refactor: rename customLogger to useCustomLogger
    
    - Update 'Constants.swift' to change 'customLogger' to 'useCustomLogger'
    - Update 'SwiftOptimizelyFlutterSdkPlugin.swift' to change 'customLogger' to 'useCustomLogger'
    - Update 'optimizely_flutter_sdk.dart' to change 'logger' parameter to 'OptimizelyLogger'
    - Update 'optimizely_client_wrapper.dart' to change 'customLogger' to 'useCustomLogger'
    - Update 'constants.dart' to change 'customLogger' to 'useCustomLogger'
    
    * clean up
    muzahidul-opti authored Oct 23, 2025
    Configuration menu
    Copy the full SHA
    c47b746 View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2025

  1. Configuration menu
    Copy the full SHA
    00fd215 View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2025

  1. [FSSDK-11985] feat: add android logger support (optimizely#90)

    * chore: add new classes for logging
    
    - Add FlutterLogbackAppender.java for logging events in the Flutter app
    - Integrate OptimizelyFlutterSdkPlugin with FlutterLogbackAppender
    - Update Constants.swift, SwiftOptimizelyFlutterSdkPlugin.swift, and related classes
    
    * refactor: update log level conversion logic
    
    - Adjust method to correctly convert log level strings to integers
    - Refactor switch statement for better readability and maintainability
    
    * refactor: optimize log level conversion
    
    - Remove unnecessary default log level value initialization
    - Refactor switch statement to directly return log levels for each case
    - Simplify comparison for warning log levels to include both "WARN" and "WARNING"
    
    * style: update logback configuration and log levels
    
    - Comment out configuration block in logback.xml
    - Modify log level 'WARNING' to 'WARN' in FlutterLogbackAppender.java
    
    * fix: ensure debugging logs are only printed in debug mode
    
    - Add check for kDebugMode to control printing of logs
    
    * chore: update logback.xml
    
    - Comment out old logback configuration
    - Add note explaining the use of FlutterLogbackAppender for logging
    muzahidul-opti authored Oct 29, 2025
    Configuration menu
    Copy the full SHA
    9dfbcec View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    725ec50 View commit details
    Browse the repository at this point in the history
Loading