PY-85452 Persist sdk for remote interpreters and upload proper paths

Firstly, we have JDK table where we store SDKs, but also we have our own
ProjectSdksModel for interpreters. If we won't persist SDK in our model,
but only in JDK table, we'll technically have SDK, but won't set it
properly in different places (eventually we'll sync those models
though). So it's important to persist SDK using ProjectSdksModel.

Secondly, for SSH interpreters we used helpers mappings for all uploaded
files. The proper way is to detect whether the file is a helper and
apply appropriate mapping.

These changes address both these issues.


(cherry picked from commit d582fc714326324c0580f11b13fd1f843d8ebefa)

IJ-MR-182438

GitOrigin-RevId: 9b24649711e74d2016cfcb3aa0351f72cb8ec21f
This commit is contained in:
Alexey Katsman
2025-11-14 14:23:31 +00:00
committed by intellij-monorepo-bot
parent 974acf33d7
commit 30e25518eb
@@ -28,6 +28,7 @@ import com.jetbrains.python.sdk.ModuleOrProject
import com.jetbrains.python.sdk.add.collector.PythonNewInterpreterAddedCollector
import com.jetbrains.python.sdk.add.v2.*
import com.jetbrains.python.sdk.configurePythonSdk
import com.jetbrains.python.sdk.service.PySdkService.Companion.pySdkService
import com.jetbrains.python.util.ShowingMessageErrorSync
import kotlinx.coroutines.supervisorScope
import java.awt.Dimension
@@ -113,6 +114,7 @@ class PythonLanguageRuntimeUI(
sdk?.let {
configurePythonSdk(project, module, it)
project.pySdkService.persistSdk(it)
PythonNewInterpreterAddedCollector.logPythonNewInterpreterAdded(it, false)
}