permissions-dispatcher / PermissionsDispatcher

A declarative API to handle Android runtime permissions.
https://github.com/permissions-dispatcher/PermissionsDispatcher
Apache License 2.0
11.21k stars 1.44k forks source link

Generated kotlin files still use Java collections #642

Closed kanat closed 4 years ago

kanat commented 4 years ago

Overview

I use kotlin in combination with kapt.

Suppose you've got some function below:

class SomeActivity : AppCompatActivity() {
    @NeedsPermission(CAMERA, RECORD_AUDIO)
    fun doWork(values: kotlin.collections.Set<kotlin.String>) {
        ...
    }
}

The SomeActivityPermissionsDispatcher.kt will be generated, but with different input type in the function:

fun SomeActivity.doWorkWithPermissionCheck(values: java.util.Set<java.lang.String>) {
    ...
}

Expected

Actual

Environment

implementation 'org.permissionsdispatcher:permissionsdispatcher:4.5.0' kapt 'org.permissionsdispatcher:permissionsdispatcher-processor:4.5.0'

hotchemi commented 4 years ago

thank you! this originates from kotlinpoet seemingly and we have a workaround method to address similar issue. Would you mind send a PR?

https://github.com/permissions-dispatcher/PermissionsDispatcher/blob/f9175b1ec883c054750783e71d1992a29bd05a49/processor/src/main/kotlin/permissions/dispatcher/processor/util/Extensions.kt#L122

kanat commented 4 years ago

thank you! this originates from kotlinpoet seemingly and we have a workaround method to address similar issue. Would you mind send a PR?

https://github.com/permissions-dispatcher/PermissionsDispatcher/blob/f9175b1ec883c054750783e71d1992a29bd05a49/processor/src/main/kotlin/permissions/dispatcher/processor/util/Extensions.kt#L122

Thanks for navigating me to problematic point. Please, check the PR.