diff --git a/python/ide/impl/resources/META-INF/pycharm-community-customization.xml b/python/ide/impl/resources/META-INF/pycharm-community-customization.xml index 8302d27acf0f..0ee864c8a49c 100644 --- a/python/ide/impl/resources/META-INF/pycharm-community-customization.xml +++ b/python/ide/impl/resources/META-INF/pycharm-community-customization.xml @@ -24,7 +24,7 @@ bundle="messages.PyBundle" key="configurable.PyActiveSdkModuleConfigurable.python.interpreter.display.name" instance="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" - groupWeight="5"/> + groupWeight="5"/> - + instance="com.jetbrains.python.minor.sdk.PyPluginSdkModuleConfigurable" + groupWeight="118"/> diff --git a/python/src/com/jetbrains/python/inspections/PyInterpreterInspection.java b/python/src/com/jetbrains/python/inspections/PyInterpreterInspection.java index 9792ccc7a309..d18c37e70c88 100644 --- a/python/src/com/jetbrains/python/inspections/PyInterpreterInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyInterpreterInspection.java @@ -8,13 +8,12 @@ import com.intellij.codeInspection.ProblemsHolder; import com.intellij.codeInspection.util.InspectionMessage; import com.intellij.codeInspection.util.IntentionFamilyName; import com.intellij.codeInspection.util.IntentionName; +import com.intellij.ide.actions.ShowSettingsUtilImpl; import com.intellij.openapi.application.ex.ApplicationUtil; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.module.ModuleUtilCore; -import com.intellij.openapi.options.ConfigurableGroup; -import com.intellij.openapi.options.ShowSettingsUtil; import com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil; import com.intellij.openapi.options.ex.ConfigurableVisitor; import com.intellij.openapi.progress.ProcessCanceledException; @@ -35,7 +34,6 @@ import com.intellij.util.PlatformUtils; import com.intellij.util.containers.ContainerUtil; import com.jetbrains.python.PyPsiBundle; import com.jetbrains.python.PythonIdeLanguageCustomization; -import com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable; import com.jetbrains.python.psi.LanguageLevel; import com.jetbrains.python.psi.PyFile; import com.jetbrains.python.sdk.*; @@ -333,8 +331,10 @@ public final class PyInterpreterInspection extends PyInspection { } public static void showPythonInterpreterSettings(@NotNull Project project, @NotNull Module module) { - if (hasPythonSdkConfigurable(project)) { - ShowSettingsUtil.getInstance().showSettingsDialog(project, PyActiveSdkModuleConfigurable.class); + final var id = "com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable"; + final var group = ConfigurableExtensionPointUtil.getConfigurableGroup(project, true); + if (ConfigurableVisitor.findById(id, Collections.singletonList(group)) != null) { + ShowSettingsUtilImpl.showSettingsDialog(project, id, null); return; } @@ -347,13 +347,6 @@ public final class PyInterpreterInspection extends PyInspection { } } - private static boolean hasPythonSdkConfigurable(@NotNull Project project) { - if (PlatformUtils.isPyCharm()) return true; - - final List groups = Collections.singletonList(ConfigurableExtensionPointUtil.getConfigurableGroup(project, true)); - return ConfigurableVisitor.findByType(PyActiveSdkModuleConfigurable.class, groups) != null; - } - private static boolean justOneModuleInheritingSdk(@NotNull Project project, @NotNull Module module) { return ProjectRootManager.getInstance(project).getProjectSdk() == null && ModuleRootManager.getInstance(module).isSdkInherited() &&