diff --git a/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java b/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java index 7a2e4211d631..d63333634f74 100644 --- a/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java +++ b/python/src/com/jetbrains/python/packaging/PyPackageManagerUI.java @@ -25,6 +25,7 @@ import com.intellij.util.containers.ContainerUtil; import com.jetbrains.python.PyBundle; import com.jetbrains.python.packaging.management.PythonPackagesInstaller; import com.jetbrains.python.packaging.ui.PyPackageManagementService; +import com.jetbrains.python.sdk.uv.UvExtKt; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -267,6 +268,7 @@ public final class PyPackageManagerUI { var result = PythonPackagesInstaller.Companion.installPackages( myProject, + mySdk, myRequirements, myExtraArgs, indicator @@ -310,6 +312,11 @@ public final class PyPackageManagerUI { @Override protected @NotNull List runTask(@NotNull ProgressIndicator indicator) { final List exceptions = new ArrayList<>(); + if (UvExtKt.isUv(mySdk)) { + // FIXME: lame hack + return exceptions; + } + final PyPackageManager manager = PyPackageManagers.getInstance().forSdk(mySdk); indicator.setText(PyBundle.message("python.packaging.installing.packaging.tools")); indicator.setIndeterminate(true); @@ -372,4 +379,4 @@ public final class PyPackageManagerUI { return PyBundle.message("python.packaging.notification.title.uninstall.packages.failed"); } } -} +} \ No newline at end of file diff --git a/python/src/com/jetbrains/python/packaging/management/PythonPackageInstaller.kt b/python/src/com/jetbrains/python/packaging/management/PythonPackageInstaller.kt index 60dde9ddda8f..fd13d5cc9be6 100644 --- a/python/src/com/jetbrains/python/packaging/management/PythonPackageInstaller.kt +++ b/python/src/com/jetbrains/python/packaging/management/PythonPackageInstaller.kt @@ -1,10 +1,11 @@ // Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package com.jetbrains.python.packaging +package com.jetbrains.python.packaging.management import com.intellij.execution.ExecutionException import com.intellij.openapi.progress.ProgressIndicator import com.intellij.openapi.progress.runBlockingCancellable import com.intellij.openapi.project.Project +import com.intellij.openapi.projectRoots.Sdk import com.jetbrains.python.PyBundle import com.jetbrains.python.packaging.PyRequirement import com.jetbrains.python.packaging.common.PythonPackageSpecificationBase @@ -15,6 +16,7 @@ class PythonPackagesInstaller { @JvmStatic fun installPackages( project: Project, + sdk: Sdk, requirements: List?, extraArgs: List, indicator: ProgressIndicator,