0.0.8
Pre-release
Pre-release
Persistence
Added
fun <SCH : Schema<SCH>> Struct<SCH>.copy(mutate: SCH.(StructBuilder<SCH>) -> Unit): StructSnapshot<SCH>
Deprecated
fun <E : Enum<E>, U : Any> enum(encodeAs: DataType.Simple<U>, encode: (E) -> U, fallback: (U) -> E = ...): DataType.Simple<E>
Properties
Added
fun <E : Enum<E>> enum(fallback: (String) -> E = ...): DataType.Simple<E>
- fixed a critical typo in
InMemoryPropertiesMemento.writeTo
- fixed possible correctness problem when bi- and multi-mapped properties have sources with mixed concurrentness — some incorrect code may crash now
- less memory impact when updating single-threaded bi- and multi-mapped properties
Minor signature changes:
fun <T> Property<T>.onEach(func: (T) -> Unit): Unit =>
fun <P : Property<T>, T> P.onEach(func: (T) -> Unit): P
fun MutableProperty<Boolean>.clearEachAnd(crossinline action: () -> Unit): Unit =>
fun <P : MutableProperty<Boolean>> P.clearEachAnd(crossinline action: () -> Unit): P
fun <T : Any> MutableProperty<T?>.clearEachAnd(crossinline action: (T) -> Unit): Unit =>
fun <P : MutableProperty<T?>, T : Any> P.clearEachAnd(crossinline action: (T) -> Unit): P
Android bindings
- fixed
ParcelPropertiesMemento.CREATOR
field to have exactlyParcelable$Creator
type and be compatible with common ProGuard rules
SQL
- fixed critical
SqliteDialect
codegen problem around nullable types
Android-specific stats
Module | Defined methods | ~DEX size, KB |
---|---|---|
persistence | 220 | 31.5 |
properties | 540 | 84.3 |
Android bindings | 272 | 38.1 |
SQL | 316 | 60.2 |