Commit Graph

255 Commits

Author SHA1 Message Date
Aleksei Kniazev
fb09f01da9 show empty description for python packages if a remote interpreter is selected (PY-47789)
(cherry picked from commit 0709ca8b077fd34f757a415e63911afa345b90d4)

IDEA-CR-71087

GitOrigin-RevId: 452330bbaa830f06ec682141f3be61585ea7f870
2021-03-29 14:04:20 +00:00
Aleksei Kniazev
cddccd178f icon for python packages toolwindow (PY-47802)
(cherry picked from commit fedd478accb79968cdab7f8b41cea7423e98564f)

IDEA-CR-71085

GitOrigin-RevId: 3e7c55f7abb8663c7649582bfdccbc9cc633cf8b
2021-03-29 13:27:19 +00:00
Andrey Vlasovskikh
611f8bf640 PY-12988 Moved virtualenv activation for VCS commands to the Python plugin instead of PyCharm Customization plugin
We need this functionality in other IDEs with the Python plugin besides PyCharm.

GitOrigin-RevId: b12abb4c2c9da33affbdb88fc58208d7de5a7ca1
2021-03-27 13:55:48 +00:00
Alexey Kudravtsev
ecad62483f provide readable file type name (instead of e.g. PLAINTXT), unify property names for file type description, add test for having getDisplayName() in a FileType
GitOrigin-RevId: eb857f57def6d82a2051fc2610a24de266ee8386
2021-03-09 12:18:29 +00:00
Andrey Vlasovskikh
ff7ead9b79 PY-43889 Expand 'main' live template only at top-level
GitOrigin-RevId: bcf272b5032a6f9ee4143a38cf7cc6da965053f4
2021-03-08 23:05:55 +00:00
Aleksei Kniazev
9f75f5a242 first implementation of the toolwindow for managing python packages (PY-44934)
(cherry picked from commit edeeec04fd2cd0a72e39884b7d1b9cd498e9feab)

IDEA-CR-70495

GitOrigin-RevId: d0877d3fa5a97129e4c2de9e9510042e718c636e
2021-02-15 16:05:23 +00:00
ruro
c5d3bc5e3f PY-33060 continuation indent for parameters
close #1490

GitOrigin-RevId: c0a7225913b73100dc479a0a3d96026f2a4dd465
2021-02-11 19:41:49 +00:00
Dmitry Jemerov
9bcbb6d7f1 Rename "import popup" to "auto-import tooltip" (IDEA-258895)
GitOrigin-RevId: a40259d3f8f7a926374640be52e071cd9a3c2158
2021-01-07 10:28:19 +00:00
Semyon Proshev
6d9e039160 Remove support for the previous API since poetry plugin has been moved to the new one
GitOrigin-RevId: 7647679fed2577b6d76d4ac02e2054b23cc5a4ce
2020-12-10 14:02:42 +00:00
Semyon Proshev
189e352156 Update family name and text for quick fix because it is invoked on some specific element
GitOrigin-RevId: d4a5fe97e02feb5de016466d150279cf4bdeaab0
2020-12-07 12:56:43 +00:00
Petr Golubev
210fd9eb45 LAB-31: extracted optimize imports quick fix
GitOrigin-RevId: 0011495a43d4afe392c907fad710390a66953bef
2020-12-03 20:18:26 +00:00
Semyon Proshev
fcb92b05ed Fixed format for the notification about configured interpreter
GitOrigin-RevId: 8781d9a521bfb7a209d905a4ded8874d082ddd23
2020-12-01 17:19:43 +00:00
Mikhail Golubev
de08c2a947 Fix Python tests after the proofreading
GitOrigin-RevId: 2f6eb873d6321ef00d293377ec2c97195f72da21
2020-11-30 22:17:55 +00:00
alla redko
fb8eae37b2 IDEA-248845
GitOrigin-RevId: a8e044b9bdaee575a791592577c6ccfa701f8a98
2020-11-30 22:16:08 +00:00
alla redko
2e0f1fff95 IDEA-248845
GitOrigin-RevId: 3cd455277944a5c2584392c2c14e452401c46242
2020-11-30 22:15:53 +00:00
Semyon Proshev
476989b083 Highlight assignment expressions used in iterables in comprehensions (PY-43619)
GitOrigin-RevId: a980602a3e90bbcfd5db03e828a5ad2a8a339569
2020-11-24 17:35:01 +00:00
Semyon Proshev
48a952a327 Make parser stricter for for statements and expressions (PY-36478)
Now it more follows original python grammar.

