DBFlow v5.0.0 Release Notes

Release Date: 2018-10-21 // about 1 year ago
  • 📦 1. Rename package name for project to com.dbflow5. Some significant package reorganization that makes much more sense going forward.

    1. Project is back under my account! To include, please replace uses of "com.github.raizlabs.dbflow:" to "com.github.agrosner.dbflow:" in project dependencies. 🆕 3. Added new paging, coroutines, contentprovider (splits out use into separate module). Expect a livedata module in next couple releases. Removed RXJava 1 support.
    2. Library is now 100% KOTLIN! (except generated java code, which can't quite yet be Kotlin). All kotlin-extensions modules have rolled into their java counterpart as a single Kotlin unit.
    3. Simplifications in API for Transactions to eliminate redundancies. Also, now Transaction require a type parameter R which is return value. They now return a value, and have a completion() callback. All interfaces have rolled into Kotlin Typealias to methods. 💅 6. All sqlite query language infix (LINQ-style) methods rolled into the query language!
    4. Attempted to keep java compatibility and nice API. If anything is missing, please file a bug. 🐎 8. save() now use a insert or replace statement rather than a load of the model from the db and then inserting / saving based on that, resulting in significant performance increase. 0️⃣ 9. no more ContentValues used at all in any CRUD operations under the hood, and by default these don't get generated: bindToInsertValues, bindToContentValues. if you need them, set @Table(generateContentValues = true). 💥 10. Breaking Change : By default @Table(allFields = true), meaning you dont have to explicitly mark each property as part of DB. Previously you had to use @Column everywhere.

Previous changes from v4.2.4

    1. dropTrigger from SqlUtils takes in a DatabaseWrapper. ✅ 2. Fix broken annotation processor code output tests. #1437
    2. Fix issues where DatabaseStatement in library in wrapper statements were not closed properly. #1497
    3. Fix issue where single reference (non table object) used wrong name for property in the primary condition clause, causing compile issue. #1504