Skip to content

Bump com.github.skydoves.compose.stability.analyzer from 0.11.1 to 0.12.0 - #98

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/gradle/com.github.skydoves.compose.stability.analyzer-0.12.0
Open

Bump com.github.skydoves.compose.stability.analyzer from 0.11.1 to 0.12.0#98
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/gradle/com.github.skydoves.compose.stability.analyzer-0.12.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 30, 2026

Copy link
Copy Markdown
Contributor

Bumps com.github.skydoves.compose.stability.analyzer from 0.11.1 to 0.12.0.

Release notes

Sourced from com.github.skydoves.compose.stability.analyzer's releases.

0.12.0

Added

  • New Kotlin/Native targets for the runtime (#196, thanks @​der-fruhling): linuxX64, linuxArm64 and mingwX64 are now published, so applying the Gradle plugin to a KMP project with Linux or Windows native targets no longer fails to resolve the runtime.
  • recompositionNanoTime(): the public monotonic clock behind RecompositionTracker.recordDuration, used by compiler-generated timing code. Compiler-generated code prefers it and falls back to System.nanoTime() when the runtime predates it.

Fixed

  • @TraceRecomposition now works on every published target (#197): tracing was silently a no-op on iOS, macOS, Linux, Windows, JS and Wasm. The compiler plugin skips instrumentation when it cannot resolve rememberRecompositionTracker, and that entry point only existed for Android and JVM. It moved to commonMain, so every target the runtime publishes gets parameter tracing, tags, thresholds and per-recomposition timing. Internal state write-site capture (the ← onClick (Screen.kt:42) suffix) still needs the Compose Snapshot observer and stays Android/JVM-only.
  • Recomposition durations are no longer 0.00ms outside Android and JVM (#197): currentNanoTime() returned a hardcoded 0 on JS, Wasm and all native targets. It now reads kotlin.time.TimeSource.Monotonic there, which maps to performance.now() and getTimeNanos().

Changed

  • Runtime source sets are grouped so each target family owns its platform code: jvmCommon (JVM, Android), web (JS, Wasm) and native (Apple, Linux, MinGW). A new target now inherits a working set of actuals instead of silently losing the entry points the compiler plugin resolves. skiaMain became nativeMain.
  • The tracker cache is safe against concurrent inserts on every threaded platform: ConcurrentHashMap on JVM/Android, a copy-on-write map behind an atomic compare-and-set on native, and a plain map on JS/Wasm where Kotlin runs single-threaded.
  • New call sites of rememberRecompositionTracker target the RememberRecompositionTrackerKt JVM facade. The previous RememberRecompositionTracker_jvmKt and RememberRecompositionTracker_androidKt facades are retained as hidden delegates, so binaries instrumented by 0.11.x and earlier keep linking. No action needed when upgrading.
Changelog

Sourced from com.github.skydoves.compose.stability.analyzer's changelog.

[0.12.0] - 2026-07-28

Added

  • New Kotlin/Native targets for the runtime (#196, thanks @​der-fruhling): linuxX64, linuxArm64 and mingwX64 are now published, so applying the Gradle plugin to a KMP project with Linux or Windows native targets no longer fails to resolve the runtime.
  • recompositionNanoTime(): the public monotonic clock behind RecompositionTracker.recordDuration, used by compiler-generated timing code. Compiler-generated code prefers it and falls back to System.nanoTime() when the runtime predates it.

Fixed

  • @TraceRecomposition now works on every published target (#197): tracing was silently a no-op on iOS, macOS, Linux, Windows, JS and Wasm. The compiler plugin skips instrumentation when it cannot resolve rememberRecompositionTracker, and that entry point only existed for Android and JVM. It moved to commonMain, so every target the runtime publishes gets parameter tracing, tags, thresholds and per-recomposition timing. Internal state write-site capture (the ← onClick (Screen.kt:42) suffix) still needs the Compose Snapshot observer and stays Android/JVM-only.
  • Recomposition durations are no longer 0.00ms outside Android and JVM (#197): currentNanoTime() returned a hardcoded 0 on JS, Wasm and all native targets. It now reads kotlin.time.TimeSource.Monotonic there, which maps to performance.now() and getTimeNanos().

Changed

  • Runtime source sets are grouped so each target family owns its platform code: jvmCommon (JVM, Android), web (JS, Wasm) and native (Apple, Linux, MinGW). A new target now inherits a working set of actuals instead of silently losing the entry points the compiler plugin resolves. skiaMain became nativeMain.
  • The tracker cache is safe against concurrent inserts on every threaded platform: ConcurrentHashMap on JVM/Android, a copy-on-write map behind an atomic compare-and-set on native, and a plain map on JS/Wasm where Kotlin runs single-threaded.
  • New call sites of rememberRecompositionTracker target the RememberRecompositionTrackerKt JVM facade. The previous RememberRecompositionTracker_jvmKt and RememberRecompositionTracker_androidKt facades are retained as hidden delegates, so binaries instrumented by 0.11.x and earlier keep linking. No action needed when upgrading.
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [com.github.skydoves.compose.stability.analyzer](https://github.com/skydoves/compose-stability-analyzer) from 0.11.1 to 0.12.0.
- [Release notes](https://github.com/skydoves/compose-stability-analyzer/releases)
- [Changelog](https://github.com/skydoves/compose-stability-analyzer/blob/main/CHANGELOG.md)
- [Commits](skydoves/compose-stability-analyzer@0.11.1...0.12.0)

---
updated-dependencies:
- dependency-name: com.github.skydoves.compose.stability.analyzer
  dependency-version: 0.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update java code labels Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@dependabot[bot], you've reached your PR review limit, so we couldn't start this review.

Next review available in: 58 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8ef124db-f1b3-40a2-a86f-522f94a45139

📥 Commits

Reviewing files that changed from the base of the PR and between 644989c and ca78a1a.

📒 Files selected for processing (1)
  • gradle/libs.versions.toml

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants