Commit Graph

447572 Commits

Author SHA1 Message Date
Yann Cébron
4c519af8cd [spellchecker] specify "language" attribute in registrations
GitOrigin-RevId: 4ec6a2b6c3f5b80e519d4ef00c1d962e8546b0a2
2024-07-02 17:11:24 +00:00
Alexandr Evstigneev
d0d64c6440 Properly obtain async service
GitOrigin-RevId: 717f8ac109d0ef043d12bf6fdfe90dc24a39ed48
2024-07-02 16:53:27 +00:00
Tagir Valeev
ea7720a20a [java-inspections] Improve the description of equals called on itself (IDEA-297999)
GitOrigin-RevId: 3538720542e2a60aea128bfe87292ef9f3f2f045
2024-07-02 16:37:40 +00:00
Tagir Valeev
a90638139a [java-inspections] IDEA-355789 'equals()' called on itself: disable for comparator contract test
GitOrigin-RevId: e378fb4b0a2e76698f09c911bc2cce75abead793
2024-07-02 16:37:40 +00:00
Tagir Valeev
bec1744128 EqualsWithItself enabled in tests in some cases
GitOrigin-RevId: 4758eccaf20027ef1a4633be025043f82c774fbe
2024-07-02 16:37:40 +00:00
Tagir Valeev
fbb89e9af4 EqualsWithItself warnings suppressed in tests
GitOrigin-RevId: 66bb7f94e5b6abd3d80b77d234e79dd38d93be74
2024-07-02 16:37:40 +00:00
Tagir Valeev
89e8955dc0 [java-completion] IDEA-355603 Do not suggest anonymous class creation for sealed interface
GitOrigin-RevId: 5d8bef4c624ec29338363e8120455010a4612ae0
2024-07-02 16:37:40 +00:00
Tagir Valeev
df39756adb [java-completion] Casts -> patterns
GitOrigin-RevId: 88cc79f729aeb75156b708c13186688616ee7a80
2024-07-02 16:37:40 +00:00
Irina Fediaeva
3851796622 Install DRF in Django testing env
GitOrigin-RevId: fdafa913b286425c40f23fbccf71d46b0e5aac31
2024-07-02 16:13:18 +00:00
Pavel Porvatov
610c546728 IJPL-155666 Close, maximize, minimize buttons are shown from the right side
GitOrigin-RevId: 7f9c9bf3c60897818336eb6648bb840d3f91c893
2024-07-02 16:11:32 +00:00
Yann Cébron
247d6174a7 [platform] PlatformExtensions.xml: specify "language" attribute in registrations
GitOrigin-RevId: a14653b413e134eb43cd0c983e214a65fe521665
2024-07-02 15:51:15 +00:00
Yann Cébron
919c7c9a2b [vcs] specify "language" attribute in registrations
GitOrigin-RevId: d32c78f791a0e5aefe77dffab8e7f38fcf4ef546
2024-07-02 15:51:15 +00:00
Yann Cébron
af444d8f50 [structuralsearch] specify "language" attribute in registrations
GitOrigin-RevId: 3e6fd25b87a97d751e4e0cc5b644d09ed5aae0f0
2024-07-02 15:51:15 +00:00
Yann Cébron
0531bbf42f [intelliLang] specify "language" attribute in registrations
GitOrigin-RevId: 1e84f4f75e4f12da3928fb2026340deb7422ae0a
2024-07-02 15:51:15 +00:00
Sergei Tachenov
1e4b60370c IJPL-157491 Use the new bulk expand API for TreeUtil.restoreExpandedPaths
The main reason for this change is that the new API
actually checks for every path whether it's a leaf.
This prevents a bug when we first mark a path as expanded
and then later we add it, so it shows as collapsed
(because it's newly added), but can't be expanded either
because the tree thinks it's expanded. An example
of this is the filtering tree, which tries to re-expand
every expanded path after refiltering, even those paths
that don't exist because of that refiltering.

A nice side effect is a considerable performance improvement
in case there are many expanded paths.

GitOrigin-RevId: a0c41c33ab374e75cb385c72a796abe917e3fdad
2024-07-02 15:50:36 +00:00
Igor Slobodskov
68f5aececd [R-1508] return ActionToolbar instead of JComponent
GitOrigin-RevId: d40f729c908675639ec3e0db5dd1b53f30659cbf
2024-07-02 15:29:55 +00:00
Igor Slobodskov
ae6c8dfb5c [R-1508] simplify InlayStateCustomizer
GitOrigin-RevId: e20455537a5bdb104f828a50d83c4e95c5f20def
2024-07-02 15:29:55 +00:00
Igor Slobodskov
beebabe85b [R-1508] rm MultiOutputProvider, there is no any implementation
GitOrigin-RevId: 5c25888249a51bf80e07651848a84ce5c5bd9758
2024-07-02 15:29:55 +00:00
Nikita Pavlenko
a45a651c15 [pycharm] Jupyter (fix). Personal popup for web outputs and fixed JupyterClearCellOutputAction. #PY-73353 Fixed
1. JupyterClearCellOutputAction now will work with both editor and outputs if the outputs will provide proper interval.

2. Web outputs (not markdown, but web) will have now their personal popup menu with only one action "clear".

GitOrigin-RevId: 7f487056e208384dc310eb028820ab63ab66f632
2024-07-02 15:03:07 +00:00
Roman Shevchenko
5923f1ea5a [tests] making launcher test app layout on Windows closer to reality
GitOrigin-RevId: 057e4d4e90736135532328b686d84c018ec279f4
2024-07-02 14:28:41 +00:00
Roman Shevchenko
1f3b7672a4 Cleanup (minor optimization)
GitOrigin-RevId: be753b94c881617bbdeaafe2df72e66a89ef203c
2024-07-02 14:28:41 +00:00
Alexander.Glukhov
95f12496c9 IJPL-797 intellij.platform.externalSystem.rt review internal API
GitOrigin-RevId: 285b5dfc1db268310373d6408684ba7559062ba7
2024-07-02 14:25:39 +00:00
Alexander.Glukhov
74d72fca5e [external system rt][IJPL-157598] do not expose internal impl classes as public API
GitOrigin-RevId: b21052a43e034305d7c4de6dad3702e5e2b9f42b
2024-07-02 14:25:39 +00:00
Alexander.Glukhov
99d316e448 [external system rt][IJPL-157598] do not expose internal API
GitOrigin-RevId: 24eaebb9233044d8e87a16c35c028753f8a35d65
2024-07-02 14:25:39 +00:00
Alexander.Glukhov
ee7922023b [external system rt][IJPL-157598] cleanup: removed unused utility class
GitOrigin-RevId: 04bb41e5c4b1c8690941d933d9c50721c28cd5ec
2024-07-02 14:25:39 +00:00
Anton Lobov
d9b7362258 [amper] fix completion item filtering with nested completion
GitOrigin-RevId: 2236a915064d994515d49481245875d5d0ef38d2
2024-07-02 14:18:33 +00:00
Alexander Bubenchikov
8e8dbf719a [maven] IDEA-225239 send maven certificate resolution to IDE side
GitOrigin-RevId: dd0b1f044fc195b4f922e313f9028d1ca38d0f78
2024-07-02 14:11:24 +00:00
Alexander Bubenchikov
446ca88f51 [maven] IDEA-225239 fix spy events buffer to send data line-by-line even if line was merged
GitOrigin-RevId: 5d8e68fe040a3e26d9eea0da81047fda29716412
2024-07-02 14:11:24 +00:00
Alexander Bubenchikov
ba113c2662 [maven] IDEA-225239 preparing server side
GitOrigin-RevId: a8f2c016e491dedee609287beca79dba0576a10e
2024-07-02 14:11:24 +00:00
Alexander Bubenchikov
178e0fd7b9 [maven] IDEA-216278 code cleanup
GitOrigin-RevId: 998adc3c785a9dee3c0b9bac192c683360f514b3
2024-07-02 14:11:24 +00:00
Mikhail Golubev
eb63148798 PY-73246 Don't insert square brackets after classes not having free type parameters
Even if they transitively extend typing.Generic, such as the builtin str.

GitOrigin-RevId: 9389ef5846e21ba5e0fed8b835beb2d458e42f13
2024-07-02 14:08:48 +00:00
Mikhail Golubev
ebba681c85 PY-62208 Don't suggest names shorter than five characters unless it's an extended completion
Otherwise, we end up with dozens of unintentionally public names such as "s", "i", "k"
even in the standard library (e.g. `this.s` or `pickletools.i`).

Ideally, we should rely on .pyi stubs and the content of `__all__` to offer only explicitly
exposed API, but not every module has any of those two, and it's not clear how to match
.py files and the corresponding .pyi stubs fast enough for completion.

GitOrigin-RevId: 163c472654e60ae63ff893142b8ddb9accc56393
2024-07-02 14:08:48 +00:00
Mikhail Golubev
1a3e6c2a64 PY-73246 Automatically insert square brackets on completion of parameterized types
GitOrigin-RevId: 5e81bc984fa3c7b4f83c564c85d872c5a49cf391
2024-07-02 14:08:48 +00:00
Mikhail Golubev
52850e21d8 PY-62208 Include importable names in basic completion results
Previously, such names were visible only on so-called "extended" completion,
activated when the hotkey for the basic completion was hit twice. The main reason
was that collecting such variants from indexes was a slow process, and we
didn't want to harm the responsiveness of completion for basic names.
Now it becomes possible thanks to a number of performance optimizations:

* Instead of using three separate indexes for classes, functions and variables,
we use one -- PyExportedModuleAttributeIndex. By definition, it includes only top-level
"importable" names, so we additionally save time by not filtering out irrelevant
entries. Also, it doesn't contain private definitions starting with an underscore.
It might bother some users, but given that the previous completion was used
extremely rarely, and the new one is going to be visible everywhere, it seems
that pruning unlikely entries as much as possible is a fare tradeoff. In the future,
we might enable them back on the "extended" completion if there is a demand.
Also, this index binds its keys to the project (`traceKeyHashToVirtualFileMapping`),
further eliminating useless index lookups.

* Thanks to the recent fixes in the platform (IJPL-265), it's now possible to
simultaneously iterate over all keys in an index and request values for a given key
without deadlocks, which is much faster than eagerly fetching all keys first.

* While scanning through all matching entries from indexes, we terminate
the lookup if the number of items exceeds the size of the lookup list.
We can further reduce this number by adjusting the "ide.completion.variant.limit"
registry value.

* Calculating expensive "canonical" import paths (e.g. "pkg.private.Name" is importable as
"pkg.Name") is offloaded to a background thread thanks to the `withExpensiveRenderer` API.
We still calculate these paths synchronously, though, for names whose raw qualified names
contain components starting with an underscore to decide whether these private names are
publicly re-exported and, hence, should be displayed.

The rest of the work has been put into reducing the number of entries on the list, e.g.

* The prefix under caret is now matched from the beginning of a name, e.g. `Bar<caret>`
matches `BarBaz`, but not `FooBar`.
* We don't suggest imported names clashing with those already available in scope.
* Some kinds of definitions are not suggested in specific contexts, e.g.
functions and variables are not suggested inside patterns and type hints.
* Nothing is suggested at the top-level of a class body, where dangling
reference expressions or calls are not normally expected.

Additionally, we don't suggest names from .pyi stubs at the moment, because
it pollutes the suggestion list with entries coming from the stubs for
third-party packages in Typeshed. We should probably enable them back once
we are able to properly disable Typeshed entries for not installed packages.

Some legacy forms of completion are left in the extended mode. In particular,
qualified names of classes are offered inside string literals only in this mode.
Also, module and package names are suggested only in the extended mode, because
top-level packages and modules are already suggested for the basic completion
by PyModuleNameCompletionContributor.

A few tests in PyClassNameCompletionTest were updated or removed entirely because
* we no longer suggest private names
* we no longer suggest names from private modules not re-exported in a public module
* we no longer suggest names clashing with those already available in scope
* prefix matching policy was changed to start at the beginning of an identifier

The whole feature can be disabled with the option "Suggest importable classes,
functions and variables in basic completion" in settings.

GitOrigin-RevId: 0787d42ce337b73b01a60f0bb7aa434fee43e659
2024-07-02 14:08:48 +00:00
Alexey Kalina
7efc1bb1f9 [evaluation-plugin] code-generation: fix collecting methods bodies for python
GitOrigin-RevId: 786d96900d277649ee422b890abed5b6cc84328f
2024-07-02 14:06:08 +00:00
Vlad Koshkin
3d85ac63df [kotlin] K2: Simplify the process of finding JDKs for script
^KTIJ-30457 Fixed

GitOrigin-RevId: fbe83795b15e41bfc76f96d00119ee3cb28d49b9
2024-07-02 14:04:41 +00:00
Vlad Koshkin
e3f974fe8c [gradle] Extract SDK lookup methods
GitOrigin-RevId: ab570896249440258a7aab29829128de773ec922
2024-07-02 14:04:41 +00:00
Petr
5054f4a9b5 [python] Do not store unused decorator arguments in stubs
GitOrigin-RevId: d1a5f63dbed11a4f373d1d7936700af3bc74f70f
2024-07-02 14:04:36 +00:00
Alexandr Trushev
56d2fb7229 RIDER-114196 Sticky lines: add api to receive notification when all sticky lines are removed
GitOrigin-RevId: e97a4ab6523f03c5a452323375548f2c91048023
2024-07-02 14:03:33 +00:00
Dmitrii Denisov
ca4b559d8a RDCT-474 [Autotest] Log in to GitHub
https://buildserver.labs.intellij.net/buildConfiguration/ijplatform_master_Idea_CWM_UnattendedHost_Linux_SmokeTests/522478750?buildTab=tests&status=passed&name=github

Merge-request: IJ-MR-137137
Merged-by: Dmitrii Denisov <dmitrii.denisov@jetbrains.com>

GitOrigin-RevId: 08f129c7a0dbff241c56a6353074650fd259253e
2024-07-02 14:02:18 +00:00
Elena Shaverdova
4e336f0e78 AT-1011 Do not wait for highlighting in Light Edit mode: use LightEdit.owns(project)
it allows CWM and RD frontend to pass the check

GitOrigin-RevId: 1d712072b3a2c73fa1f9e0e0c827c0b7ce179665
2024-07-02 13:54:00 +00:00
Anastasia Katsman
cafe763edf [tests-api] rename ListenerState to CodeAnalysisStateListener
GitOrigin-RevId: 204a9a405bb7968ee933e44931768ccfd6064dfe
2024-07-02 13:54:00 +00:00
Anastasia Katsman
765e95b4c8 [driver-tests]: present() should not return true in case there are many elements.
Otherwise, it leads to the situation when present() is true, but `click()` fails

GitOrigin-RevId: 3104f26bbe52f4c93ddddb7f7fe76b3f53bda052
2024-07-02 13:54:00 +00:00
Anastasia Katsman
cc163f2a20 fix memory leak in printCodeAnalyzerStatistic on failure
GitOrigin-RevId: e9bbc68a519243b048f468f3cbe783275a49fb41
2024-07-02 13:54:00 +00:00
Alex Plate
6778419025 [Workspace Model] [IJPL-156456] Increase benchmark size for the changelog
GitOrigin-RevId: f7b0821d3a27b66c8e77497821f50c2500a4138e
2024-07-02 13:51:51 +00:00
Pavel Porvatov
cde1edd1f5 IJPL-157274 Platform logs are flooded with missing gsettings log entry
GitOrigin-RevId: 4ed4a3ad6d859a9ee5d20753f2714b88075a4b05
2024-07-02 13:18:53 +00:00
Denis Zaichenko
6e5eb203e6 [vcs] IJPL-157608 Enable 'Resolve conflicts in import statements' by default.
GitOrigin-RevId: fd2bcce2d7c742273aa548c728c227f98be5ae6e
2024-07-02 12:58:23 +00:00
Alexander Kuznetsov
94a19d6577 [kotlin][debugger] send all actual evaluation errors to EA
Still, only in internal mode. And not to FUS.

GitOrigin-RevId: 1ce356020ddfa6d68c90a32399d1cac182a4bcd0
2024-07-02 12:57:35 +00:00
Alexander Kuznetsov
3280c798db [kotlin][debugger] IDEA-355782 specify evaluator (old/IR/K2) in evaluation reports
GitOrigin-RevId: af2586533a564e33dbf9d59b8804a3ebc4e235fe
2024-07-02 12:57:35 +00:00
Rustam Vishniakov
4e9749c11c IJPL-157626 Json Settings: org.jetbrains.plugins.github:app:GithubSettings
GitOrigin-RevId: 2874e15362477003cdcc6dbf651dc97d7955be03
2024-07-02 12:13:49 +00:00