Skip to content

0.0.8

Pre-release
Pre-release
Compare
Choose a tag to compare
@Miha-x64 Miha-x64 released this 26 Feb 21:31
· 364 commits to master since this 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 exactly Parcelable$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