[python] Rewrite PythonHelpersLocator

1. `PythonHelpersLocator` is an API to get helpers. It is aware of PyCharm Community helpers but also aware of some EP that provides additional helper paths.
2. EP implementations for PyCharm Prof and Jupyter that provide additional (prof) helpers.
It will help avoid problems with which Locator to use from Professional, Community or Jupiter plugins.


Merge-request: IJ-MR-140027
Merged-by: Egor Eliseev <Egor.Eliseev@jetbrains.com>

GitOrigin-RevId: c7c34f323247002699866f12f6ff5a08cf6a18ff
This commit is contained in:
Egor.Eliseev
2024-07-23 12:04:22 +00:00
committed by intellij-monorepo-bot
parent 71e4ebad19
commit 0be08ded36
22 changed files with 108 additions and 92 deletions

View File

@@ -97,7 +97,7 @@ public class PyLegacySkeletonGenerator extends PySkeletonGenerator {
public List<String> getCommandLine() {
final List<String> commandLine = new ArrayList<>();
commandLine.add(mySdk.getHomePath());
commandLine.add(PythonHelpersLocator.findPathInHelpers(GENERATOR3));
commandLine.add(PythonHelpersLocator.findPathStringInHelpers(GENERATOR3));
commandLine.add("-d");
commandLine.add(mySkeletonsPath);
if (!ContainerUtil.isEmpty(myAssemblyRefs)) {