Skip to content

Commit d8d8165

Browse files
committed
Introduce plugin changelog, create separate DEVELOPMENT.md
1 parent 0fd66d8 commit d8d8165

File tree

7 files changed

+143
-25
lines changed

7 files changed

+143
-25
lines changed

DEVELOPMENT.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
## Useful project gradle commands
2+
3+
## Common
4+
5+
### Verification
6+
7+
- run all tests: `./gradlew test`
8+
9+
- check code style: `./gradlew spotlessCheck`
10+
11+
- check ABI: `./gradlew checkLegacyAbi`
12+
13+
### Update
14+
15+
- apply formatting: `./gradlew spotlessApply`
16+
17+
- update ABI: `./gradlew updateLegacyAbi`
18+
19+
### Info
20+
21+
- create html test report: `./gradlew components:test:coverage:koverHtmlReport`
22+
23+
- print test coverage: `./gradlew components:test:coverage:koverLog`
24+
25+
## Plugin
26+
27+
### Development
28+
29+
Build plugin: `./gradlew buildPlugin`
30+
31+
Run plugin in IDE sandbox: `./gradlew runIde`
32+
33+
### Changelog
34+
35+
Print current changelog: `./gradlew getChangelog`
36+
37+
Update changelog with new version: `./gradlew patchChangelog`
38+
39+
## CLI
40+
41+
Build CLI: `./gradlew buildCLI`
42+
43+
## WEB
44+
45+
- Run WASM: `./gradlew tools:compose-app:wasmJsBrowserDevelopmentRun`

