raamcosta / compose-destinations

Annotation processing library for type-safe Jetpack Compose navigation with no boilerplate.
https://composedestinations.rafaelcosta.xyz
Apache License 2.0
3.14k stars 129 forks source link

[KSP][2.1.0] _ModuleRegistry missing visibility modifiers #638

Closed extmkv closed 1 month ago

extmkv commented 1 month ago

Hi,

We started migrating to V2 of the library, one of the issues we have is when we have the explicitApi() configured, it fails due to the missing visibility modifiers of _ModuleRegistry.

annotation class _Info_9f44302c_5077_4cc0_a051_e963cb139535(
    val moduleName: String,
    val packageName: String,
    val typeResults: Array<_Destination_Result_Info_9f44302c_5077_4cc0_a051_e963cb139535> = emptyArray(),
    val topLevelGraphs: Array<String> = emptyArray()
)

annotation class _Destination_Result_Info_9f44302c_5077_4cc0_a051_e963cb139535(
    val destination: String,
    val resultType: String,
    val isResultNullable: Boolean
)

@_Info_9f44302c_5077_4cc0_a051_e963cb139535(
    moduleName = "",
    packageName = "com.ramcosta.composedestinations.generated",
    typeResults = [

    ],
    topLevelGraphs = [
        "BasketNavGraph"
    ]
)
object _ModuleRegistry_9f44302c_5077_4cc0_a051_e963cb139535

Again, thanks a lot for your hard work @raamcosta !

raamcosta commented 1 month ago

Hi @extmkv 👋

hmm I see. I can fix this today probably. There was another reported issue I wanted to release the fix for anyway. So will take the opportunity to add the visibility modifiers here!

Thank you for reporting. And let me know if there’s anything else I can help with!

raamcosta commented 1 month ago

Fix should be up in the next 30min or so!

extmkv commented 1 month ago

@raamcosta seems there is more place where the visibility is missing.

public data object RequestpermissionsModuleDestinations : ModuleDestinationsContainer {
    override val destinations = listOf<DestinationSpec>(
        RequestPermissionsScreenDestination,
        SystemSettingsScreenDestination
    )

    @GeneratedCodeExternalDestinations([
        RequestPermissionsScreenDestination::class,
        SystemSettingsScreenDestination::class,
    ])
    object Includes
}
raamcosta commented 1 month ago

should be public object Includes, right..