Python: temporary hack: Move SPP to community to break cyclic dependency.

Will move it back soon.

GitOrigin-RevId: b2f032dbc9926b2e23c0438d2ce522985c7a6ad4
This commit is contained in:
Ilya.Kazakevich
2025-01-30 17:45:52 +00:00
committed by intellij-monorepo-bot
parent aee25e9279
commit dafe83d2c7
7 changed files with 16 additions and 13 deletions
@@ -20,5 +20,6 @@
<orderEntry type="module" module-name="intellij.platform.core" />
<orderEntry type="module" module-name="intellij.platform.projectModel" />
<orderEntry type="library" scope="TEST" name="JUnit5" level="project" />
<orderEntry type="module" module-name="intellij.platform.eel" />
</component>
</module>
@@ -1,16 +1,17 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.python.community.services.systemPython.spi
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.jetbrains.python.systemPythonSpi
import com.intellij.openapi.extensions.ExtensionPointName
import com.intellij.platform.eel.EelApi
import com.jetbrains.python.PythonBinary
import com.jetbrains.python.systemPythonSpi.SystemPythonProvider.Companion.EP
/**
* Register [EP] to [findSystemPythons]
*/
interface SystemPythonProvider {
companion object {
internal val EP: ExtensionPointName<SystemPythonProvider> = ExtensionPointName<SystemPythonProvider>("Pythonid.systemPythonProvider")
val EP: ExtensionPointName<SystemPythonProvider> = ExtensionPointName<SystemPythonProvider>("Pythonid.systemPythonProvider")
}
suspend fun findSystemPythons(eelApi: EelApi): Set<PythonBinary>
@@ -1,9 +1,9 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
/**
* This package is for JetBrains only
*/
@ApiStatus.Internal
package com.intellij.python.community.services.systemPython.spi;
package com.jetbrains.python.systemPythonSpi;
import org.jetbrains.annotations.ApiStatus;
@@ -1037,4 +1037,10 @@ The Python plug-in provides smart editing for Python scripts. The feature set of
<pyDebugAsyncioCustomizer implementation="com.jetbrains.python.debugger.PyDebugAsyncioCustomizerDefault"/>
</extensions>
<extensionPoints>
<extensionPoint qualifiedName="Pythonid.systemPythonProvider"
dynamic="true"
interface="com.jetbrains.python.systemPythonSpi.SystemPythonProvider"/>
</extensionPoints>
</idea-plugin>
@@ -4,10 +4,5 @@
<module name="intellij.python.community.services.internal.impl"/>
</dependencies>
<extensionPoints>
<extensionPoint qualifiedName="Pythonid.systemPythonProvider"
dynamic="true"
interface="com.intellij.python.community.services.systemPython.spi.SystemPythonProvider"/>
</extensionPoints>
</idea-plugin>
@@ -12,11 +12,11 @@ import com.intellij.platform.eel.provider.localEel
import com.intellij.python.community.impl.installer.PySdkToInstallManager
import com.intellij.python.community.services.internal.impl.PythonWithLanguageLevelImpl
import com.intellij.python.community.services.systemPython.SystemPythonServiceImpl.MyServiceState
import com.intellij.python.community.services.systemPython.spi.SystemPythonProvider
import com.jetbrains.python.PythonBinary
import com.jetbrains.python.Result
import com.jetbrains.python.sdk.flavors.PythonSdkFlavor
import com.jetbrains.python.sdk.installer.installBinary
import com.jetbrains.python.systemPythonSpi.SystemPythonProvider
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import org.jetbrains.annotations.ApiStatus
@@ -1,12 +1,12 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.python.junit5Tests.env.systemPython.impl
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.util.Disposer
import com.intellij.platform.eel.EelApi
import com.intellij.platform.eel.provider.localEel
import com.intellij.python.community.services.systemPython.spi.SystemPythonProvider
import com.jetbrains.python.PythonBinary
import com.jetbrains.python.systemPythonSpi.SystemPythonProvider
import com.jetbrains.python.tools.PythonType
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.toSet