README.md

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ needs.
6060
- [Other](#other)
6161
- [Export formats](#export-formats)
6262
- [Comparison with other solutions](#comparison-with-other-solutions)
63-
- [Gradle commands](#gradle-commands)
6463
- [Migration guide](#migration-guide)
6564

6665
## Key features
@@ -587,26 +586,6 @@ get() {
587586
</tr>
588587
</table>
589588

590-
### Gradle commands
591-
592-
other available gradle commands:
593-
594-
- run tests: `./gradlew test`
595-
596-
- check code style: `./gradlew spotlessCheck`
597-
598-
- apply formatting: `./gradlew spotlessApply`
599-
600-
- update ABI: `./gradlew updateLegacyAbi`
601-
602-
- check ABI: `./gradlew checkLegacyAbi`
603-
604-
- create html test report: `./gradlew components:test:coverage:koverHtmlReport`
605-
606-
- print test coverage: `./gradlew components:test:coverage:koverLog`
607-
608-
- WASM app: `./gradlew tools:compose-app:wasmJsBrowserDevelopmentRun`
609-
610589
### Migration guide
611590

612591
#### v0.13.0 -> v0.14.0

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ plugins {
1010
alias(libs.plugins.kotlin.serialization) apply false
1111
alias(libs.plugins.kover) apply false
1212
alias(libs.plugins.jetbrains.compose) apply false
13+
alias(libs.plugins.jetbrains.changelog) apply false
1314
alias(libs.plugins.jetbrains.intellij) apply false
1415
alias(libs.plugins.jetbrains.intellij.module) apply false
1516
alias(libs.plugins.buildConfig) apply false

gradle/libs.versions.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
4343
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
4444
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
4545
kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" }
46+
jetbrains-changelog = "org.jetbrains.changelog:2.4.0"
4647
jetbrains-compose = { id = "org.jetbrains.compose", version.ref = "compose" }
4748
jetbrains-intellij = { id = "org.jetbrains.intellij.platform", version.ref = "intellij" }
4849
jetbrains-intellij-module = { id = "org.jetbrains.intellij.platform.module", version.ref = "intellij" }

tools/idea-plugin/CHANGELOG.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Plugin Changelog
2+
3+
## [Unreleased]
4+
5+
### Added
6+
7+
- Setup of changelog plugin
8+
9+
## [0.17.2](https://github.com/ComposeGears/Valkyrie/releases/tag/0.17.2) - 2025-10-11
10+
11+
### Fixed
12+
13+
- Handle aspect ratio for ImageVectorIcon rendering in gutter and auto-complete popup
14+
- Fix PSI parsing for material icon without materialIcon block, introduce BuilderExpression
15+
16+
### Changed
17+
18+
- Move :extensions into :sdk:core:extensions
19+
- Simplify navigation transitions across screens
20+
21+
## [0.17.1](https://github.com/ComposeGears/Valkyrie/releases/tag/0.17.1) - 2025-10-09
22+
23+
### Fixed
24+
25+
- Fix PSI parsing when nullable KtProperty on top of file
26+
27+
## [0.17.0](https://github.com/ComposeGears/Valkyrie/releases/tag/0.17.0) - 2025-10-09
28+
29+
### Added
30+
31+
- Image Vector Preview in Autocomplete Dialog
32+
- Image Vector Preview in Gutter
33+
- Add caching for icon creation in ImageVectorCompletionContributor
34+
- Introduce ImageVectorIcon for HQ preview in CompletionContributor
35+
- ImageVector to XML generator
36+
- Add Clip Path Support (KMP)
37+
- Add SDK core XML module to share VectorDrawable class
38+
39+
### Changed
40+
41+
- Gutter icon improvements
42+
- Optimize ImageVectorIcon rendering by removing scale dependency and introducing a constant for icon size
43+
- Refactor path utilities: move toPathString and toPathArgs to new PathNode
44+
45+
## [0.16.0](https://github.com/ComposeGears/Valkyrie/releases/tag/0.16.0) - 2025-07-24
46+
47+
### Changed
48+
49+
- No notable changes
50+
51+
## [0.15.0](https://github.com/ComposeGears/Valkyrie/releases/tag/0.15.0) - 2025-06-28
52+
53+
### Added
54+
55+
- Show export issues, add auto fix functionality
56+
- Allow numbers in icon pack names
57+
- Parse gradient startColor/endColor
58+
59+
### Fixed
60+
61+
- "useComposeColors" option not used in plugin
62+
- Fix ImageVector preview with linear gradient
63+
- "Auto resolve issues" cleared all processing icons
64+
- Export issues should consider nested pack duplicates
65+
66+
## [0.14.0](https://github.com/ComposeGears/Valkyrie/releases/tag/0.14.0) - 2025-04-28
67+
68+
### Added
69+
70+
- [Export] Replace color hex with predefined Compose colors
71+
- [Preview] Handle predefined Compose colors during parsing
72+
73+
### Fixed
74+
75+
- [IconPack] Preview action crash if icon pasted from clipboard
76+
- Fix plugin not dynamic due to missing id
77+
78+
## [0.13.0](https://github.com/ComposeGears/Valkyrie/releases/tag/0.13.0) - 2025-03-08
79+
80+
### Added
81+
82+
- Introduce separate Preview annotation for AndroidX and Jetbrains package

tools/idea-plugin/build.gradle.kts

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import org.jetbrains.changelog.Changelog
12
import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType
23
import org.jetbrains.intellij.platform.gradle.tasks.VerifyPluginTask.FailureLevel
34
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
@@ -6,6 +7,7 @@ plugins {
67
alias(libs.plugins.kotlin.jvm)
78
alias(libs.plugins.valkyrie.compose)
89
alias(libs.plugins.jetbrains.intellij)
10+
alias(libs.plugins.jetbrains.changelog)
911
}
1012

1113
group = rootProject.providers.gradleProperty("GROUP").get()
@@ -57,9 +59,12 @@ compose.resources {
5759
intellijPlatform {
5860
buildSearchableOptions = false
5961
projectName = "valkyrie-plugin"
60-
pluginConfiguration.ideaVersion {
61-
sinceBuild = "242"
62-
untilBuild = provider { null }
62+
pluginConfiguration {
63+
ideaVersion {
64+
sinceBuild = "242"
65+
untilBuild = provider { null }
66+
}
67+
changeNotes = provider { changelog.render(Changelog.OutputType.HTML) }
6368
}
6469
pluginVerification {
6570
failureLevel = listOf(
@@ -107,6 +112,12 @@ kotlin {
107112
}
108113
}
109114

115+
changelog {
116+
groups.empty()
117+
repositoryUrl = "https://github.com/ComposeGears/Valkyrie"
118+
versionPrefix = ""
119+
}
120+
110121
tasks {
111122
// workaround for https://youtrack.jetbrains.com/issue/IDEA-285839/Classpath-clash-when-using-coroutines-in-an-unbundled-IntelliJ-plugin
112123
buildPlugin {

tools/idea-plugin/src/main/resources/META-INF/plugin.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,3 @@ Allows to create organized icon pack with an extension property of you pack obje
8282
</extensions>
8383

8484
</idea-plugin>
85-

0 commit comments

Comments
 (0)