Forráskód Böngészése

Consolidate Buffer type definition into _typing module

Jelmer Vernooij 2 hónapja
szülő
commit
c5a0e2e08b
7 módosított fájl, 16 hozzáadás és 27 törlés
  1. 10 0
      dulwich/_typing.py
  2. 1 5
      dulwich/cli.py
  3. 1 6
      dulwich/diff.py
  4. 1 4
      dulwich/file.py
  5. 0 5
      dulwich/pack.py
  6. 3 2
      dulwich/porcelain.py
  7. 0 5
      dulwich/server.py

+ 10 - 0
dulwich/_typing.py

@@ -0,0 +1,10 @@
+"""Common type definitions for Dulwich."""
+
+import sys
+
+if sys.version_info >= (3, 12):
+    from collections.abc import Buffer
+else:
+    Buffer = bytes | bytearray | memoryview
+
+__all__ = ["Buffer"]

+ 1 - 5
dulwich/cli.py

@@ -51,12 +51,8 @@ from typing import (
     TextIO,
 )
 
-if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
-else:
-    Buffer = bytes | bytearray | memoryview
-
 from dulwich import porcelain
+from dulwich._typing import Buffer
 
 from .bundle import Bundle, create_bundle_from_repo, read_bundle, write_bundle
 from .client import get_transport_and_path

+ 1 - 6
dulwich/diff.py

@@ -48,15 +48,10 @@ import io
 import logging
 import os
 import stat
-import sys
 from collections.abc import Iterable, Sequence
 from typing import BinaryIO
 
-if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
-else:
-    Buffer = bytes | bytearray | memoryview
-
+from ._typing import Buffer
 from .index import ConflictedIndexEntry, commit_index
 from .object_store import iter_tree_contents
 from .objects import S_ISGITLINK, Blob, Commit

+ 1 - 4
dulwich/file.py

@@ -28,10 +28,7 @@ from collections.abc import Iterable, Iterator
 from types import TracebackType
 from typing import IO, Any, ClassVar, Literal, overload
 
-if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
-else:
-    Buffer = bytes | bytearray | memoryview
+from ._typing import Buffer
 
 
 def ensure_dir_exists(

+ 0 - 5
dulwich/pack.py

@@ -73,11 +73,6 @@ except ImportError:
 else:
     has_mmap = True
 
-if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
-else:
-    Buffer = bytes | bytearray | memoryview
-
 if TYPE_CHECKING:
     from _hashlib import HASH as HashObject
 

+ 3 - 2
dulwich/porcelain.py

@@ -114,10 +114,11 @@ from typing import (
 )
 
 if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
     from typing import override
 else:
-    from typing_extensions import Buffer, override
+    from typing_extensions import override
+
+from ._typing import Buffer
 
 if TYPE_CHECKING:
     import urllib3

+ 0 - 5
dulwich/server.py

@@ -56,11 +56,6 @@ from functools import partial
 from typing import IO, TYPE_CHECKING, Optional
 from typing import Protocol as TypingProtocol
 
-if sys.version_info >= (3, 12):
-    from collections.abc import Buffer
-else:
-    Buffer = bytes | bytearray | memoryview
-
 if TYPE_CHECKING:
     from .object_store import BaseObjectStore
     from .repo import BaseRepo