Morgan Bartholomew
9506123029
[python] PY-82265 edge cases for GTD
...
(cherry picked from commit 6de5053ef51534f6efe8a1ca4cf428b8d8c44cfa)
IJ-MR-166989
GitOrigin-RevId: 7dbc88b94b9a43270842380664f3e0b4daf67268
2025-07-03 07:38:55 +00:00
Morgan Bartholomew
0afb0e2732
[python] add some nullability annotations to resolve functions
...
(cherry picked from commit e2f9fb1a427aed1910a7aacac3de6d39b8ebb953)
IJ-MR-166989
GitOrigin-RevId: 0333f6c14a840c03dbacdceb24dd7b99052770c9
2025-07-03 07:38:55 +00:00
Andrey Vokin
c129ddc506
PY-81269 Extremely High RAM Usage
...
(cherry picked from commit bb534d62931c176d2395e2cceb0afabc57464669)
GitOrigin-RevId: 4a5b1398ca3fc3245d8e497fdd0522971e9fca51
2025-06-22 13:28:01 +00:00
Morgan Bartholomew
09659aec5b
[python] PY-81789 filter unhelpful declarations for GTD
...
(cherry picked from commit 0fba00400382b32bbdbb1d6112126b4097895f2f)
IJ-MR-165350
GitOrigin-RevId: af95c00431a09faf9a08bb3c8a7f88b8d3376dee
2025-06-20 17:43:40 +00:00
Aleksandr.Govenko
9233c8d4d1
PY-81030 Stuck when editing code, high CPU usage
...
GitOrigin-RevId: 430e99336d40637f79adf3b282103d2c9caa5673
2025-06-20 11:54:07 +00:00
Morgan Bartholomew
ae25160ddd
[python] PY-81658 don't suggest deprecated stubs
...
(cherry picked from commit 6661c5fb157eff8e78b38a78f3039e452484cb92)
IJ-MR-164936
GitOrigin-RevId: 2b12e7a881d721ffa936f202cd026109401726c8
2025-06-10 17:31:38 +00:00
Aleksandr.Govenko
17e7b70936
PY-80044 ArrayIndexOutOfBoundsException from PyDataFlow under specific conditions
...
Merge-request: IJ-MR-158616
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit 4bb51242c2b5545ea4ce499664734903a70b900e)
IJ-MR-158616
GitOrigin-RevId: 1c70ed011292ccd7581491e415bd3c25ff04d217
2025-06-10 11:18:55 +00:00
Morgan Bartholomew
0d5e6eba2f
[python] PY-75556 support Literal types in kwargs
...
(cherry picked from commit 3f337bde1e7828f8497b4a91830aa019217f2d26)
IJ-MR-164945
GitOrigin-RevId: f40d54b555e646659ebf43093d076ce46e51286d
2025-06-06 03:38:31 +00:00
Morgan Bartholomew
b28a95c4f2
[python] PY-80931/PY-53288 use multi resolve for go to definition
...
(cherry picked from commit f24e72030f04a59f27cb9189b20716beb92a81d0)
IJ-MR-164825
GitOrigin-RevId: fb5d2b7a715f5f681a37cd6b39bfca60d4e9da66
2025-06-05 18:35:29 +00:00
Morgan Bartholomew
3ab2fe8f30
[python] convert PyGotoDeclarationHandler to kotlin
...
(cherry picked from commit 788544b6325331499e0001d85a8a7ac09450d4d9)
IJ-MR-164825
GitOrigin-RevId: 8385e6ad5f8cc3d4ab29f83dbbc901d7240b5012
2025-06-05 18:35:29 +00:00
Morgan Bartholomew
5880c2dc21
[python] Rename PyGotoDeclarationHandler .java to .kt
...
(cherry picked from commit b96671ad920134af0681fdfcce100eaf5bd41509)
IJ-MR-164825
GitOrigin-RevId: 08da2545129e8d452faf88a0c03e485485e1e508
2025-06-05 18:35:29 +00:00
Morgan Bartholomew
bcbdea3af7
[python] PY-76845 NamedTuple compatible with tuple
...
(cherry picked from commit 7f317902f2df8f5cb099924b42b2b08aaaa724fd)
IJ-MR-164103
GitOrigin-RevId: 91cecc5360756f222d62f9555cae6370281b8e6f
2025-06-03 11:25:30 +00:00
Petr
613ca4396b
PY-79330 Assertion fix
...
GitOrigin-RevId: 57599c47328eb97136b44e75c4e3341780e6ba50
2025-06-01 12:07:43 +00:00
Petr
d480fe10a4
PY-79330 auto() enum value revealed as auto, not int
...
(cherry picked from commit da6ceff05411f63d49933fb53ad9ccf4cdb5bc37)
GitOrigin-RevId: 4d86253fc663f1db85ae3afface3d9e16de2101b
2025-05-28 19:28:40 +00:00
Petr
0ff784051a
PY-80565 False warning auto not assignable to StrEnum
...
(cherry picked from commit 6e9bf2dad1ca9d421d433def0d1c323a1fd3b301)
GitOrigin-RevId: d01ee3e16a8622ce0aa788b246bad7ff102f42de
2025-05-28 19:28:39 +00:00
Morgan Bartholomew
9783c1022d
[python] PY-80775 don't error on every param spec
...
(cherry picked from commit ef1926878a81d524ef848f3d4b987abd0c062047)
IJ-MR-161660
GitOrigin-RevId: 757c6e95a30ff8a2bc6d6533e1098561f89409b3
2025-05-23 09:44:42 +00:00
Morgan Bartholomew
a96d82325e
[pycharm] PY-80704 substitute param specs when collecting generics
...
(cherry picked from commit 06a0a758b1cebb9b05f0dcfa4dc860289283b131)
IJ-MR-161505
GitOrigin-RevId: 01bdea5c3b1cbee8c1fb38bf0bd1a366ed3623a9
2025-05-22 18:33:56 +00:00
Morgan Bartholomew
11af2c6f64
[python] PY-77223 suggest more stubs
...
(cherry picked from commit 0e8ecef2c2b5d2c9f37504cdd7591e73344041fa)
IJ-MR-163423
GitOrigin-RevId: 40f4c2b8bbaa3d1c81b32f2464efd639e2a90c78
2025-05-22 17:58:05 +00:00
Aleksandr.Govenko
7e7f8e464a
PY-80421 PY-80471 PY-80824 PY-80550 false "unused variable" with for nested in if/else
...
PY-80564 Fp "Local variable might be referenced before assignment" when returning a comprehension in `try/except`
PY-80733 Fp "Local variable might be referenced before assignment" for `try/except` with a `break` inside a loop
Merge-request: IJ-MR-162320
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit f3e5d76e1fb15e2951d395fa27768269e4d0cb8f)
IJ-MR-162320
GitOrigin-RevId: 76322f34176e25dd5cf4bc7fd329a9bbc8c7abd5
2025-05-16 17:01:43 +00:00
Aleksandr.Govenko
b571f8a1a3
PY-46592 Use of function parameter marked as possibly used before assignment
...
Create DELETE instructions only for unqualified names, as it seems we don't need other ones at the moment.
Merge-request: IJ-MR-159047
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit e0d9c636c20facf587cb96d8117e6f5f804b847a)
IJ-MR-159047
GitOrigin-RevId: df8a820d13d2cffba0b24db975b30dfce809a678
2025-05-16 14:06:26 +00:00
Aleksandr.Govenko
0e075b98cb
PY-79770 False positive "This code is unreachable" when the match has a wildcard case
...
(cherry picked from commit 4141b775b0b5a410c8ce1cf0366c6d14ab4a6dbf)
IJ-MR-157338
GitOrigin-RevId: 0c429835cb5a1ec9e836625bfbcca7c48b9e1160
2025-05-15 19:48:04 +00:00
Aleksandr.Govenko
5eac7df043
PY-79716 Incorrect type for a pattern variable shadowing the match subject
...
(cherry picked from commit 3d39751180b847dffd64e40e9e1cdbf2a38ab5e0)
IJ-MR-157338
GitOrigin-RevId: 18cc6b3f3186692f5c3e1dc2c542279551686a0e
2025-05-15 19:48:04 +00:00
Aleksandr.Govenko
9263d8e6f2
PY-79910 Variable incorrectly marked as unused or redeclared without usage in nested try/if blocks
...
When there is no `finally` in try-except statement, use transparent exit instruction to tie all normal exits from try-, else- and except- parts to the next instruction
Merge-request: IJ-MR-158265
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit 734581b732a1a558b72811fdda977c470d045cc9)
IJ-MR-158265
GitOrigin-RevId: d3ca0e258fcbd71f014245f05e954c95a3c2a0ca
2025-05-14 17:50:23 +00:00
Aleksandr.Govenko
d8f57b77c6
PY-80524 Explicit return statement expected false positive for an if inside try / except
...
(cherry picked from commit 6877fc7b34622d7ae884233af96e06ea92c918c1)
IJ-MR-161824
GitOrigin-RevId: 8c3219ea8bb8f547f7c314af8cb0d432c042cd7c
2025-05-11 22:28:24 +00:00
Aleksandr.Govenko
a8934362ff
Rename .java to .kt
...
PY-80524
(cherry picked from commit 4693b9762d778b7816bab73a3e24a9b934954559)
IJ-MR-161824
GitOrigin-RevId: 94e27715d8d6b3beb4d126112e5bf030ffc16f6b
2025-05-11 22:28:24 +00:00
Aleksandr.Govenko
7413b91db8
Rename .java to .kt
...
PY-80524
(cherry picked from commit b9e0ea17589e9124d4004fa147fab345c77f6f15)
IJ-MR-161824
GitOrigin-RevId: eff1243abd48f5e0785b6ecb97d88ec94652b26f
2025-05-11 22:28:23 +00:00
Mikhail Golubev
004fee8632
PY-80844 Disable the intention for converting f-strings into t-strings in Python < 3.14
...
(cherry picked from commit 97162fca82d36958d61641c56315295329018304)
GitOrigin-RevId: bd8a473ec0c175b8c5fdb49feec919c944777e81
2025-05-09 11:12:01 +00:00
Mikhail Golubev
f13659e3d5
PY-80850 Add support for Template strings as arguments of positional and keyword varargs
...
(cherry picked from commit a51c198623553ee9f0975c2b3bf7af0c86c88b7a)
GitOrigin-RevId: 72fbe0ba4137e2f02236979bbd84440ca7616c6a
2025-05-09 11:12:01 +00:00
Mikhail Golubev
388e48d5ad
PY-80850 Insert "t" prefix on completion after "{" in regular strings where Templates are expected
...
(cherry picked from commit 6cc25474c2392b6b5de9958e58bb87db86854c5f)
GitOrigin-RevId: 74d7db586a75a3614481c29873a0a86b33416cc2
2025-05-09 11:12:01 +00:00
Mikhail Golubev
1cc8316591
PY-80844 Add a new intention for converting between f-strings and t-strings
...
(cherry picked from commit be3ab4d72de05a92c986af31ac8e40309d9754b1)
GitOrigin-RevId: fba9757978f5f669aa63e2657a3fcbd2923bec74
2025-05-09 11:12:01 +00:00
Daniil Kalinin
989485f44a
PY-79967 Simplify Template type inference for t-strings
...
(cherry picked from commit 2964402eac2061e0230e612badc790d0d289f469)
GitOrigin-RevId: 74b859ff596970d08c5fd82f9a2a6112468804e1
2025-05-09 11:12:00 +00:00
Daniil Kalinin
328d4cc4e1
PY-79967 Introduce a separate method in PyStringLiteralUtil for t-strings
...
(cherry picked from commit 47b1a84c4331aa127a17e4f934c4b1dc28396cf0)
GitOrigin-RevId: 204f5ba41aa022b672e2d71db83b5bd3327770d4
2025-05-09 11:12:00 +00:00
Koudai Aono
5b8c2abc96
PY-79967 Support t-prefixed strings, Related PR: https://github.com/JetBrains/intellij-community/pull/302
...
* Add PYTHON314_PREFIXES to CompatibilityVisitor
* Patch typeshed, add t-string related stubs
* Infer `string.templatelib.Template` type for t-strings instead of plain `str`
(cherry picked from commit 0e913910ab9e0dca4052856b0585ce66265291c0)
GitOrigin-RevId: f03a68ae9aee458a74eccc19c38d8d3e4dc7491a
2025-05-09 11:11:59 +00:00
Mikhail Golubev
e8ad5a580a
[pycharm] PY-38169 In quick documentation display .py sources as the origin for .pyi declarations
...
In particular point that `collection.abc` symbols are defined in _collections_abc.py.
IJ-MR-159943
(cherry picked from commit be9b7c9c72ae668cd59f5981a025bc6de8a8ca90)
IJ-MR-161809
GitOrigin-RevId: 779e3c4e9a2216c366b9ade2817739918420c0f7
2025-05-01 14:58:06 +00:00
Mikhail Golubev
12609db31a
[pycharm] PY-80432 Fix navigation on collections.abc in imports from Typeshed to _collections_abc.py
...
IJ-MR-159943
(cherry picked from commit cc83e34de632c134a81c2d285b3c445ad76d2331)
IJ-MR-161809
GitOrigin-RevId: 66dca55d173d38d0a54df0c51220d0aa6bb5456d
2025-05-01 14:58:06 +00:00
Morgan Bartholomew
11f54723c8
[pycharm] PY-38169 special case definition location for standard collections that are wrong in typeshed
...
IJ-MR-159943
(cherry picked from commit c580a6408408965d909680ddba9b5b062d1c4782)
IJ-MR-161809
GitOrigin-RevId: 819e8f906003c02b80072b7c00c8f9e27e83dad2
2025-05-01 14:58:06 +00:00
Morgan Bartholomew
fa4b4eec34
[pycharm] PY-41827 check for union types in PySimplifyBooleanCheckInspection
...
to avoid ambiguous conditions
(cherry picked from commit f11c08f8dfea453a6676173bae57f96233429970)
IJ-MR-159379
GitOrigin-RevId: b700b1e5e7c077da7b61661d33c2a3aa135d9e21
2025-05-01 02:46:56 +00:00
Aleksandr.Govenko
572d9bc312
PY-78593 NPE: [PyControlFlowBuilder.visitCondition]
...
Merge-request: IJ-MR-158982
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit 57f9a497e788f274ba20ccc95ddc07cb88f9c744)
IJ-MR-158982
GitOrigin-RevId: 2abea522a3ca869f49a7f22d73f13194992ad4f1
2025-04-24 20:42:05 +00:00
Aleksandr.Govenko
5bf9f9ff39
PY-80493 Inconsistent return inspection adding "return None" after every line in context manager
...
Merge-request: IJ-MR-160763
Merged-by: Aleksandr Govenko <aleksandr.govenko@jetbrains.com >
(cherry picked from commit b576e30d433d39e426c8854d3ad485594ac9e958)
IJ-MR-160763
GitOrigin-RevId: cf6a3a4c834ee1df160e1927af1b75eb16eec3dc
2025-04-24 02:27:25 +00:00
Petr
91f3589711
PY-76885 Conformance test failure: constructors_call_metaclass.py
...
Replace the verbatim comment with a link to the spec.
(cherry picked from commit 2c5012babed584cab4f5d9f0bb68e960a76e6bc4)
GitOrigin-RevId: 24f9c9df13b76bec1837922f05f47dd86eda0541
2025-04-23 23:27:31 +00:00
Petr
36e436bd70
PY-76885 Conformance test failure: constructors_call_metaclass.py
...
Assignability of metaclass's `__call__` return type to a type being constructed should be used instead of class equivalence.
(cherry picked from commit 94ae5d5870ca7deedc42f381456d13cb08d97ffc)
GitOrigin-RevId: d9e49b5813bafebf7ae3349d6c3232eaeaf5d925
2025-04-23 23:27:31 +00:00
Petr
9b70a7cf4a
PY-76885 Conformance test failure: constructors_call_metaclass.py
...
(cherry picked from commit d4ae8eb0303ec141c9766599ede8be1d3bb538fb)
GitOrigin-RevId: 90a67c7cc6266752ab8cdfa3379e95123c3959f9
2025-04-23 23:27:31 +00:00
Petr
c52f4bbadf
PY-80195 Literals of Enums broken after import (2025.1 EAP)
...
Consider enum attribute of an unknown type an enum member.
(cherry picked from commit 72c2fd37f18e4dde65d735f1032495df5aeda791)
GitOrigin-RevId: 7e56afe6a2d2efe0ea84ac20672aaf7712d8ed23
2025-04-23 23:27:31 +00:00
Petr
ed52e34951
[python] Inline oneliner method (PyAbstractClassInspection)
...
(cherry picked from commit 67821b8b8d8f643b5d93282fe9f6aebda33d3e28)
GitOrigin-RevId: eba0dfcb785d874aca1909e20cd6200245ead057
2025-04-23 23:27:31 +00:00
Petr
e1b380f8b9
PY-12132 Support ABC classes (pep-3119)
...
Report error for abstract method in non-abstract class.
(cherry picked from commit 824d45a310b95ada628d6e607ae1ced6e351d849)
GitOrigin-RevId: 446cfea2ab76611d13648c17d6f7419fdefa0954
2025-04-23 23:27:31 +00:00
Petr
42dd3f39bf
PY-12132 Support ABC classes (pep-3119)
...
A class containing at least one method declared with `abstractmethod` decorator that hasn’t been overridden yet cannot be instantiated.
Also report instantiation of classes that directly inherit ABC or have metaclass set to ABCMeta.
(cherry picked from commit 55cb4dc90c55ddc63991a4c3f6b50b4e34a3b4bd)
GitOrigin-RevId: b37ea24490dc5ce7dcce87adf21aa6fe31e0e9dc
2025-04-23 23:27:31 +00:00
Petr
f09b6239ad
PY-76824 Conformance test failure: directives_no_type_check.py
...
(cherry picked from commit d823c6dbc51959ec1d534814972b3323be8361cb)
GitOrigin-RevId: 2672df0698539b78d261e8667920072d2f921af7
2025-04-23 23:27:31 +00:00
Petr
b1b6fe88d3
PY-80169 Conformance test failure: exceptions_context_managers.py
...
(cherry picked from commit 9d0714edc4507cb90feb56f2ec72466b1b454c79)
GitOrigin-RevId: af485a6386b0c11fe348cbdfaa8b3767bf112cf5
2025-04-23 23:27:31 +00:00
Petr
8b35c2619c
PY-80169 Conformance test failure: exceptions_context_managers.py
...
(cherry picked from commit 7d43529ffe01edc695ed2e3682ab38960df45961)
GitOrigin-RevId: 94259cd855bf74a032b764de478483a90fba2578
2025-04-23 23:27:31 +00:00
evgeny.bovykin
5cdec66645
PY-78250 Call PyDataclassTypeProvider before PyTypingTypeProvider so that it has a chance to infer the dataclass type first
...
(cherry picked from commit 18230af949275e3f585ce806fec25144731e347b)
IJ-MR-158112
GitOrigin-RevId: 50ed312ca85b506cd1a8e8411b80548f81b56487
2025-04-23 12:07:33 +00:00