Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ This is incredibly useful for:
Add the dependency below to your `libs.versions.toml` file:

```toml
stability-analyzer = { id = "com.github.skydoves.compose.stability.analyzer", version = "0.5.0" }
stability-analyzer = { id = "com.github.skydoves.compose.stability.analyzer", version = "0.5.1" }
```

Next, apply the plugin on your root's `build.gradle.kts` file like below:
Expand All @@ -154,6 +154,7 @@ It’s **strongly recommended to use the exact same Kotlin version** as this lib

| Stability Analyzer | Kotlin |
|--------------------|-------------|
| 0.5.1 | 2.2.21 |
| 0.5.0 | 2.2.21 |
| 0.4.2 | 2.2.21 |
| 0.4.1 | 2.2.21 |
Expand Down
6 changes: 5 additions & 1 deletion compose-stability-analyzer-idea/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ All notable changes to the IntelliJ IDEA plugin will be documented in this file.

## [Unreleased]

---

## [0.5.1] - 2025-11-10

### Added
- **wasmJs target support** - Added WebAssembly JavaScript (wasmJs) target to stability-runtime module (Issue #32)
- Enables Kotlin Multiplatform projects to use wasmJs alongside other targets (Android, iOS, Desktop, macOS)
Expand All @@ -16,7 +20,7 @@ All notable changes to the IntelliJ IDEA plugin will be documented in this file.
- Abstract classes with `@Immutable` or `@Stable` annotations now correctly analyzed for stability
- Sealed classes with `@Immutable`/`@Stable` now properly propagate stability to subclasses
- Example: `@Immutable sealed class StableSealedClass` with `data class Stable(...)` subclass now correctly shows as STABLE instead of RUNTIME
- IDE plugin now matches compiler plugin behavior for sealed class hierarchies
- Both IDE plugin and compiler plugin now consistently handle sealed class hierarchies with stability annotations

---

Expand Down
22 changes: 21 additions & 1 deletion compose-stability-analyzer-idea/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,27 @@ intellijPlatform {
</ul>
""".trimIndent()
changeNotes = """
<b>0.5.1</b>
<ul>
<li><b>Added wasmJs target support</b> - Runtime module now supports WebAssembly JavaScript for Compose Multiplatform web apps (Issue #32)</li>
<li><b>Fixed sealed class stability inheritance</b> - Sealed classes with @Immutable/@Stable annotations now properly propagate stability to subclasses (Issue #31)</li>
<li>Abstract classes with stability annotations are now correctly analyzed</li>
<li>Both IDE plugin and compiler plugin handle sealed class hierarchies consistently</li>
</ul>
<b>0.5.0</b>
<ul>
<li><b>Breaking: Minimum IDE version updated to 2024.2+ (build 242+)</b></li>
<li><b>New Compose Stability Tool Window</b> - View all composables in your project at a glance (Issue #14)</li>
<li>Tree view grouped by module → package → file with color-coded stability indicators</li>
<li>Details pane with parameter stability, double-click navigation to source</li>
<li>Filter buttons for All/Skippable/Unskippable composables</li>
<li>Performance optimization - Tool window reads pre-computed JSON files instead of re-analyzing</li>
<li>Fixed PluginException in IntelliJ IDEA 2025.2.4 (Issue #33)</li>
<li>Fixed typealias detection for Composable function types (Issue #16)</li>
<li>New setting: "Show in test source sets" for gutter icons (Issue #21)</li>
<li>Improved cross-module stability detection with @StabilityInferred annotation (Issue #18)</li>
<li>Extended compatibility to IntelliJ IDEA 2025.3 (build 253)</li>
</ul>
<b>0.4.0</b>
<ul>
<li>Added ProGuard consumer rules for automatic R8/ProGuard compatibility</li>
Expand Down Expand Up @@ -129,7 +150,6 @@ intellijPlatform {

pluginVerification {
ides {
// Verify compatibility with recommended IDE versions
recommended()
}
}
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ kotlin.mpp.androidGradlePluginCompatibility.nowarn=true

# Maven publishing
GROUP=com.github.skydoves
VERSION_NAME=0.5.0
VERSION_NAME=0.5.1

POM_URL=https://github.com/skydoves/compose-stability-analyzer/
POM_SCM_URL=https://github.com/skydoves/compose-stability-analyzer/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public class StabilityAnalyzerGradlePlugin : KotlinCompilerPluginSupportPlugin {

// This version should match the version in gradle.properties
// Update this when bumping the library version
private const val VERSION = "0.5.0"
private const val VERSION = "0.5.1"

// Compiler option keys
private const val OPTION_ENABLED = "enabled"
Expand Down
Loading