GitOrigin-RevId: 199f30b819c85a4eba5cab9b3f67fbf1bb7f18b6
2020-11-24 17:35:00 +00:00
Semyon Proshev
9335c066f5 Make parser stricter for assignment expressions (PY-33886, PY-36478)
Now it more follows original python grammar.

GitOrigin-RevId: f2b45554d16ff87d946950591f0e92fedcfdfaf0
2020-11-24 17:34:59 +00:00
Mikhail Golubev
ce7cf3686f i18n: Extract a message from CompileQrcAction
GitOrigin-RevId: 7bae1c81a90d38573e2e9c2f966c3bacfedd2637
2020-11-19 16:42:52 +00:00
Petr Golubev
1e0a48cb6c mv PySignatureCacheManagerImpl to intellij.python.psi.impl
GitOrigin-RevId: eb8f8dbe0db9396ba9339d605ce726e99062dc15
2020-11-17 16:45:17 +00:00
andrey.matveev
6fabcd11c9 CPP-22821 Change mark as namespace package name for not PyCharm IDEs
(cherry picked from commit 8999868cb81a8dd155e191b925d790807acc9f6a)

IJ-CR-4069

GitOrigin-RevId: 79a79544e2a8e97555a7af6ca2d9526a428b381f
2020-11-17 16:12:07 +00:00
Mikhail Golubev
accfd76d4e i18n: Fix the progress title capitalization in PythonSdkUpdater
GitOrigin-RevId: 005e8c5c1f0c8e1a375a58049ebaa8ca8ce8951d
2020-11-04 19:23:37 +00:00
Andrey Lisin
4665b57e5e PY-44730 Internalize Python debugger Qt backend name in UI but use its internal name when passing to debugger
GitOrigin-RevId: eee6e6e600d4c354c46c298170bb0084b82b7309
2020-10-28 19:22:22 +00:00
Andrey Lisin
8711cecd17 PY-44730 Python debugger Qt backend option's value shouldn't be internationalized
GitOrigin-RevId: c830503e2e72255a293117ad93568f6c5264cdda
2020-10-28 12:16:25 +00:00
Daniil Ovchinnikov
2166e7a311 IDEA-249719 [i18n] deprecate UsageViewPresentation#getUsagesWord
GitOrigin-RevId: 301f05ef74e8cdc1e0dd45656b755544a9811ab5
2020-10-28 11:27:49 +00:00
Mikhail Golubev
84e8ffb598 i18n: Process new problems in Python refactorings
GitOrigin-RevId: 3c9f26e592dcd62a50452e99cd53a03be061cbc7
2020-10-27 17:16:51 +00:00
andrey.matveev
c5ae9550ce PY-42750 Allow same directory imports in Python 3 and introduce explicit namespace packages
There are 3 types of directories: plain directories, ordinary packages (with
__init__.py) and PEP 420 namespace packages. There are 3 types of imports:
absolute (from a root), same directory (absolute import from the current
directory when it's not explicitly marked as a root) and relative imports
(imports that start with dot).

Absolute imports are correct in all kinds of directories.
Same directory imports are correct in Python 2 in all cases and in Python 3 if
we have the directory containing the script with this import in Python path at
runtime. Users of Python 3 often face the problem when they can run the script
from the console because the directory containing this script got into Python
path but still have red underline and an unresolved reference error in the same
directory import because PyCharm didn't know that this file will be used as a
program's entry point. Previously, the way to fix such a problem was marking it
as a source root. But this action was not so obvious, especially for newcomers.
With this feature, such imports resolve successfully and now it is not necessary
to mark directories as source roots.

Relative imports are correct only in Python 3 namespace or ordinary packages and
should not be used in plain directories. If we have a relative import in plain
directory we highlight it with a weak warning and suggest 2 ways of fixing that:
marking directory as a namespace package explicitly (with quick fix or with Mark
As | Namespace Package) or changing this import to the same directory import
with a quickfix or manually.

Explicitly marking namespace packages can later be used for automatically
running files from them and ordinary packages with "-m".
The new resolve policy and explicit namespace packages can be disabled with the
Registry flag "python.explicit.namespace.packages".

These changes also address PY-40396. Namely, now any directory with __init__.py
inside or explicitly marked as a namespace package has a package icon,
regardless of its name or parents.

GitOrigin-RevId: 310fa562eb60121243cb6d68386ffc3e45c73245
2020-10-21 16:04:26 +00:00
Roman Shevchenko
1e7fb15e14 [ui] Task#WithResult extends Task#Modal, hence has the same capitalization
GitOrigin-RevId: 2b7c842864fbf1255f6570a32f6f25344d0db3de
2020-10-20 09:34:37 +00:00
Semyon Proshev
31033c8246 Suggest creating pipenv environment using Pipfile (PY-44001)
GitOrigin-RevId: c0df7886a98f4335651dd5921aa041620e18935b
2020-10-19 18:11:17 +00:00
maxim.kolmakov
18513de305 WI-56119 Fix default path for wsl
GitOrigin-RevId: 44a0f69ac93761db8aa97fe1c3b90b10ccdd6923
2020-10-19 13:35:48 +00:00
Elizaveta Shashkova
371c1549ae Fix capitalization in Python Console
GitOrigin-RevId: 2eb571f3362b44e8b6a0e6670909636e6f1c48af
2020-10-14 13:24:24 +00:00
Semyon Proshev
5f40cea7f0 Suggest creating conda env using environment.yml (PY-44835)
GitOrigin-RevId: b7bd873749673a24044b5f537fdbc9d5aaad5469
2020-10-09 16:17:19 +00:00
Semyon Proshev
505778c92e Hide PyCondaPackageService.PREFERRED_CONDA_PATH and fix several warnings
GitOrigin-RevId: 0923f1f74f59f34d9e5389a7d7a5f327fe1dc271
2020-10-09 16:17:18 +00:00
Semyon Proshev
6823896ff0 Move some ui strings closer to their usages
GitOrigin-RevId: 94cbb82c85b10cd80164e32e17bfebb1ab557655
2020-10-09 16:17:17 +00:00
Semyon Proshev
11b0b97c80 Move common sdk ui strings to the sdk bundle
GitOrigin-RevId: 48074459333e959644f51c87270a6bee2dc59ea7
2020-10-06 15:17:19 +00:00
Semyon Proshev
d53595adcf Update sdk configurator and inspection to suggest creating venv using requirements.txt or setup.py (PY-44743)
GitOrigin-RevId: e46b817ea085bca4b538c84eed3cf6d4a0a75013
2020-10-06 15:17:17 +00:00
Mikhail Golubev
7b6cc1fe1f PY-43773 More robust synchronization of Python SDK background updates
Previous synchronization of background updates in PythonSdkUpdater was flawed.
It didn't prevent us from launching several concurrent updates for the same
SDK, but only blocked subsequent refresh tasks on a BlockingSet, still showing
the corresponding progress indicators, piling up threads and exhausting system
resources.

The new implementation attempts to enforce the following policy: no two updates
for the same SDK can be run concurrently, and all subsequent updates for an SDK
already being refreshed are squashed and queued to be executed once it finished.

We also adjusted PythonSdkUpdater interface to better indicate synchronization
of individual methods. The old update() method, which performed a few of update
operations in a blocking fashion, is now deprecated and replaced with more
explicit scheduleUpdate(), always asynchronous, and internal
updateVersionAndPathsSynchronouslyAndScheduleRemaining() that replicates the old
behavior for the time being due to a number of existing usages, but is to be
revised. Synchronous version and paths refreshes are now performed under a modal
progress indicator.

The legacy updating mechanism can be restored as a fallback if
"python.use.new.sdk.updater" Registry flag is reset.

Additionally, internal PyUpdateProjectSdk action was added for diagnostic.

These changes are a result of a joint effort with Alexey Kniazev.

GitOrigin-RevId: 6260cda7a22c4f5932f7d78eb6660a50e2b972b6
2020-09-25 20:03:59 +00:00
Mikhail Golubev
4ce714239a i18n: Extract messages from setup.py task chooser
GitOrigin-RevId: 46f289a0675fc7afb1c97f16db84ac3303da893d
2020-09-15 06:54:08 +00:00
Vitaliy.Bibaev
abc586f22a i18n: JUnit (fix consequences in python.testing) (IDEA-249456)
GitOrigin-RevId: a54a33ca77a13b9a767431f89ba5027f7053c54f
2020-09-11 08:29:22 +00:00
Tagir Valeev
9b6106287f i18n
GitOrigin-RevId: d0933302d653895dffbd51249806698488d7d4e0
2020-09-07 09:51:29 +00:00
Mikhail Golubev
1b84c73e40 i18n: Remove unused messages from various Python bundles
GitOrigin-RevId: fefdb04faeb7baca8f5fcf40dc935e8eba043472
2020-09-06 13:09:01 +00:00
Mikhail Golubev
485dfb2401 i18n: Process Python localization plugin. Move its messages to a dedicated bundle
GitOrigin-RevId: d6997e3ee10eb3bcc738bde6d24c2c3286dc2c09
2020-09-05 16:32:50 +00:00
Mikhail Golubev
21d6c78b8d i18n: Extract the name of the quick fix for installing packaging tools
GitOrigin-RevId: f160499717ec8fa3809093ae80b0809921f51c05
2020-09-05 16:32:44 +00:00
Elizaveta Shashkova
195898a01d PY-41521 Minor UI fixes
Signed-off-by: Elizaveta Shashkova <elizaveta.shashkova@jetbrains.com>

GitOrigin-RevId: d491f0ab2d780a52f9dc6dd97f4a9d4fd983d2bd
2020-09-04 10:33:00 +00:00
Nikolay.Smirnov
13ed09e835 PY-41521 Powerful Data Viewer
Signed-off-by: Elizaveta Shashkova <elizaveta.shashkova@jetbrains.com>

GitOrigin-RevId: ae43b5f0e5261839615c83053147000aa693028d
2020-09-04 10:32:57 +00:00
alexey.afanasiev
0dad544331 IDEA-249742 internalization for "lang-impl"
GitOrigin-RevId: 3717b5cb71b764c4d072acd5181f4c7c52026155
2020-09-04 09:33:30 +00:00
Vladimir Lagunov
6e9f6548b8 i18n: Some messages moved to bundles.
GitOrigin-RevId: c8ed1f3fd5781b2f7008ef5999bf0f2757efe719
2020-09-02 13:49:03 +00:00
Alexander Koshevoy
d6376fa517 i18n: Extract validation error messages from PyAddExistingCondaEnvPanel and PyAddNewCondaEnvPanel to PyBundle.properties
GitOrigin-RevId: 0dcb8aba0c556361fd664e9235b2e59a4a8e3266
2020-09-02 00:11:43 +00:00
Alexander Koshevoy
307f3e755b i18n: Extract "Directory ... not found" message from PySdkExt.kt to PyBundle.properties
GitOrigin-RevId: 712c5ce33d48df8ac78cb8b72400aa38793476ef
2020-09-02 00:11:42 +00:00
Alexander Koshevoy
36448247a1 i18n: Extract error message from PySkeletonRefresher to PyBundle.properties
GitOrigin-RevId: 25850f972d141201510984f694bdafbad5c3d1b5
2020-09-02 00:11:41 +00:00