PY-74168 Poetry: Check a python version from "pyproject.toml" and from Base interpreter

Implement version tracking for Python specified in pyproject.toml files.
Validate base interpreters using a Python version from pyproject.toml.


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

GitOrigin-RevId: ddd685240b6d58ef8d2e6c5668c89c96d8992d27
This commit is contained in:
Egor Eliseev
2024-09-05 13:15:45 +00:00
committed by intellij-monorepo-bot
parent 7a9b0a636a
commit c23cd17165
12 changed files with 298 additions and 26 deletions

View File

@@ -249,10 +249,14 @@ public final class PySdkUtil {
@NotNull
public static LanguageLevel getLanguageLevelForSdk(@Nullable Sdk sdk) {
if (sdk != null && PythonSdkUtil.isPythonSdk(sdk)) {
final PythonSdkFlavor flavor = PythonSdkFlavor.getFlavor(sdk);
final PythonSdkFlavor<?> flavor = PythonSdkFlavor.getFlavor(sdk);
if (flavor != null) {
return flavor.getLanguageLevel(sdk);
}
String versionString = sdk.getVersionString();
if (versionString != null) {
return LanguageLevel.fromPythonVersion(sdk.getVersionString());
}
}
return LanguageLevel.getDefault();
}