Sagar Khurana
03/15/2026, 1:14 PMroom3-paging missing wasmJs target - how to use @DaoReturnTypeConverters in commonMain?
I'm adding wasmJs support to an existing KMP project (Android + iOS) using Room 3.0.0-alpha01. The room3-runtime resolves for wasmJs perfectly, but room3-paging does not - it lacks a wasmJs variant.
The issue: Room 3.0 requires @DaoReturnTypeConverters(PagingSourceDaoReturnTypeConverter::class) on @Dao/@Database classes for DAO methods returning PagingSource. However, my DAOs and Database are in commonMain, and PagingSourceDaoReturnTypeConverter comes from room3-paging, which cannot be in commonMain (no wasmJs target).
Moving room3-paging to a mobileMain source set resolves dependency resolution, but then the @DaoReturnTypeConverters annotation cannot reference the converter class from commonMain.
Questions:
1. Are there plans to add wasmJs support to room3-paging?
2. Is there a way to register DaoReturnTypeConverters via KSP arguments instead of annotations (to avoid the commonMain class resolution issue)?
3. Are there any recommended workarounds for KMP projects targeting both mobile and wasmJs?
Using: Room 3.0.0-alpha01, Kotlin 2.3.10, sqlite 2.7.0-alpha01, Compose Multiplatform 1.10.1Sagar Khurana
03/15/2026, 1:33 PMChrimaeon
03/15/2026, 1:46 PMOliver.O
03/16/2026, 10:23 AMsoufianehamama9
03/21/2026, 7:17 PMSagar Khurana
03/22/2026, 6:38 AM