From ed4b64dd1918e9f1f5ba38eee00e3730cc21efc0 Mon Sep 17 00:00:00 2001 From: Sutina Wipawiwat Date: Wed, 26 Mar 2025 17:54:02 +1100 Subject: [PATCH 1/5] chore: Replace decreated ProjectManagerListener.OpenProject with ProjectActivity as per https://plugins.jetbrains.com/docs/intellij/plugin-components.html?_gl=1%2A19w0afu%2A_gcl_au%2AMTg1NDI5Nzc0Ny4xNzM3NjkzMzky%2AFPAU%2AMTg1NDI5Nzc0Ny4xNzM3NjkzMzky%2A_ga%2ANTIyNzM4NTg5LjE2OTcwMDQ1ODc.%2A_ga_9J976DJZ68%2AMTc0Mjk3MDQ2Ny44NC4wLjE3NDI5NzA0NjcuNjAuMC4w#project-open --- .../cash/hermit/HermitProjectManagerListener.kt | 4 ---- .../cash/hermit/HermitProjectStartupActivity.kt | 10 ++++++++++ src/main/resources/META-INF/plugin.xml | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt diff --git a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt index 1976ac0..30a23c5 100644 --- a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt +++ b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt @@ -5,10 +5,6 @@ import com.intellij.openapi.project.ProjectManagerListener class HermitProjectManagerListener : ProjectManagerListener { - override fun projectOpened(project: Project) { - Hermit(project).open() - } - override fun projectClosing(project: Project) { Hermit.remove(project) } diff --git a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt new file mode 100644 index 0000000..c9ba21c --- /dev/null +++ b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt @@ -0,0 +1,10 @@ +package com.squareup.cash.hermit + +import com.intellij.openapi.project.Project +import com.intellij.openapi.startup.ProjectActivity + +class HermitProjectStartupActivity: ProjectActivity { + override suspend fun execute(project: Project) { + Hermit(project).open() + } +} \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 057d83c..420d9a0 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -40,6 +40,7 @@ + From 93a1d2142c6b597a46b7723bc820328105196704 Mon Sep 17 00:00:00 2001 From: Sutina Wipawiwat Date: Wed, 26 Mar 2025 18:39:40 +1100 Subject: [PATCH 2/5] chore: Remove projectClosing with Disposable as per https://plugins.jetbrains.com/docs/intellij/plugin-components.html?_gl=1%2A19w0afu%2A_gcl_au%2AMTg1NDI5Nzc0Ny4xNzM3NjkzMzky%2AFPAU%2AMTg1NDI5Nzc0Ny4xNzM3NjkzMzky%2A_ga%2ANTIyNzM4NTg5LjE2OTcwMDQ1ODc.%2A_ga_9J976DJZ68%2AMTc0Mjk3MDQ2Ny44NC4wLjE3NDI5NzA0NjcuNjAuMC4w#project-and-application-close --- .../com/squareup/cash/hermit/HermitCleanupService.kt | 12 ++++++++++++ .../cash/hermit/HermitProjectManagerListener.kt | 11 ----------- .../cash/hermit/HermitProjectStartupActivity.kt | 3 +++ src/main/resources/META-INF/plugin.xml | 1 - 4 files changed, 15 insertions(+), 12 deletions(-) create mode 100644 src/main/kotlin/com/squareup/cash/hermit/HermitCleanupService.kt delete mode 100644 src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt diff --git a/src/main/kotlin/com/squareup/cash/hermit/HermitCleanupService.kt b/src/main/kotlin/com/squareup/cash/hermit/HermitCleanupService.kt new file mode 100644 index 0000000..a45f94c --- /dev/null +++ b/src/main/kotlin/com/squareup/cash/hermit/HermitCleanupService.kt @@ -0,0 +1,12 @@ +package com.squareup.cash.hermit + +import com.intellij.openapi.Disposable +import com.intellij.openapi.components.Service +import com.intellij.openapi.project.Project + +@Service(Service.Level.PROJECT) +class HermitCleanupService(private val project: Project) : Disposable { + override fun dispose() { + Hermit.remove(project) + } +} \ No newline at end of file diff --git a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt deleted file mode 100644 index 30a23c5..0000000 --- a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectManagerListener.kt +++ /dev/null @@ -1,11 +0,0 @@ -package com.squareup.cash.hermit - -import com.intellij.openapi.project.Project -import com.intellij.openapi.project.ProjectManagerListener - - -class HermitProjectManagerListener : ProjectManagerListener { - override fun projectClosing(project: Project) { - Hermit.remove(project) - } -} \ No newline at end of file diff --git a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt index c9ba21c..0fba7a6 100644 --- a/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt +++ b/src/main/kotlin/com/squareup/cash/hermit/HermitProjectStartupActivity.kt @@ -6,5 +6,8 @@ import com.intellij.openapi.startup.ProjectActivity class HermitProjectStartupActivity: ProjectActivity { override suspend fun execute(project: Project) { Hermit(project).open() + + // Ensure HermitCleanupService is initialized and disposal is registered + project.getService(HermitCleanupService::class.java) } } \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 420d9a0..86a46a8 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -19,7 +19,6 @@ - From 9f3bb274253e00d6db915329723d03ff25377490 Mon Sep 17 00:00:00 2001 From: Sutina Wipawiwat Date: Wed, 26 Mar 2025 18:53:00 +1100 Subject: [PATCH 3/5] chore: Remove Deprecate PerformInBackgroundOption Task.Backgrounable defaults to ALWAYS_BACKGROUND https://github.com/JetBrains/intellij-community/blob/468d9bd86c6065a31d78bfbcc9bc08c0af80d07c/platform/core-api/src/com/intellij/openapi/progress/Task.java#L228 --- .../com/squareup/cash/hermit/action/EnableHermitAction.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/kotlin/com/squareup/cash/hermit/action/EnableHermitAction.kt b/src/main/kotlin/com/squareup/cash/hermit/action/EnableHermitAction.kt index a5e460f..8cd708f 100644 --- a/src/main/kotlin/com/squareup/cash/hermit/action/EnableHermitAction.kt +++ b/src/main/kotlin/com/squareup/cash/hermit/action/EnableHermitAction.kt @@ -3,7 +3,6 @@ package com.squareup.cash.hermit.action import com.intellij.notification.Notification import com.intellij.notification.NotificationAction import com.intellij.openapi.actionSystem.AnActionEvent -import com.intellij.openapi.progress.PerformInBackgroundOption import com.intellij.openapi.progress.ProgressIndicator import com.intellij.openapi.progress.Task import com.intellij.openapi.project.Project @@ -18,7 +17,7 @@ class EnableHermitAction : NotificationAction("") { } class BackgroundableWrapper(project: Project, title: String, private val task: Runnable) - : Task.Backgroundable(project, title, true, PerformInBackgroundOption.DEAF) { + : Task.Backgroundable(project, title, true) { override fun run(indicator: ProgressIndicator) { task.run() From a7184408f582c447f6451678f1f1544962735a8f Mon Sep 17 00:00:00 2001 From: Sutina Wipawiwat Date: Thu, 27 Mar 2025 14:46:06 +1100 Subject: [PATCH 4/5] fix: Upgrade ij gradle plugin to version 2.3.0 with fix for `TestFrameworkType.Bundled` test framework issue https://github.com/JetBrains/intellij-platform-gradle-plugin/blob/b18551dc3796c6630efa9e305e900e07b5230d87/CHANGELOG.md?plain=1#L57 It also requires gradle version bump 8.5+. --- bin/{.gradle-8.2.pkg => .gradle-8.13.pkg} | 0 bin/gradle | 2 +- build.gradle.kts | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename bin/{.gradle-8.2.pkg => .gradle-8.13.pkg} (100%) diff --git a/bin/.gradle-8.2.pkg b/bin/.gradle-8.13.pkg similarity index 100% rename from bin/.gradle-8.2.pkg rename to bin/.gradle-8.13.pkg diff --git a/bin/gradle b/bin/gradle index 3b1d289..2c1f94a 120000 --- a/bin/gradle +++ b/bin/gradle @@ -1 +1 @@ -.gradle-8.2.pkg \ No newline at end of file +.gradle-8.13.pkg \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index ba31ff5..0ca8b02 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ version = project.properties["version"] ?: "1.0-SNAPSHOT" plugins { id("java") kotlin("kapt") version "2.0.21" - id("org.jetbrains.intellij.platform") version "2.0.1" + id("org.jetbrains.intellij.platform") version "2.3.0" id("org.jetbrains.kotlin.jvm") version "2.0.21" id("org.jetbrains.kotlin.plugin.serialization") version "2.0.21" From 1198acbe0e290e5f6928128d74daa7411c0a8fa9 Mon Sep 17 00:00:00 2001 From: Sutina Wipawiwat Date: Fri, 28 Mar 2025 14:13:31 +1100 Subject: [PATCH 5/5] Drop support for old IDEA version 222.4554.10 --- gradle.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index 93ce8ef..7be92a9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,5 +9,5 @@ IIC.eap.go_plugin.version=251.17181.16 GO.release.version=243.21565.208 GO.eap.version=251.17181.28 # The oldest supported versions. -IIC.from.version=222.4554.10 -GO.from.version=222.4554.12 +IIC.from.version=232.10335.12 +GO.from.version=232.10335.12