[python] PY-79486: (WIP) Move tools to separate modules to access them from the frontend.

We are slowly moving all tools to the separate modules to register them as EP. On the front we might have `ToolId` only. To map it to an icon we will use EP.

GitOrigin-RevId: 3cd0ad9f8da4a69739c8f632a6305ddd7c29d62d
This commit is contained in:
Ilya.Kazakevich
2025-11-24 16:35:26 +00:00
committed by intellij-monorepo-bot
parent 0549092e09
commit 434590383d
55 changed files with 235 additions and 161 deletions
@@ -1,4 +0,0 @@
<!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2 2V13C2 13.5523 2.44772 14 3 14H11C11.5523 14 12 13.5523 12 13H13V14H14V2H8V10H7V2H2Z" fill="#DE5FE9"/>
</svg>

Before

Width:  |  Height:  |  Size: 345 B

@@ -10,6 +10,7 @@
<module name="intellij.python.community.execService.python"/>
<module name="intellij.python.community.interpreters"/>
<module name="intellij.python.community.impl.poetry"/>
<module name="intellij.python.community.impl.uv"/>
<module name="intellij.python.community.impl.pipenv"/>
<module name="intellij.python.hatch"/>
<module name="intellij.python.pydev"/>
@@ -53,8 +54,10 @@
language="Python"
nameKey="INLAY.type.hints"
providerId="python.type.inlays">
<option bundle="messages.PyPsiBundle" descriptionKey="INLAY.reveal.type" enabledByDefault="true" nameKey="INLAY.reveal.type" optionId="python.type.inlays.reveal_type" />
<option bundle="messages.PyPsiBundle" descriptionKey="INLAY.function.return" enabledByDefault="false" nameKey="INLAY.function.return" optionId="python.type.inlays.function.return" />
<option bundle="messages.PyPsiBundle" descriptionKey="INLAY.reveal.type" enabledByDefault="true" nameKey="INLAY.reveal.type"
optionId="python.type.inlays.reveal_type"/>
<option bundle="messages.PyPsiBundle" descriptionKey="INLAY.function.return" enabledByDefault="false" nameKey="INLAY.function.return"
optionId="python.type.inlays.function.return"/>
</codeInsight.declarativeInlayProvider>
@@ -84,11 +87,7 @@
<statistics.validation.customValidationRule implementation="com.jetbrains.python.run.features.PyRunToolIdValidator"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.python.pyproject.model">
<tool implementation="com.jetbrains.python.projectModel.poetry.PoetryTool"/>
<tool implementation="com.jetbrains.python.projectModel.uv.UvTool"/>
<tool implementation="com.jetbrains.python.projectModel.hatch.HatchTool"/>
</extensions>
<projectListeners>
<listener class="com.jetbrains.python.packaging.PyDependencyCollectorListener"