Commit Graph

453754 Commits

Author SHA1 Message Date
Andrey Vokin
0f8e5afa8a PY-73263 Python 3.13 Support - Code Insight - Typeshed
Remove custom deprecation check for abc. Typesheds now have deprecation decorator

GitOrigin-RevId: 72ba0028bfda2d7eda4a8e01aed5962613305531
2024-09-09 13:54:00 +00:00
Andrey Vokin
4c8d95ccc7 [PyCharm] do not refresh packages in test.
Packages refresh leads to enabling dump mode.

GitOrigin-RevId: 253819711787eb74babcbf07ed2c61166f95795e
2024-09-09 13:54:00 +00:00
Andrey Vokin
1041f5e6a0 PY-73263 Python 3.13 Support - Code Insight - Typeshed
GitOrigin-RevId: 94973415b96b2a0f859d29b0201d1ccee0d06462
2024-09-09 13:54:00 +00:00
Andrey Vokin
9293cc2ad7 PY-73263 Python 3.13 Support - Code Insight - Typeshed
update dataclass typeshed

GitOrigin-RevId: bda7fda7ef235351f9ec6b21aa9021d6dcbd8b80
2024-09-09 13:54:00 +00:00
Alexey Kudravtsev
c5575a236a optimization: do not reparse include files in each plugin.xml on every typing (part of KTIJ-27513 K2 IDE: Slow reference search for specific symbols in unused symbol inspection)
GitOrigin-RevId: 6dd18e981f76e5afb98acccc88535749528a7397
2024-09-09 13:45:38 +00:00
Yann Cébron
05bc953187 [platform] UISandboxDialog: fix typo
GitOrigin-RevId: 6d1f0f1c0851ac0b5eeb4958fed60b4c756a82aa
2024-09-09 13:40:27 +00:00
Nikolay Chashnikov
c603cbb13d [project structure dialog] properly handle selection changes after reopening the dialog (IJPL-161905)
After e7b38952621668, AutoScrollToSourceHandler remembers the modality state which it uses for processing events on the first invocation. However, it's used in BaseStructureConfigurable instances, which are reused each time the Project Structure dialog is opened (see IJPL-21800). And then the dialog is opened for the second time, it stops processing auto-scroll events. It's not that simple to fix IJPL-21800. So as a temporary solution, an internal 'resetAlarm' function was added and called when the dialog is closed to reset the instance and ensure that it'll be recreated with the proper modality state the next time the dialog is opened.

GitOrigin-RevId: 68af8a98a7d73a50d8cbc7889e4ab9a229d3ad54
2024-09-09 13:13:34 +00:00
Roman Shevchenko
56df3d0798 Cleanup (more aggressive deprecation of an obsolete method; missing annotations; formatting)
GitOrigin-RevId: a04f963d42b3d0e02eec133aac617f007ee143d8
2024-09-09 13:01:09 +00:00
Alexander.Glukhov
0d2763d208 [gradle][telemetry][IDEA-349510] cleanup in GradleDaemonOpenTelemetryUtil
GitOrigin-RevId: 58b5ff98d4db4eb3bb4b808bbbe620e4171aefa4
2024-09-09 13:00:01 +00:00
Mathias Boulay
2cfd03bd80 fix(JavaDoc-gen): compilation on backport, Better rendering, respect IDE options
Fixes IDEA-354610, IDEA-353932
Partially addresses IDEA-352642

fix(JavaDoc-format): handle indent on markdown

fix(JavaDoc-backport): fix compilation

GitOrigin-RevId: 5d1705da21be59ec0bc92a1b35bdf986a3227064
2024-09-09 12:59:51 +00:00
Anastasia Katsman
0dc015188d [driver-sdk] Enhance invokeAction to log execution details
GitOrigin-RevId: c5d4c2b136918a427fa8b9a3a3b964ace1d4afc1
2024-09-09 12:59:09 +00:00
Lev Serebryakov
576e10c744 IJPL-161509 IDEA 2024.3 fails to start if there is no appropriate config folder and Screen Reader is running on the machine
Don't call app-related APIs if app is not loaded (yet).

GitOrigin-RevId: 9629f0b80d0cc1608afbc190e23db9d019a2fdf3
2024-09-09 12:43:47 +00:00
Chris Lemaire
9e34643884 [hist] Fix diff re-opening in tab/window unexpectedly (IJPL-73125)
#IJPL-73125 Fixed

