skydoves / skydoves/compose-stability-analyzer
KMP JS build failure: No matching JS variant for compose-stability-runtime:0.5.3
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 1.7k
- Forks
- 42
- Avg merge
- 13h 5m
- Merged PRs (30d)
- 6
Description
Project information:
- Library Version:
0.5.3 - Affected Target(s): Kotlin Multiplatform project with JS target (IR + npm / browser) running in GitHub Actions CI on ubuntu-latest
Describe the Bug:
Using the stability analyzer plugin inside a Kotlin Multiplatform shared module that targets Android, iOS, Desktop, and JS causes the build to fail during the :kotlinNpmInstall step. The JS resolution fails because Gradle cannot locate a matching variant of the dependency com.github.skydoves:compose-stability-runtime:0.5.3.
Could not determine the dependencies of task ':kotlinNpmInstall'.
> Failed to query the value of task ':kotlinNpmInstall' property 'packageJsonFiles'.
> Could not resolve all dependencies for configuration ':jetlime:jsNpmAggregated'.
> Could not resolve com.github.skydoves:compose-stability-runtime:0.5.3.
Required by:
project :jetlime
> No matching variant of com.github.skydoves:compose-stability-runtime:0.5.3 was found.
The consumer was configured to find a library for use during 'kotlin-runtime',
optimized for non-jvm, with attributes for JS IR + public package.json (npm),
but no compatible variant exists.
This issue occurs specifically when building in GitHub Actions CI, and prevents building KMP libraries with JavaScript targets.
Expected Behavior:
The plugin should either:
- Provide a JS-compatible artifact (or wasm-js compatible if intended), or
- Automatically skip / allow disabling on unsupported targets (e.g., js {} target in KMP)
so that the build completes successfully without failing the kotlinNpmInstall.
Until a JS variant is available, KMP consumers should be able to opt out per target without breaking CI builds.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the :kotlinNpmInstall failure and :jsNpmAggregated resolution for compose-stability-runtime:0.5.3, then inspect how the plugin handles JS targets and published variants. Done means a Kotlin Multiplatform project with a JS target completes CI without the reported resolution error, either through a compatible artifact or an explicit opt-out.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, kotlin
- Domain
- build-system, ci-cd
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100