mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-03-22 15:19:59 +07:00
PY-83118 Forward Reference Causes Import to Be Incorrectly Removed in PyCharm 2025.2
(cherry picked from commit fcf27e5c97e12498bc1c630f43e0a0876faba408) IJ-CR-172300 GitOrigin-RevId: cd4e80d21dfaf85312c2ac9b1944f04307bb40d4
This commit is contained in:
committed by
intellij-monorepo-bot
parent
8730c8c8d6
commit
3549a74efc
@@ -91,6 +91,9 @@ class PyUnusedImportsInspection : PyInspection() {
|
||||
|
||||
override fun visitPyElement(node: PyElement) {
|
||||
super.visitPyElement(node)
|
||||
if (node is PsiLanguageInjectionHost) {
|
||||
processInjection(node)
|
||||
}
|
||||
if (node is PyReferenceOwner) {
|
||||
val resolveContext = PyResolveContext.defaultContext(myTypeEvalContext)
|
||||
processReference(node, node.getReference(resolveContext))
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from mymodule import SomeClass
|
||||
|
||||
def func(x: "SomeClass") -> None:
|
||||
...
|
||||
@@ -0,0 +1,2 @@
|
||||
class SomeClass:
|
||||
pass
|
||||
@@ -83,6 +83,11 @@ public class PyUnusedImportTest extends PyTestCase {
|
||||
doTest();
|
||||
}
|
||||
|
||||
// PY-83075
|
||||
public void testInjectedImportUsage() {
|
||||
doTest("injectedImportUsage.py");
|
||||
}
|
||||
|
||||
// PY-22620
|
||||
public void testTupleTypeCommentsUseImportsFromTyping() {
|
||||
doTest();
|
||||
|
||||
Reference in New Issue
Block a user