Kotlin / binary-compatibility-validator

Public API management tool
Apache License 2.0
788 stars 57 forks source link

Subprojects that contain the same name will be ignored #257

Open Goooler opened 1 month ago

Goooler commented 1 month ago

Declare subprojects in settings.gradle like:

include(
    ":sample",
    ":compose-multiplatform:library",
    ":compose-multiplatform:sample"
)

the structure should be:

├── compose-multiplatform
│   ├── library
│   └── sample
├── sample

then configure BCV in root build.gradle:

plugins {
    id("org.jetbrains.kotlinx.binary-compatibility-validator:0.15.1")
}

apiValidation {
    ignoredProjects += listOf(
        "sample"
    )
}

then dump APIs for them, compose-multiplatform:sample and sample projects are both ignored.

If we add compose-multiplatform:sample into ignoredProjects and run again, there will be an error:

Cannot find excluded project compose-multiplatform:sample in all projects: [root-project, compose-multiplatform, core, sample, library, sample]

as you can see, there are 2 projects listed here with the same name sample, they should be split.

Goooler commented 1 month ago

Duplicate of #16