Some modules don't make sense in the split frontend process (JetBrains Client), at least for now. Adding an explicit dependency on a marker 'intellij.platform.backend' module is needed to avoid putting such modules to separate JARs after automatic splitting in the build scripts is implemented (IJPL-164312): it doesn't make sense for these modules, and it's better to avoid changes in the layout without reason.
GitOrigin-RevId: a617d02f4f359d4d7741f7303e55193269f5ef69
*.plugin suffix is usually used for modules containing plugin.xml file. Modules have no sources and just aggregate some dependencies to include them in the classpath when running from sources, usually have .main suffix.
GitOrigin-RevId: 0b6310df6d77cee5be23b42c3d7e5f4cb9360575
1. Delete `intellij.python.community.impl.xml` (move content to `PythonCore` plugin). It is necessary to fix incorrect dependencies: `PythonCore`, `Pythonid` include the same module.
2. Fixed dependencies: if some plugin/module needs Python core functionality, then it should depend on `PythonCore`.
Co-authored-by: Vladimir Koshelev <Vladimir.Koshelev@jetbrains.com>
Merge-request: IJ-MR-136158
Merged-by: Egor Eliseev <Egor.Eliseev@jetbrains.com>
GitOrigin-RevId: ce9ed4c17f601ee1ca2b6cf608f4e30fdac1d879
Layout:
JPS modules
`intellij.python.community`
`intellij.python.community.impl`
`intellij.python.parser`
`intellij.python.psi`
`intellij.python.psi.impl`
`intellij.python.ast`
use package `com.jetbrains.python`
and go to `intellij.python.community.impl` v2 module
JPS module
`intellij.python`
uses package `com.intellij.python.pro`
and goes to `intellij.python/pro` v2 module
Both v2 modules (along with lots of others) come with
`PythonId` (prof) or `PythonCore` (community) plugins
DS bundles `intellij.python.community.impl`
Idea and other Mini IDEs get `PythonCore` or `PythonId` plugin that bundle modules for Idea and mini IDEs
GitOrigin-RevId: 98f418c52d90d51b9adf3250c561f2c36c767e2d
PyDocstring is based on Python, but its custom tokens `>>>` and `...` are registered just as whitespace. These tokens are ignored by the Python code formatter, which results in exceptions from the formatting model, which doesn't cover the whole text range.
We could either fix the formatting model or just disable formatting for PyDocstring. I prefer the latter for now, since the current approach with PyDocstring being a dialect of Python results in many subtle errors. It's better to have a workaround for now and maybe re-write doctest support later.
GitOrigin-RevId: 68b9a57650631f5d7245c85ada294af85c0aad44
* PyDocstring: "pycon", "python-repl"
* Python: "py", "python3"
I've added the links to the documents describing popular references to `PyCodeFenceLanguageProvider`.
GitOrigin-RevId: 6cafb15c9655434f5d69aa47eb7472b634364377