GitOrigin-RevId: 8685f62ae5acf0a6c601430a3e0ae3cdcbae82ac
2024-09-09 12:32:03 +00:00
Vladimir Dolzhenko
8ca86bec16 [kotlin] Consider only regular files for the script source
#KTIJ-30253

GitOrigin-RevId: 0441d2c02b777f138260eaa67ff1142377611942
2024-09-09 12:28:14 +00:00
Vladimir Dolzhenko
5921639358 [kotlin] Do not invalidate kaModules for library files on OCB
#KTIJ-30253

GitOrigin-RevId: ee99fb8ab349e629d62c229c23ed7bb560ab9813
2024-09-09 12:28:14 +00:00
Vladimir Dolzhenko
7a5d837f28 [kotlin] Cache dependencies to avoid unnecessary memory allocations
#KTIJ-30253

GitOrigin-RevId: e0d2dcfd89706e065bbf024208da9f16a167cadc
2024-09-09 12:28:14 +00:00
Alexander.Glukhov
e81a1d598a [gradle][IDEA-352898] execute the Gradle wrapper update execution as a batch operation
GitOrigin-RevId: 4e13814c98bd22ae01461d2d8ad57a4113234a3a
2024-09-09 12:19:37 +00:00
Alexander.Glukhov
68fd77f7ff [gradle][IDEA-352898] GradleVersionQuickFix was rewritten with coroutines
GitOrigin-RevId: 2489a18eda8cdc41b711307a321d8114e164862f
2024-09-09 12:19:37 +00:00
Alexander.Glukhov
8966a692b0 [gradle][IDEA-352898] minor refactoring in GradleVersionQuickFix
GitOrigin-RevId: 166f4b8973aea3e6ae3c2c57f51fb12973a8a826
2024-09-09 12:19:37 +00:00
Alexander.Glukhov
b4cd0a34a7 [gradle][cleanup][IDEA-352898] do not hardcode the Gradle distribution url
GitOrigin-RevId: 29610f15c3f9f255efbbf74b79a96982e7407d58
2024-09-09 12:19:37 +00:00
Alexander.Glukhov
9fd43d8890 [gradle][cleanup][IDEA-352898] minor cleanup in GradleWrapperUtil
GitOrigin-RevId: 663a40f674a18fb7c3c2d599db88c43a9bc3ec52
2024-09-09 12:19:37 +00:00
Egor Ushakov
4c4c5f167f [debugger] log suspend context on evaluation errors
GitOrigin-RevId: 08155a21ad876986379660bc388070a356cfaab3
2024-09-09 12:18:27 +00:00
Max Medvedev
5a1935d975 IJPL-161819 render purple bulb when inline prompt is shown or code is generated
GitOrigin-RevId: 194fa662b404176663ea14c06fb2b3c4173a627c
2024-09-09 12:16:21 +00:00
Max Medvedev
3198446095 [generate icon classes] report diagnostics when basic file is missing
GitOrigin-RevId: ac6cc74900346b9eb093c985308f9bc820beba04
2024-09-09 12:16:21 +00:00
Roman Shevchenko
2587292720 [project] follow-up to FileChooserDescriptor usages cleanup (IJ-CR-144236)
GitOrigin-RevId: 8ab0181554033d1d68fc681d2f66b32f0765261a
2024-09-09 12:11:51 +00:00
Roman Shevchenko
4269e27cb3 [platform] rewriting CopyTBXReferenceAction to use a URL object instead of string concatenation (IJPL-149928)
GitOrigin-RevId: 15a5a2c6e401228d51f083f3de656b3d392b740a
2024-09-09 12:11:51 +00:00
Vyacheslav Moklev
0afaa8ad4e [RDCT] GTW-9280: Fix run popup sub-actions by storing run config id in a template presentation
GitOrigin-RevId: a33c1aa34f769d15d65889064e59a1dbc7b3443d
2024-09-09 11:59:59 +00:00
Artem Bochkarev
6baca570a5 IJPL-161273 Force use software rendering on Wayland
GitOrigin-RevId: ad01255dd66423660ed9f5263d0baf4f7303ed80
2024-09-09 11:54:10 +00:00
Tagir Valeev
1cafc607ab Add @UnknownNullability annotation in some places
GitOrigin-RevId: b9ec7b62d90fecb95221f4e53b26c5355b49772a
2024-09-09 11:52:10 +00:00
Aleksey Pivovarov
4497a8c0b5 vcs: add debug logger for RefreshVFsSynchronously duration
GitOrigin-RevId: 9e645d20e11979a6b82865dd1d48834c207d814f
2024-09-09 11:38:35 +00:00
Aleksey Pivovarov
d165d4d16b vcs-log: do not report the same filter loading error multiple times
The error can happen if the log has a filter by root,
and this root is later deregistered in the project mappings.

