Skip to content

Commit 18607e3

Browse files
committed
Update the verifier to 1.384 and make changes in the build.gradle.kts to fix the IJ Verifier for the Flutter plugin
This resolves flutter#8034
1 parent cf33869 commit 18607e3

File tree

4 files changed

+49
-18
lines changed

4 files changed

+49
-18
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ flutter-gui-tests/.gradle/
1313
flutter-gui-tests/guitest.log
1414
flutter-intellij.jar
1515
flutter-intellij.zip
16-
third_party/lib/*.jar
1716
third_party/lib/jxbrowser/*
1817
!third_party/lib/jxbrowser/jxbrowser-7.41.2.jar
1918
!third_party/lib/jxbrowser/jxbrowser-swing-7.41.2.jar

build.gradle.kts

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
* found in the LICENSE file.
55
*/
66

7+
import org.jetbrains.intellij.platform.gradle.IntelliJPlatform
78
import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType
89
import org.jetbrains.intellij.platform.gradle.TestFrameworkType
910
import org.jetbrains.intellij.platform.gradle.models.ProductRelease
@@ -130,6 +131,7 @@ dependencies {
130131
}
131132
}
132133

134+
133135
intellijPlatform {
134136
pluginConfiguration {
135137
version = flutterPluginVersion
@@ -138,8 +140,46 @@ intellijPlatform {
138140
untilBuild = untilBuildInput
139141
}
140142
}
141-
}
142143

