- Fix: Avoid unnecessary recompilation of debug builds
- Add: Support for Android Gradle plugin version >= 4
- Add: Support for Gradle incremental processing
- Breaking: Remove support for defining DB name and version in build config file
- Fix: View validation false positive in Kotlin and AutoValue mixed project
- Fix: Support for older Android Gradle plugin versions
- Breaking: Migrate to AndroidX
- Breaking: Refactor release automatic schema migrations -- now all schema files must be in single dir
- Add: DB migration task only per build type
- Add: Support for compound operators
- Fix: Multithreading bug for compiled select
- New: Add support for release migrations
- New: Add ability to redefine columns in any table
- New: Always rebuild views on migrations
- Fix: Add support for latest AutoValue version
- Breaking: Rename
Select#asColumn
toSelect#toColumn
- Add: Support for table as subquery
- Add: Support for cross-module object transformers
- Add: Support for views migration
- Fix: Transformation for incremental submodules compilation
- Fix: Automatic dependency resolution
- New: Change defaults to meet the most used setups
- New: Add better support for views in kotlin
- Fix: Multimodule builds when main module has no tables and there are more than one submodule
- Breaking: Change
Query#run
return type fromObservable
toMaybe
- New: Add automatic schema migration for tables and indices on submodules
- New: Add support for database downgrading
- New: Add support for indices
- New: Add automatic schema migration for tables and indices on main modules
- Fix: Compilation bug with persist operation by column on complex models
- Breaking: Build on top of the Android architecture components Sqlite support library. This allows swapping out the underlying Sqlite implementation to that of your choosing
- Breaking: Remove
java.util.Date
transformer - New: Add support for multi module builds where database models are located across modules
- Breaking: Rename
Select#val
toSelect#asColumn
as it was conflicting with kotlin reserved keywords - New: Add support for raw UPDATE and DELETE statements
- Fix: Generic types parsing for transformers
- Fix: Bugs related to support for object(s) update/persist operations with custom WHERE clause by unique column
- New: Add nullability metadata to column types
- Now every column has metadata about their nullability which makes the whole API even more type safe
- New: Add support for object(s) update/persist operations with custom WHERE clause by unique column
- New: Add
unaryMinus
method to numeric columns which changes positive values to negative and vice versa - New: Add
not
method to expressions which negates the expression.
- Fix: Transformation bug in Windows
- New: Add support for Android Gradle plugin 3.0.0
- New: All operations now support constraint conflict resolution
- New: Add support for multiple object transformers in one class
- New: More options to configure gradle plugin
- Fix: Nullable single column queries
- New: Kotlin extensions module - adds useful extension functions and LINQ style SQL DSL
- New: Add ability to create raw queries without providing observed table(s)
- New: Add
DbConnection#clearData
method which clears all data in tables - Fix: Generate correct code for complex data classes
- Fix: Do not fail bytecode transformation when IOE happens during class file loading
- Better kotlin support (support data classes, generate extension functions instead of magic functions).
- Port to RxJava 2 (RxJava 1 support coming back in future release).
- Option to create expression from raw string via
Expr.raw()
. - Option to update complex column by its ID in
UPDATE
statement builder. - Inner selection and function columns now append less SQL when possible.
- Return
Completable
instead ofSingle<Boolean>
in entity bulk operations andentity.update().observe()
First public release
- Better API for the
ORDER BY
clause. - Unified naming in SQL. Breaking change: in table names camelCase is replaced with underscores "_".
- Better wording in javadoc.