The 'FilterModel.getFilter()' caches only non-null values.
If the filter cannot be parsed, the error is being reported multiple times.

GitOrigin-RevId: eff2dffa27e3eaf1dedf318446f403466e93f797
2024-09-09 11:38:35 +00:00
Egor Ushakov
77613d30b1 [kotlin debugger] moved DebuggerUtils.instanceOf usage into the base eval4j impl
GitOrigin-RevId: ba7947a0658f97332f34aa4fd9c9ac73e1ce2501
2024-09-09 11:38:10 +00:00
Mikhail Golubev
aef3b8de3c PY-59198 PY-54560 Support "alias" parameter of attr and dataclass_transform fields
GitOrigin-RevId: 6a81d2a45d808391413b5c0b52c79f7f6c51dcbb
2024-09-09 11:34:15 +00:00
Mikhail Golubev
53d8170407 PY-59198 Update attr package stubs in test data
GitOrigin-RevId: 1292ba4fb7f39a2980b30c80d16811060f11509c
2024-09-09 11:34:15 +00:00
Mikhail Golubev
1da22d34fd PY-54560 Support PEP-681 dataclass_transform
`dataclass_transform` support posed a number of challenges to the current
AST/PSI stubs separation in our architecture. For the standard "dataclasses"
module and the "attrs" package API, we could rely on well-known names
and defaults to recognize and preserve the information about decorator
arguments and field specifier arguments in PSI stubs. With `dataclass_transform`
however, effectively any decorator call or extending any base class can indicate
using a "magical" API that should generate dataclass-like entities.
At the moment of building PSI stubs we can't be sure, because we can't leave
the boundaries of the current file to resolve these names and determine if these
decorators and base classes are decorated themselves with `dataclass_transform`.

To support that, we instead rely on well-known keyword argument names documented
in the spec, e.g. "kw_only" or "frozen". In other words, whenever we encounter
any decorator call or a superclass list with such keyword arguments, we generate
a `PyDataclassStub` stub for the corresponding class.

The same thing is happening with class attribute initializers, i.e. whenever
we see a function call with argument such as "default" or "kw_only" in their
RHS, we generate a `PyDataclassFieldStub` for the corresponding target expression.
Both of these stub interfaces now can contain null values for the corresponding
properties if they were not specified directly in the class definition.

Finally, for the `dataclass_transform` decorator itself, a new custom decorator stub
was introduced -- `PyDataclassTransformDecoratorStub`, it preserves its keyword
arguments, such as "keyword_only_default" or "frozen_default" controlling
the default properties of generated dataclasses.

Later, when we need concluded information about specific dataclass properties,
e.g. in `PyDataclassTypeProvider` to generate a constructor signature, or in
`PyDataclassInspection`, we try to "resolve" this incomplete information from stubs
into finalized `PyDataclassParameters` and `PyDataclassFieldParameters` that
contain non-null versions of the same fields. The main entry points for that
are `resolveDataclassParameters` and `resolveDataclassFieldParameters`.
These methods additionally handle the situations where decorators, superclass
lists and field specifiers lack any keyword arguments, and thus, there were no
automatically created custom stubs for them.

All the existing usages of `PyDataclassStub` and `PyDataclassFieldStub`
were updated to operate on `PyDataclassParameters` and `PyDataclassFieldParameters`
instead.

Counterparts of the tests on various inspection checks for the standard dataclasses
definitions were added for dataclasses created with `dataclass_transform`, even
though the spec is unclear on some aspects the expected type checker semantics, e.g.
if combining "eq=False" and "order=True" or specifying both "default" and
"default_factory" for a field should be reported.
I tried to follow common sense when enabling existing checks for such arbitrary
user-defined dataclass APIs.

