From 8cfc6c5daeb3d53470c389728846ad8670e0ddfb Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Tue, 17 Dec 2019 17:41:14 +0100 Subject: [PATCH] Don't discover owners for dynamic EPs by default (it's not so useful any more) GitOrigin-RevId: 244fe0318e8155dc73317bad48d38d0d3d33a5bf --- .../util/resources/misc/registry.properties | 2 ++ .../AnalyzeUnloadablePluginsAction.kt | 31 ++++++++++++------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/platform/util/resources/misc/registry.properties b/platform/util/resources/misc/registry.properties index 1ddd44d5774f..15b784eeb00f 100644 --- a/platform/util/resources/misc/registry.properties +++ b/platform/util/resources/misc/registry.properties @@ -1838,4 +1838,6 @@ appcds.install.idleTooHeavyCPULoadDelay.description=Wait time for AppCDS startup appcds.install.idleLongRetryDelay=900000 appcds.install.idleLongRetryDelay.description=Long wait time for AppCDS startup optimization works, e.g. used when computer is on battery +analyze.unloadable.discover.owners=false + # TODO please use EP com.intellij.registryKey for plugin/product specific keys \ No newline at end of file diff --git a/plugins/devkit/devkit-core/src/internal/AnalyzeUnloadablePluginsAction.kt b/plugins/devkit/devkit-core/src/internal/AnalyzeUnloadablePluginsAction.kt index 109b575213fe..b22b3e24348b 100644 --- a/plugins/devkit/devkit-core/src/internal/AnalyzeUnloadablePluginsAction.kt +++ b/plugins/devkit/devkit-core/src/internal/AnalyzeUnloadablePluginsAction.kt @@ -12,6 +12,7 @@ import com.intellij.openapi.fileEditor.OpenFileDescriptor import com.intellij.openapi.progress.ProgressManager import com.intellij.openapi.project.Project import com.intellij.openapi.roots.ProjectRootManager +import com.intellij.openapi.util.registry.Registry import com.intellij.openapi.vcs.ProjectLevelVcsManager import com.intellij.openapi.vcs.annotate.FileAnnotation import com.intellij.openapi.vcs.annotate.LineAnnotationAspect @@ -122,19 +123,25 @@ class AnalyzeUnloadablePluginsAction : AnAction() { appendln("EP usage statistics (${epUsagesMap.size} non-dynamic EPs remaining):") val epUsagesList = epUsagesMap.toList().sortedByDescending { it.second } for (pair in epUsagesList) { - appendln("${pair.second}: ${pair.first} (${extensionPointOwners.getOwner(pair.first)})") - } - - appendln() - appendln("EPs grouped by owner:") - for (owner in extensionPointOwners.getSortedOwners()) { - val owned = extensionPointOwners.getOwnedEPs(owner) - appendln("$owner: ${owned.size}") - for (ep in owned) { - appendln(ep) + append("${pair.second}: ${pair.first}") + if (Registry.`is`("analyze.unloadable.discover.owners")) { + append(" (${extensionPointOwners.getOwner(pair.first)})") } appendln() } + + if (Registry.`is`("analyze.unloadable.discover.owners")) { + appendln() + appendln("EPs grouped by owner:") + for (owner in extensionPointOwners.getSortedOwners()) { + val owned = extensionPointOwners.getOwnedEPs(owner) + appendln("$owner: ${owned.size}") + for (ep in owned) { + appendln(ep) + } + appendln() + } + } } val fileName = String.format("AnalyzeUnloadablePlugins-Report-%s.txt", DateFormatUtil.formatDateTime(System.currentTimeMillis())) @@ -172,7 +179,9 @@ class AnalyzeUnloadablePluginsAction : AnAction() { analysisErrors.add("Cannot resolve EP ${extension.xmlElementName}") continue } - extensionPointOwners.discoverOwner(ep) + if (Registry.`is`("analyze.unloadable.discover.owners")) { + extensionPointOwners.discoverOwner(ep) + } when (ep.dynamic.value) { false -> nonDynamicEPs.add(ep.effectiveQualifiedName)