mercurial/encoding.py
changeset 51302 9d3721552b6c
parent 51000 80c243eab724
child 51304 f15cb5111a1e
--- a/mercurial/encoding.py	Wed Nov 08 01:58:16 2023 +0100
+++ b/mercurial/encoding.py	Wed Dec 20 12:51:20 2023 +0100
@@ -9,8 +9,19 @@
 import locale
 import os
 import re
+import typing
 import unicodedata
 
+from typing import (
+    Any,
+    Callable,
+    List,
+    Text,
+    Type,
+    TypeVar,
+    Union,
+)
+
 from . import (
     error,
     policy,
@@ -19,22 +30,11 @@
 
 from .pure import charencode as charencodepure
 
-if pycompat.TYPE_CHECKING:
-    from typing import (
-        Any,
-        Callable,
-        List,
-        Text,
-        Type,
-        TypeVar,
-        Union,
-    )
+# keep pyflakes happy
+for t in (Any, Callable, List, Text, Type, Union):
+    assert t
 
-    # keep pyflakes happy
-    for t in (Any, Callable, List, Text, Type, Union):
-        assert t
-
-    _Tlocalstr = TypeVar('_Tlocalstr', bound='localstr')
+_Tlocalstr = TypeVar('_Tlocalstr', bound='localstr')
 
 charencode = policy.importmod('charencode')
 
@@ -131,7 +131,7 @@
         s._utf8 = u
         return s
 
-    if pycompat.TYPE_CHECKING:
+    if typing.TYPE_CHECKING:
         # pseudo implementation to help pytype see localstr() constructor
         def __init__(self, u, l):
             # type: (bytes, bytes) -> None