com.intellij.openapi.vcs.changes.committed.LabeledComboBoxAction is incompatible with in 2024.2
Answered
com.intellij.openapi.vcs.changes.committed.LabeledComboBoxAction is still available in 2024.1, when I changed the platformVersion to 2024.2, the verifyPlugin failed:
$ gradle verifyPlugin
Calculating task graph as configuration cache cannot be reused because file 'build.gradle.kts' has changed.
> Task :compileKotlin FAILED
e: file:///…/ServiceDropdownAction.kt:6:51 Unresolved reference: LabeledComboBoxAction
e: file:///…/ServiceDropdownAction.kt:13:37 Unresolved reference: LabeledComboBoxAction
e: file:///…/ServiceDropdownAction.kt:14:5 'actionPerformed' overrides nothing
e: file:///…/ServiceDropdownAction.kt:18:5 'getActionUpdateThread' overrides nothing
e: file:///…/ServiceDropdownAction.kt:22:5 'update' overrides nothing
e: file:///…/ServiceDropdownAction.kt:34:5 'createPopupActionGroup' overrides nothing
FAILURE: Build failed with an exception.
And I didn't find it in the incompatible list (https://plugins.jetbrains.com/docs/intellij/api-changes-list-2024.html#20243) or any Deprecated annotation in the source code.
Please sign in to leave a comment.
You must use IntelliJ Platform Gradle Plugin (2.x) to build against 2024.2 as noted on page https://plugins.jetbrains.com/docs/intellij/api-changes-list-2024.html “Gradle Plugin” callout.
Thanks for the explanation, missed this statement, could you help to answer some further questions?
> You must use IntelliJ Platform Gradle Plugin (2.x) to build against 2024.2 as noted on page
Since I can run this plugin with Gradle Plugin v1 in 2024.2, does it mean that is NOT a MUST requirement but might bring potential risks in the runtime?
If 2024.2 needs a new Gradle Plugin v2, should I support a new plugin version and mark the until build to `2024.1` for the older one, or I can just refactor the current plugin to onboard and release a patch let users to upgrade the plugin version?
Also, can I assume the API breaking change will only introduced in the new minor, and build versions in the same minor should be compatible based on the `Incompatible List`.
Is there any version policy for IDE? Indeed I found 3 minor versions for one year, not sure if have any official docs that will state the version policy.
This is purely about Gradle tooling at _build_ time in your project, not runtime. And only if your plugin _builds_ against 2024.2 or later.
Minor releases (2024.2.2, 2024.2.3, …) should not introduce breaking changes. There are currently 3 major releases per year for IDEs, see also https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html