GitOrigin-RevId: 4180a1e32b5e4025fc4e3ed49bb8d67af0d60e66
2024-09-09 11:34:15 +00:00
Mikhail Golubev
a20dc6e783 PY-54560 Rename some DataclassInspection tests specific to attrs
GitOrigin-RevId: 14a65a75454507867df5212dd25425178975860d
2024-09-09 11:34:15 +00:00
Mikhail Golubev
132461b7de PyDecoratorImpl.toString() doesn't cause unstubbing
GitOrigin-RevId: a87b3874af518dcaf81384b25b85b76f618bdd1d
2024-09-09 11:34:15 +00:00
Mikhail Golubev
44e22f679c Fix ScopeUtilCore.getScopeOwner for immediate PyDecorator and PyNamedParameter elements
GitOrigin-RevId: 6013da7fbdf9e41ced1a32cae091d79014777a82
2024-09-09 11:34:15 +00:00
Mikhail Golubev
71b010feed Add missing nullability annotations in the PyCustomStub API
GitOrigin-RevId: 2dd1d144d675a2449b2ba3292bfd4fd312b68fea
2024-09-09 11:34:15 +00:00
Mikhail Golubev
f51f790d44 Remove recursive parameterization of PyCustomStub with PyCustomStubType
GitOrigin-RevId: 9377e09058c3a11213ecff3c737c51f0aa5cd127
2024-09-09 11:34:15 +00:00
Clément de La Bourdonnaye
832ebcacd5 [fleet] replace shared with withDefaultPart in places newShared was migrated automatically
This was raising `attempted to query hidden partition: 4, allowed parts: [0, 2, 1]` issues depending on implementation

Also update the inspection to avoid further erroneous migration

GitOrigin-RevId: 89aa306fddd8f7207766da426bce4515395a83aa
2024-09-09 11:21:01 +00:00
Nikolay Chashnikov
bebfd609d5 [guiForms jps] refactoring: extract tests from intellij.java.guiForms.jps to a separate module
'intellij.java.guiForms.jps' is added to dependencies of the build scripts modules (to allow compiling GUI forms in the build), and if tests are located in that module, test dependencies of 'intellij.java.guiForms.jps' are included in the classpath of all modules with tests for build scripts. Because of that, for example, 'intellij.idea.ultimate.build.test' had 'intellij.java.impl' in its classpath, so when a necessary dependency (on jaxb libraries) was removed from the build script modules, 'IdeaUltimateBuildTest' didn't find that because that dependency came to its classpath via 'intellij.java.impl' module, and we got a critical problem (see IDEA-358889).

Now tests of 'intellij.java.guiForms.jps' are extracted to a separate module, so their dependencies aren't included in tests for build scripts.

GitOrigin-RevId: be6e794c5a872e1bac05cdb78822616828205fcc
2024-09-09 10:59:54 +00:00
Maksim Zuev
5d0c98019d [debugger] IDEA-357188 Hotswap: log statistics
GitOrigin-RevId: 6d320a6c28cfb8b1bd1b7c50a498d4e873f2a556
2024-09-09 10:56:36 +00:00
Maksim Zuev
066944400e [debugger] Clean up DebugProcessEvents.java
GitOrigin-RevId: b37daf2f86ce97677505553bbb8fc2b0098f8d78
2024-09-09 10:56:35 +00:00
Vladimir Lagunov
4861567df5 IJPL-156775 IJent: workaround for problematic version of dash in shell bootstrap
GitOrigin-RevId: 2e69ff8997f56df74aabbe7313e159a3127085ff
2024-09-09 10:49:16 +00:00
Vladimir Lagunov
5e93ab9457 IJPL-161095 IJent: use type instead of which in shell bootstrap
`which` doesn't exist in some distribution like Arch Linux. `type` is a shell built-in, it exists anywhere and does the same job.

GitOrigin-RevId: 0706f53bf5cb1f3916656d50088d551b3b61f1bf
2024-09-09 10:49:16 +00:00
Vladimir Lagunov
b889c00ed4 IJPL-161095 IJent: message about absent busybox doesn't hide real error anymore
GitOrigin-RevId: c42bbf3457a3b604973bc735c1e203bcf48a4da7
2024-09-09 10:49:16 +00:00
vladislav.shishov
5aa5fc8953 [remote-driver] JTreeTextFixture : threading issue
GitOrigin-RevId: 556d6e3fca4685d21553131a795950e07a742564
2024-09-09 10:33:06 +00:00
Lev Serebryakov
e081e49d93 IJPL-149317 More locks.
GitOrigin-RevId: cf9e05fb67cc347cbca67f47ba327595640202c9
2024-09-09 10:28:40 +00:00
Lev Serebryakov
33d8231bf2 IJPL-149317 Report more reporting about implicit WIL on EDT.
GitOrigin-RevId: a79e81f2e622c2f116300760232a3602c9a39a5c
2024-09-09 10:28:40 +00:00