144+
// Verifier documentation
145+
// https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-extension.html#intellijPlatform-pluginVerification
146+
// https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-extension.html#intellijPlatform-pluginVerification-ides
147+
pluginVerification {
148+
// https://github.com/JetBrains/intellij-plugin-verifier/?tab=readme-ov-file#specific-options
149+
// https://github.com/JetBrains/intellij-plugin-verifier
150+
cliPath = file("./third_party/lib/verifier-cli-1.384-all.jar")
151+
failureLevel = listOf(
152+
// TODO(team) Ideally all of the following FailureLevels should be enabled:
153+
// TODO(team) Create a tracking issue for each of the following validations
154+
// VerifyPluginTask.FailureLevel.COMPATIBILITY_WARNINGS,
155+
// VerifyPluginTask.FailureLevel.COMPATIBILITY_PROBLEMS,
156+
// VerifyPluginTask.FailureLevel.DEPRECATED_API_USAGES, // https://github.com/flutter/flutter-intellij/issues/7718
157+
// VerifyPluginTask.FailureLevel.SCHEDULED_FOR_REMOVAL_API_USAGES,
158+
VerifyPluginTask.FailureLevel.EXPERIMENTAL_API_USAGES,
159+
// VerifyPluginTask.FailureLevel.INTERNAL_API_USAGES,
160+
// VerifyPluginTask.FailureLevel.OVERRIDE_ONLY_API_USAGES,
161+
VerifyPluginTask.FailureLevel.NON_EXTENDABLE_API_USAGES,
162+
VerifyPluginTask.FailureLevel.PLUGIN_STRUCTURE_WARNINGS,
163+
// VerifyPluginTask.FailureLevel.MISSING_DEPENDENCIES,
164+
VerifyPluginTask.FailureLevel.INVALID_PLUGIN,
165+
// VerifyPluginTask.FailureLevel.NOT_DYNAMIC,
166+
)
167+
verificationReportsFormats = VerifyPluginTask.VerificationReportsFormats.ALL
168+
subsystemsToCheck = VerifyPluginTask.Subsystems.ALL
169+
// Mute and freeArgs documentation
170+
// https://github.com/JetBrains/intellij-plugin-verifier/?tab=readme-ov-file#specific-options
171+
// https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-faq.html#mutePluginVerifierProblems
172+
freeArgs = listOf(
173+
"-mute",
174+
"TemplateWordInPluginId,ForbiddenPluginIdPrefix,TemplateWordInPluginName"
175+
)
176+
ides {
177+
ide(IntelliJPlatformType.AndroidStudio, ideaVersion)
178+
// Note, ideally we would have additional targets identified here, however we have been unsuccessful in adding
179+
// "recomended()" or select {} support with current versions of gradle & the verifier tool.
180+
}
181+
}
182+
}
143183
// Documentation for printProductsReleases:
144184
// https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-faq.html#how-to-check-the-latest-available-eap-release
145185
tasks {

flutter-idea/build.gradle.kts

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
88
import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType
99
import org.jetbrains.intellij.platform.gradle.TestFrameworkType
10+
import org.jetbrains.intellij.platform.gradle.models.ProductRelease
1011
import org.jetbrains.intellij.platform.gradle.tasks.VerifyPluginTask
1112
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
1213
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
@@ -72,9 +73,9 @@ dependencies {
7273
// Documentation on the default target platform methods:
7374
// https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-dependencies-extension.html#default-target-platforms
7475
if (ideaProduct == "android-studio") {
75-
androidStudio(ideaVersion)
76+
create(IntelliJPlatformType.AndroidStudio, ideaVersion)
7677
} else { // if (ideaProduct == "IC") {
77-
intellijIdeaCommunity(ideaVersion)
78+
create(IntelliJPlatformType.IntellijIdeaCommunity, ideaVersion)
7879
}
7980
testFramework(TestFrameworkType.Platform)
8081

@@ -126,13 +127,13 @@ intellijPlatform {
126127
pluginVerification {
127128
// https://github.com/JetBrains/intellij-plugin-verifier/?tab=readme-ov-file#specific-options
128129
// https://github.com/JetBrains/intellij-plugin-verifier
129-
cliPath = file("../third_party/lib/verifier-cli-1.379-all.jar")
130+
cliPath = file("../third_party/lib/verifier-cli-1.384-all.jar")
130131
failureLevel = listOf(
131132
// TODO(team) Ideally all of the following FailureLevels should be enabled:
132133
// TODO(team) Create a tracking issue for each of the following validations
133134
// VerifyPluginTask.FailureLevel.COMPATIBILITY_WARNINGS,
134135
// VerifyPluginTask.FailureLevel.COMPATIBILITY_PROBLEMS,
135-
// VerifyPluginTask.FailureLevel.DEPRECATED_API_USAGES,
136+
// VerifyPluginTask.FailureLevel.DEPRECATED_API_USAGES, // https://github.com/flutter/flutter-intellij/issues/7718
136137
// VerifyPluginTask.FailureLevel.SCHEDULED_FOR_REMOVAL_API_USAGES,
137138
VerifyPluginTask.FailureLevel.EXPERIMENTAL_API_USAGES,
138139
// VerifyPluginTask.FailureLevel.INTERNAL_API_USAGES,
@@ -153,18 +154,9 @@ intellijPlatform {
153154
"TemplateWordInPluginId,ForbiddenPluginIdPrefix,TemplateWordInPluginName"
154155
)
155156
ides {
156-
if (ideaProduct == "android-studio") {
157-
ide(IntelliJPlatformType.AndroidStudio, ideaVersion)
158-
} else {
159-
ide(IntelliJPlatformType.IntellijIdeaCommunity, ideaVersion)
160-
}
161-
recommended()
162-
// select {
163-
// types = listOf(IntelliJPlatformType.AndroidStudio)
164-
// channels = listOf(ProductRelease.Channel.RELEASE)
165-
// sinceBuild = sinceBuildInput
166-
// untilBuild = untilBuildInput
167-
// }
157+
ide(IntelliJPlatformType.AndroidStudio, ideaVersion)
158+
// Note, ideally we would have additional targets identified here, however we have been unsuccessful in adding
159+
// "recomended()" or select {} support with current versions of gradle & the verifier tool.
168160
}
169161
}
170162
}
41.5 MB
Binary file not shown.

0 commit comments

Comments
 (0)