Docstring rendering is no longer supported for Python 2, which became obsolete after reaching its end of life in 2020. Without updates or security patches, most tools, including documentation generators like Epydoc, have shifted focus exclusively to Python 3.
(cherry picked from commit ace78ac9ad943278449d5b20bb92db9f7571b5b5)
IJ-CR-148150
GitOrigin-RevId: 75cc87e05c61c3c17c26689552080e3c3082bfdc
`isValidSdkHome` works for local paths only.
We must use `sdkSeemsValid` instead: it is aware of remote interpreters and usually ignores them if can't validate
(cherry picked from commit 31b42e14518f5a8f7a69ba35e50353f4f4894f42)
IJ-CR-149658
GitOrigin-RevId: b30a6bb5d8a6b9986b0690eabbd0d39da6310f01
- details part panel should be converted to vertical grid BeControl for CWM.
In order to achieve that, it should contain a visible north component.
(cherry picked from commit 874fd26acf7cfc0925bcbdba6888eb1b5f5d50b3)
IJ-CR-148561
GitOrigin-RevId: 91f3ddd9b11e1aa89791f171f19217587551a7d7
It is the dictionary-based approach that should reduce the chance of false-positive NL detection.
IJ-CR-148020
(cherry picked from commit 3def7d77f69efcbd9e7e5668d04837672d8a77a1)
GitOrigin-RevId: 88f79788b91f949dbab068f6d267a69611c6f648
It is needed to integrate AI features implicitly.
IJ-CR-148020
(cherry picked from commit 0a66057c324509fd7bf9013c7e0b025f6243649d)
GitOrigin-RevId: 4d3265284cd045bfc78ce52f3265b04b9d34b5f4
To allow outer panels to override editor copy/cut/paste/delete providers via rules.
For LLM-12619.
(cherry picked from commit 33a4233949332ba14aea2eb34c37882894798368)
IJ-CR-148949
GitOrigin-RevId: 32aee37f03f901139765ddbc03de4f3154bbc943
In PyCharm we need to make it larger, so we extract it to the registry
(cherry picked from commit 9cba69d6efdb40a69ed01c0c1412737bb83709ee)
IJ-CR-150247
GitOrigin-RevId: 15e541e9c8e37143c0e31be38ad819cd67172918
The cause: setting extendedState to maximized
has the same effect as option-clicking the green button.
Which, on Sequoia, actually un-maximizes the window
if it's already maximized. Whether it's maximized or not
is determined by its size alone. If there's no "normal"
size to restore, then macOS just makes up one,
slightly less than the screen size.
This leads to a bug when the saved size happens to be
the same as the maximum one, which happens quite often.
Then the size is restored, and when extendedState is set,
it makes the frame smaller than it should be.
The fix: if the saved state is maximized, do not restore
the saved size, but instead restore some size that's
smaller than the current screen. For this we introduce
an extra parameter to setDefaultSize(), so we can
specify the exact screen (determined by the saved location).
This way setting extendedState works as expected,
maximizing the frame.
To prevent setExtendedState() from saving this fake
size as the "normal" one, swap restoring the state
and restoring the normal bounds in create():
now we restore the state first, and then apply
the normal bounds, overwriting whatever setExtendedState()
could have saved there.
(cherry picked from commit 4f190f6ce5b9d7c5dc52f11abbee4fde53a135b4)
IJ-CR-149074
GitOrigin-RevId: d184fb0dff15f7b3f10e94fbddd476a4d3e03cfe
Also, don't query LanguageLevel for each element of each instruction,
only once per scope traversal.
This doesn't fix the problem with unreachable definition *inside* blocks under
unmatched version checks, i.e.
if sys.version_info < (3, 8):
Alias = int
expr: Alias # unresolved
but it's a more difficult problem how to handle those consistently with the idea
of unreachable version checks under the *current* interpreter version, and hopefully
it occurs rarer than, say, unresolved top-level imports of common names from typing.
(cherry picked from commit 55fd4597c6d0860d290caba15fbf4d313e985a86)
IJ-CR-149696
GitOrigin-RevId: 357ada7e10618aef75c470e6cd878f7672109e83
Because async generator methods in ABC and protocols are supposed to be declared as
plain "def" methods so as not to confuse type checkers with their AsyncIterable
return type annotations, it's better to disable such type-hint re-use if methods
async-ness don't match and not wrap anything in typing.Coroutine implicitly.
See also https://mypy.readthedocs.io/en/stable/more_types.html#asynchronous-iterators
(cherry picked from commit 6342f15a7786ec0d02ee1ab2b18fd40fd1ca1430)
IJ-CR-149694
GitOrigin-RevId: 3e19f190d9334e6c8648462ebb5b61abe931b0e6
- `FileSizeLimit.getDefaultContentLoadLimit()` should be used in VCS instead of `PersistentFSConstants.MAX_FILE_LENGTH_TO_CACHE`
(cherry picked from commit 53ed1545fdf4437cbee5a9b2b0116e65d65d0ad0)
(cherry picked from commit 2dc43bf985655785267d2e98876511cac1e0ec4f)
IJ-CR-150186
GitOrigin-RevId: de307ec46d2ade1a3c229273c2e0518aabd23bb9
`FileUtilRt.LARGE_FOR_CONTENT_LOADING` was used in 2 roles: as just 'big file, load with caution', and also 'do not cache file content in VFS' -- but those roles are quite different really, and should not be mixed =>
- `PersistentFSConstants.MAX_FILE_LENGTH_TO_CACHE` is now the limit for VFS caching: default value 1Mb, `-Didea.vfs.max-file-length-to-cache=...` to override
- `FileUtilRt.LARGE_FOR_CONTENT_LOADING` is still used for everything else
(cherry picked from commit f7642bf36cba9984f5a6438c88fcecbe769335a8)
(cherry picked from commit 77ef2bc348054154fba9b612f75bcc41ac880f64)
IJ-CR-150186
GitOrigin-RevId: e8a95f377142a793f171d5ba055ab54dc9bc3d6c