IDEA-211136 Bundled plugins: highlight <change-notes> and <version>

This commit is contained in:
Yann Cébron
2019-04-17 11:56:43 +02:00
parent 7098359964
commit fa71ea05df
6 changed files with 14 additions and 4 deletions
@@ -149,6 +149,8 @@ inspections.plugin.xml.plugin.should.have.jetbrains.vendor=Plugin developed as a
inspections.plugin.xml.plugin.should.include.jetbrains.vendor=Plugin developed as a part of IntelliJ IDEA project should include 'JetBrains' as one of its vendors
inspections.plugin.xml.plugin.jetbrains.vendor.no.url=Plugin developed as a part of IntelliJ IDEA project shouldn''t specify ''{0}'' as url
inspections.plugin.xml.plugin.jetbrains.vendor.no.email=Plugin developed as a part of IntelliJ IDEA project shouldn't specify email
inspections.plugin.xml.plugin.jetbrains.no.version=Plugin developed as a part of IntelliJ IDEA project shouldn't specify version
inspections.plugin.xml.plugin.jetbrains.no.change.notes=Plugin developed as a part of IntelliJ IDEA project shouldn't specify change-notes
inspections.plugin.xml.plugin.jetbrains.no.generic.plugin.url=Plugin developed as a part of IntelliJ IDEA project shouldn't specify generic plugin url
inspections.plugin.xml.ep.doesnt.have.with=<extensionPoint> does not have <with> tags to specify the types of class fields
inspections.plugin.xml.ep.both.beanClass.and.interface=<extensionPoint> must not specify both 'interface' and 'beanClass' attributes
@@ -323,6 +323,17 @@ public class PluginXmlDomInspection extends BasicDomElementsInspection<IdeaPlugi
DevKitBundle.message("inspections.plugin.xml.plugin.jetbrains.vendor.no.email"),
new RemoveDomElementQuickFix(vendor.getEmail())).highlightWholeElement();
}
if (DomUtil.hasXml(ideaPlugin.getChangeNotes())) {
holder.createProblem(ideaPlugin.getChangeNotes(),
DevKitBundle.message("inspections.plugin.xml.plugin.jetbrains.no.change.notes"),
new RemoveDomElementQuickFix(ideaPlugin.getChangeNotes())).highlightWholeElement();
}
if (DomUtil.hasXml(ideaPlugin.getVersion())) {
holder.createProblem(ideaPlugin.getVersion(),
DevKitBundle.message("inspections.plugin.xml.plugin.jetbrains.no.version"),
new RemoveDomElementQuickFix(ideaPlugin.getVersion())).highlightWholeElement();
}
}
private static void checkPluginIcon(IdeaPlugin ideaPlugin, DomElementAnnotationHolder holder, Module module) {
@@ -1,7 +1,6 @@
<idea-plugin>
<id>test</id>
<vendor>JetBrains</vendor>
<version>1.0</version>
<vendor>JetBrains, me</vendor>
</idea-plugin>
@@ -1,7 +1,7 @@
<idea-plugin
<error descr="Plugin developed as a part of IntelliJ IDEA project shouldn't specify generic plugin url">url="https://www.jetbrains.com/idea"</error>>
<id>test</id>
<version>1.0</version>
<error descr="Plugin developed as a part of IntelliJ IDEA project shouldn't specify version"><version>1.0</version></error>
<vendor <error descr="Plugin developed as a part of IntelliJ IDEA project shouldn't specify 'http://www.jetbrains.com' as url">url="http://www.jetbrains.com"</error>
<error descr="Plugin developed as a part of IntelliJ IDEA project shouldn't specify email">email="some@one.com"</error>
>JetBrains</vendor>
@@ -1,5 +1,4 @@
<idea-plugin>
<id>test</id>
<version>1</version>
<vendor><error descr="Plugin developed as a part of IntelliJ IDEA project should include 'JetBrains' as one of its vendors">me</error></vendor>
</idea-plugin>
@@ -1,5 +1,4 @@
<error descr="Plugin developed as a part of IntelliJ IDEA project should specify 'JetBrains' as its vendor"><idea-plugin>
<id>test</id>
<version>1</version>
</idea-plugin>
</error>