Skip to content

0.7.3

Latest

Choose a tag to compare

@skydoves skydoves released this 11 Apr 00:28
· 2 commits to main since this release
a7eb472

Compose Stability Analyzer 0.7.3

[0.7.3] - 2026-04-11

Added

  • Internal state change tracking for @TraceRecomposition (Issue #89)
    • New traceStates annotation parameter: @TraceRecomposition(traceStates = true)
    • Tracks mutableStateOf, mutableIntStateOf, derivedStateOf and other Compose state changes
    • Compiler plugin detects delegated state variables via IrLocalDelegatedProperty IR analysis
    • Logs state changes with [state] prefix, parameter changes with [param] prefix
    • Only changed states are logged to reduce noise
  • Stability configuration file support for stabilityDump (Issue #130, PR #105)
    • stabilityConfigurationFiles now applies to both stabilityDump and stabilityCheck tasks
    • Types matching configuration patterns are overridden to STABLE in the baseline file
    • Composable skippable flag is recalculated based on resolved parameter stability
  • unstableOnly option for stability baseline (Issue #128)
    • New unstableOnly option: when enabled, only unstable composables are included in the baseline file
    • Reduces baseline file size in large projects and focuses on stability issues
  • New composable diff now includes parameter-level stability details (PR #105)
    • stabilityCheck output for new composables shows each parameter's stability status

Fixed

  • ignoredPackages now consistently respected during stabilityCheck (Issue #129)
    • Previously, composables in ignored packages were excluded from stabilityDump but still detected as "new composable" during stabilityCheck
    • Now both tasks apply the same package/class filtering
  • @Optional annotation added to stabilityConfigurationFiles task input (PR #105)
    • Prevents Gradle task validation failure when configuration files are not set
  • ADB not found on Windows (Issue #139)
    • Fixed adb.exe detection on Windows for the Heatmap feature
    • Added Windows default SDK path (%LOCALAPPDATA%\Android\Sdk)
    • Uses where command instead of which on Windows for PATH lookup
  • First recomposition false positive fixed
    • Parameters and states no longer report changed = true on the first recomposition when no previous value exists

Changed

  • Log format updated — Parameter changes now display with [param] prefix, state changes with [state] prefix for clearer distinction
  • Tool window actions always visible — Toggle Heatmap, Clear Data, Settings, and GitHub icons moved from hover-only title bar to content toolbar (right-aligned) across all tabs
  • Tool window icon updated — Changed from monochrome gray to blue color matching the plugin icon
  • Stability comparison logic extracted to StabilityComparison.kt (PR #105)
  • Stability configuration parser added as StabilityConfigParser.kt (PR #105)