Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Latest update (0.7.4) broke the multi module kmp build #488

Closed
sureshg opened this issue Oct 11, 2023 · 2 comments
Closed

Latest update (0.7.4) broke the multi module kmp build #488

sureshg opened this issue Oct 11, 2023 · 2 comments
Assignees
Labels
Bug Bug issue type S: untriaged Status: issue reported but unprocessed

Comments

@sureshg
Copy link

sureshg commented Oct 11, 2023

Describe the bug
After upgrading to 0.7.4 from 0.7.3, gradle started throwing an implicit_dependency dependency error for koverVerify tasks.

I do have a multi module kmp project setup, where in apply kover plugin to all sub-projects using a pre-compiled script plugin

:benchmark: benchmark
:client: client
:web: web
:backend:jvm: jvm
:meta:compiler: compiler
:meta:ksp: ksp
:meta:compiler:plugin: plugin
:meta:ksp:processor: processor

then in the root build script (for merged report).

 dependencies {
    allprojects.forEach {
       kover(it)
    }
  }

The client and meta:compiler projects are independent and doesn't have any dependencies except kover plugin is applied to both.

Errors

Some problems were found with the configuration of task ':client:koverVerify' (type 'KoverVerifyTask').
  - Gradle detected a problem with the following location: '/../meta/compiler/plugin/build/kover/bin-reports/test.ic'.

    Reason: Task ':client:koverVerify' uses this output of task ':meta:compiler:plugin:test' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

    Possible solutions:
      1. Declare task ':meta:compiler:plugin:test' as an input of ':client:koverVerify'.
      2. Declare an explicit dependency on ':meta:compiler:plugin:test' from ':client:koverVerify' using Task#dependsOn.
      3. Declare an explicit dependency on ':meta:compiler:plugin:test' from ':client:koverVerify' using Task#mustRunAfter.

    For more information, please refer to https://docs.gradle.org/8.4/userguide/validation_problems.html#implicit_dependency in the Gradle documentation.
  - Gradle detected a problem with the following location: '.../../meta/compiler/plugin/build/generated/ksp/main/kotlin'.

    Reason: Task ':client:koverVerify' uses this output of task ':meta:compiler:plugin:kspKotlin' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.

Environment

  • Kover Gradle Plugin version: 0.7.4
  • Gradle version: 8.4
  • Kotlin project type: Kotlin/Multiplatform=
  • Other context important for this bug: MacOS (arm64): 13.6 Ventura
@sureshg sureshg added Bug Bug issue type S: untriaged Status: issue reported but unprocessed labels Oct 11, 2023
@shanshin
Copy link
Collaborator

shanshin commented Oct 12, 2023

It looks like this problem is about relative paths. See the issue and comment (content from build/kover/*.artifact files would really help)

@shanshin
Copy link
Collaborator

Closed in favor of #478

@shanshin shanshin closed this as not planned Won't fix, can't repro, duplicate, stale Oct 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Bug issue type S: untriaged Status: issue reported but unprocessed
Projects
None yet
Development

No branches or pull requests

2 participants