Room 3.0 - Modernizing the Room
Room 3.0 alpha has been released, marking a major breaking version of the Android database library. Key changes include dropping SupportSQLite APIs in favor of SQLiteDriver, exclusive Kotlin code generation (no more Java), dropping KAPT/annotation processing in favor of KSP only, and making coroutines mandatory for DAO functions. Room 3.0 adds Kotlin Multiplatform support for JavaScript and WebAssembly via a Web Worker-based SQLite driver using the Origin Private File System. The library moves to a new Maven package (androidx.room3). A new @DaoReturnTypeConverter annotation enables custom DAO return types. Room 2.x enters maintenance mode with only bug fix releases planned until Room 3 stabilizes. Migration paths include adopting SQLiteDriver APIs in Room 2.7+ and using the new room-sqlite-wrapper compatibility artifact.
