Feature flags for multi-module Kotlin Android projects
LaboratoryActivity.Configuration.OffscreenSectionsBehavior
. Default is unlimited.1.4.32
.2.3.1
.1.3.2
.3.7.0
.sourcedBuilder()
extension function for SourcedFeatureStorage
that returns custom builder with steps for each source. This makes changes to sources compile time safe.1.4.3
.4.1.3
.sourcedGenerated()
extension function generated by Gradle plugin.Feature
. This relationship is controlled with a Feature.supervisorOption
property. Whenever supervisor has its option different from this value then the supervised feature flag cannot return any other option than a default one. Option can still be set via Laboratory
but it will not be exposed as long as a feature flag is not supervised. This relationship is recursive meaning that grandparents control grandchildren indirectly.1.0.0-alpha06
.4.1.2
.1.4.30
.3.6.0
.1.3.0
.1.3.0
.2.3.0
.0.9.31
.DataStore
custom builder and builder factory methods. Factory method that accepts DataStore
directly should be used instead.FeatureFactory
can be now appended to another with plus operator.DefaultOptionFactory
can be now appended to another with plus operator.1.4.21
.DeprecationLevel.Hidden
is temporarily treated as an error until the compiler issue is fixed.Laboratory
atomic.LaboratoryActivity.Configuration
construction.LaboratoryActivity.Configuration
builder with deprecationPhenotypeSelector()
and deprecationAlignmentSelector()
functions.laboratory-inspector
to keep @Deprecated
annotation.1.0.0-alpha05
.LaboratoryActivity.Configuration()
constructor. Use LaboratoryActivity.Configuration.create()
or LaboratoryActivity.Configuration.builder()
instead.2.0.4
to laboratory-inspector
.1.4.20
.FeatureStorage
dispatches now changes to feature flag observers when clear()
method is used. This fixes an issue with the QA module where it did not update the UI after resetting feature flags if shared preferences where used for feature flags persistence.configure()
function.BlockingLaboratory
class that can read and write feature flags via blocking API.blocking()
function to Laboratory
class that is an entry point to the blocking API.deprecated(message, level)
method. level
argument is optional and a warning level is used by default.1.0.0-alpha04
.Laboratory
class. BlockingLaboratory
available via blocking()
function should be used instead.