]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
chore: bump black to 24.1.0
authorDaniele Varrazzo <daniele.varrazzo@gmail.com>
Fri, 26 Jan 2024 12:18:58 +0000 (12:18 +0000)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Fri, 26 Jan 2024 12:18:58 +0000 (12:18 +0000)
27 files changed:
.flake8
psycopg/.flake8
psycopg/psycopg/_struct.py
psycopg/psycopg/_typeinfo.py
psycopg/psycopg/abc.py
psycopg/psycopg/adapt.py
psycopg/psycopg/connection.py
psycopg/psycopg/connection_async.py
psycopg/psycopg/copy.py
psycopg/psycopg/crdb/connection.py
psycopg/psycopg/cursor.py
psycopg/psycopg/cursor_async.py
psycopg/psycopg/pq/abc.py
psycopg/psycopg/rows.py
psycopg/psycopg/server_cursor.py
psycopg/psycopg/types/enum.py
psycopg/psycopg/types/multirange.py
psycopg/setup.py
psycopg_c/.flake8
psycopg_pool/.flake8
psycopg_pool/psycopg_pool/pool.py
psycopg_pool/psycopg_pool/pool_async.py
tests/constraints.txt
tests/scripts/dectest.py
tests/scripts/pipeline-demo.py
tests/test_connection_async.py
tests/types/test_numeric.py

diff --git a/.flake8 b/.flake8
index ec4053fb2be8d6fa8f90aeb773b09aab0c3e2579..d2473a1ae417a99c6d018cb6508ddabf37c63317 100644 (file)
--- a/.flake8
+++ b/.flake8
@@ -1,6 +1,6 @@
 [flake8]
 max-line-length = 88
-ignore = W503, E203
+ignore = W503, E203, E704
 extend-exclude = .venv build
 per-file-ignores =
     # Autogenerated section
index 67fb0245c38715e659df23790d909f6f59dce3d1..33b08d768ceb0002ba839d2c779d8f3c2320287d 100644 (file)
@@ -1,6 +1,6 @@
 [flake8]
 max-line-length = 88
-ignore = W503, E203
+ignore = W503, E203, E704
 per-file-ignores =
     # Autogenerated section
     psycopg/errors.py: E125, E128, E302
index 28a6084475ac0919e8f21506404b9c0e552a7c90..57d1e3effb0508d6512fddf683adb3e7993695d0 100644 (file)
@@ -19,8 +19,7 @@ UnpackFloat: TypeAlias = Callable[[Buffer], Tuple[float]]
 
 
 class UnpackLen(Protocol):
-    def __call__(self, data: Buffer, start: Optional[int]) -> Tuple[int]:
-        ...
+    def __call__(self, data: Buffer, start: Optional[int]) -> Tuple[int]: ...
 
 
 pack_int2 = cast(PackInt, struct.Struct("!h").pack)
index 08c5e650c5392e5f8b3ef803645fe2f65a10e162..ab6f1f1a6660d72a1d992c3c5cdb6031ff84ffd3 100644 (file)
@@ -57,15 +57,13 @@ class TypeInfo:
     @classmethod
     def fetch(
         cls: Type[T], conn: "Connection[Any]", name: Union[str, "Identifier"]
-    ) -> Optional[T]:
-        ...
+    ) -> Optional[T]: ...
 
     @overload
     @classmethod
     async def fetch(
         cls: Type[T], conn: "AsyncConnection[Any]", name: Union[str, "Identifier"]
-    ) -> Optional[T]:
-        ...
+    ) -> Optional[T]: ...
 
     @classmethod
     def fetch(
@@ -414,12 +412,10 @@ class TypesRegistry:
                 yield t
 
     @overload
-    def __getitem__(self, key: Union[str, int]) -> TypeInfo:
-        ...
+    def __getitem__(self, key: Union[str, int]) -> TypeInfo: ...
 
     @overload
-    def __getitem__(self, key: Tuple[Type[T], int]) -> T:
-        ...
+    def __getitem__(self, key: Tuple[Type[T], int]) -> T: ...
 
     def __getitem__(self, key: RegistryKey) -> TypeInfo:
         """
@@ -440,12 +436,10 @@ class TypesRegistry:
             raise KeyError(f"couldn't find the type {key!r} in the types registry")
 
     @overload
-    def get(self, key: Union[str, int]) -> Optional[TypeInfo]:
-        ...
+    def get(self, key: Union[str, int]) -> Optional[TypeInfo]: ...
 
     @overload
-    def get(self, key: Tuple[Type[T], int]) -> Optional[T]:
-        ...
+    def get(self, key: Tuple[Type[T], int]) -> Optional[T]: ...
 
     def get(self, key: RegistryKey) -> Optional[TypeInfo]:
         """
index 0cf1a7511c8877fba777b83bfb8e1bd255390336..22979906b5cf7b601956c7e44fbf978f38026445 100644 (file)
@@ -54,8 +54,7 @@ class WaitFunc(Protocol):
 
     def __call__(
         self, gen: PQGen[RV], fileno: int, timeout: Optional[float] = None
-    ) -> RV:
-        ...
+    ) -> RV: ...
 
 
 # Adaptation types
@@ -106,8 +105,7 @@ class Dumper(Protocol):
     oid: int
     """The oid to pass to the server, if known; 0 otherwise (class attribute)."""
 
-    def __init__(self, cls: type, context: Optional[AdaptContext] = None):
-        ...
+    def __init__(self, cls: type, context: Optional[AdaptContext] = None): ...
 
     def dump(self, obj: Any) -> Buffer:
         """Convert the object `!obj` to PostgreSQL representation.
@@ -187,8 +185,7 @@ class Loader(Protocol):
     This is a class attribute.
     """
 
-    def __init__(self, oid: int, context: Optional[AdaptContext] = None):
-        ...
+    def __init__(self, oid: int, context: Optional[AdaptContext] = None): ...
 
     def load(self, data: Buffer) -> Any:
         """
@@ -203,28 +200,22 @@ class Transformer(Protocol):
     types: Optional[Tuple[int, ...]]
     formats: Optional[List[pq.Format]]
 
-    def __init__(self, context: Optional[AdaptContext] = None):
-        ...
+    def __init__(self, context: Optional[AdaptContext] = None): ...
 
     @classmethod
-    def from_context(cls, context: Optional[AdaptContext]) -> "Transformer":
-        ...
+    def from_context(cls, context: Optional[AdaptContext]) -> "Transformer": ...
 
     @property
-    def connection(self) -> Optional["BaseConnection[Any]"]:
-        ...
+    def connection(self) -> Optional["BaseConnection[Any]"]: ...
 
     @property
-    def encoding(self) -> str:
-        ...
+    def encoding(self) -> str: ...
 
     @property
-    def adapters(self) -> "AdaptersMap":
-        ...
+    def adapters(self) -> "AdaptersMap": ...
 
     @property
-    def pgresult(self) -> Optional["PGresult"]:
-        ...
+    def pgresult(self) -> Optional["PGresult"]: ...
 
     def set_pgresult(
         self,
@@ -232,34 +223,26 @@ class Transformer(Protocol):
         *,
         set_loaders: bool = True,
         format: Optional[pq.Format] = None
-    ) -> None:
-        ...
+    ) -> None: ...
 
-    def set_dumper_types(self, types: Sequence[int], format: pq.Format) -> None:
-        ...
+    def set_dumper_types(self, types: Sequence[int], format: pq.Format) -> None: ...
 
-    def set_loader_types(self, types: Sequence[int], format: pq.Format) -> None:
-        ...
+    def set_loader_types(self, types: Sequence[int], format: pq.Format) -> None: ...
 
     def dump_sequence(
         self, params: Sequence[Any], formats: Sequence[PyFormat]
-    ) -> Sequence[Optional[Buffer]]:
-        ...
+    ) -> Sequence[Optional[Buffer]]: ...
 
-    def as_literal(self, obj: Any) -> bytes:
-        ...
+    def as_literal(self, obj: Any) -> bytes: ...
 
-    def get_dumper(self, obj: Any, format: PyFormat) -> Dumper:
-        ...
+    def get_dumper(self, obj: Any, format: PyFormat) -> Dumper: ...
 
-    def load_rows(self, row0: int, row1: int, make_row: "RowMaker[Row]") -> List["Row"]:
-        ...
+    def load_rows(
+        self, row0: int, row1: int, make_row: "RowMaker[Row]"
+    ) -> List["Row"]: ...
 
-    def load_row(self, row: int, make_row: "RowMaker[Row]") -> Optional["Row"]:
-        ...
+    def load_row(self, row: int, make_row: "RowMaker[Row]") -> Optional["Row"]: ...
 
-    def load_sequence(self, record: Sequence[Optional[Buffer]]) -> Tuple[Any, ...]:
-        ...
+    def load_sequence(self, record: Sequence[Optional[Buffer]]) -> Tuple[Any, ...]: ...
 
-    def get_loader(self, oid: int, format: pq.Format) -> Loader:
-        ...
+    def get_loader(self, oid: int, format: pq.Format) -> Loader: ...
index 7ec4a5597e79b55b2fefce36b0adba4e0cb29a83..738e49f3a978bf84a6e14058ee0dbc3a6136b069 100644 (file)
@@ -45,8 +45,7 @@ class Dumper(abc.Dumper, ABC):
         )
 
     @abstractmethod
-    def dump(self, obj: Any) -> Buffer:
-        ...
+    def dump(self, obj: Any) -> Buffer: ...
 
     def quote(self, obj: Any) -> Buffer:
         """
index 560945b002e287901dce8a771292cacd8ed45a41..e866368acba2c552e47bb9d61bc051bb8dc5c647 100644 (file)
@@ -705,8 +705,7 @@ class Connection(BaseConnection[Row]):
         cursor_factory: Optional[Type[Cursor[Any]]] = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "Connection[TupleRow]":
-        ...
+    ) -> "Connection[TupleRow]": ...
 
     @classmethod  # type: ignore[misc] # https://github.com/python/mypy/issues/11004
     def connect(
@@ -810,14 +809,12 @@ class Connection(BaseConnection[Row]):
         self.pgconn.finish()
 
     @overload
-    def cursor(self, *, binary: bool = False) -> Cursor[Row]:
-        ...
+    def cursor(self, *, binary: bool = False) -> Cursor[Row]: ...
 
     @overload
     def cursor(
         self, *, binary: bool = False, row_factory: RowFactory[CursorRow]
-    ) -> Cursor[CursorRow]:
-        ...
+    ) -> Cursor[CursorRow]: ...
 
     @overload
     def cursor(
@@ -827,8 +824,7 @@ class Connection(BaseConnection[Row]):
         binary: bool = False,
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ) -> ServerCursor[Row]:
-        ...
+    ) -> ServerCursor[Row]: ...
 
     @overload
     def cursor(
@@ -839,8 +835,7 @@ class Connection(BaseConnection[Row]):
         row_factory: RowFactory[CursorRow],
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ) -> ServerCursor[CursorRow]:
-        ...
+    ) -> ServerCursor[CursorRow]: ...
 
     def cursor(
         self,
index 0422159e5db4a3231a59faa3d2e9c27026b45fcd..995372a8228779d011da4b1d42f866183aa26b81 100644 (file)
@@ -95,8 +95,7 @@ class AsyncConnection(BaseConnection[Row]):
         cursor_factory: Optional[Type[AsyncCursor[Any]]] = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "AsyncConnection[TupleRow]":
-        ...
+    ) -> "AsyncConnection[TupleRow]": ...
 
     @classmethod  # type: ignore[misc] # https://github.com/python/mypy/issues/11004
     async def connect(
@@ -200,14 +199,12 @@ class AsyncConnection(BaseConnection[Row]):
         self.pgconn.finish()
 
     @overload
-    def cursor(self, *, binary: bool = False) -> AsyncCursor[Row]:
-        ...
+    def cursor(self, *, binary: bool = False) -> AsyncCursor[Row]: ...
 
     @overload
     def cursor(
         self, *, binary: bool = False, row_factory: AsyncRowFactory[CursorRow]
-    ) -> AsyncCursor[CursorRow]:
-        ...
+    ) -> AsyncCursor[CursorRow]: ...
 
     @overload
     def cursor(
@@ -217,8 +214,7 @@ class AsyncConnection(BaseConnection[Row]):
         binary: bool = False,
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ) -> AsyncServerCursor[Row]:
-        ...
+    ) -> AsyncServerCursor[Row]: ...
 
     @overload
     def cursor(
@@ -229,8 +225,7 @@ class AsyncConnection(BaseConnection[Row]):
         row_factory: AsyncRowFactory[CursorRow],
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ) -> AsyncServerCursor[CursorRow]:
-        ...
+    ) -> AsyncServerCursor[CursorRow]: ...
 
     def cursor(
         self,
index 7b41b288bae6e620761a5debd6a83975dcf64625..f20c86a2415f9679a9d8ba9544befe31c8538b53 100644 (file)
@@ -552,8 +552,7 @@ class AsyncWriter(ABC):
     """
 
     @abstractmethod
-    async def write(self, data: Buffer) -> None:
-        ...
+    async def write(self, data: Buffer) -> None: ...
 
     async def finish(self, exc: Optional[BaseException] = None) -> None:
         pass
@@ -667,20 +666,16 @@ class Formatter(ABC):
         self._row_mode = False  # true if the user is using write_row()
 
     @abstractmethod
-    def parse_row(self, data: Buffer) -> Optional[Tuple[Any, ...]]:
-        ...
+    def parse_row(self, data: Buffer) -> Optional[Tuple[Any, ...]]: ...
 
     @abstractmethod
-    def write(self, buffer: Union[Buffer, str]) -> Buffer:
-        ...
+    def write(self, buffer: Union[Buffer, str]) -> Buffer: ...
 
     @abstractmethod
-    def write_row(self, row: Sequence[Any]) -> Buffer:
-        ...
+    def write_row(self, row: Sequence[Any]) -> Buffer: ...
 
     @abstractmethod
-    def end(self) -> Buffer:
-        ...
+    def end(self) -> Buffer: ...
 
 
 class TextFormatter(Formatter):
index 07c3837dc0c3b36161ba46d4e750ff8647474ca3..53c827b87b64b426d5eea2c8d4bff26f71dda43d 100644 (file)
@@ -78,8 +78,7 @@ class CrdbConnection(_CrdbConnectionMixin, Connection[Row]):
         cursor_factory: "Optional[Type[Cursor[Row]]]" = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "CrdbConnection[Row]":
-        ...
+    ) -> "CrdbConnection[Row]": ...
 
     @overload
     @classmethod
@@ -92,8 +91,7 @@ class CrdbConnection(_CrdbConnectionMixin, Connection[Row]):
         cursor_factory: "Optional[Type[Cursor[Any]]]" = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "CrdbConnection[TupleRow]":
-        ...
+    ) -> "CrdbConnection[TupleRow]": ...
 
     @classmethod
     def connect(cls, conninfo: str = "", **kwargs: Any) -> Self:
@@ -125,8 +123,7 @@ class AsyncCrdbConnection(_CrdbConnectionMixin, AsyncConnection[Row]):
         cursor_factory: "Optional[Type[AsyncCursor[Row]]]" = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "AsyncCrdbConnection[Row]":
-        ...
+    ) -> "AsyncCrdbConnection[Row]": ...
 
     @overload
     @classmethod
@@ -139,8 +136,7 @@ class AsyncCrdbConnection(_CrdbConnectionMixin, AsyncConnection[Row]):
         cursor_factory: "Optional[Type[AsyncCursor[Any]]]" = None,
         context: Optional[AdaptContext] = None,
         **kwargs: Union[None, int, str],
-    ) -> "AsyncCrdbConnection[TupleRow]":
-        ...
+    ) -> "AsyncCrdbConnection[TupleRow]": ...
 
     @classmethod
     async def connect(cls, conninfo: str = "", **kwargs: Any) -> Self:
index a54cb2022b684a90c331e0ec78ad1f888a88bb2b..e2893762e380d22e5096d08b4d63f1412eaece36 100644 (file)
@@ -665,12 +665,12 @@ class Cursor(BaseCursor["Connection[Any]", Row]):
     __slots__ = ()
 
     @overload
-    def __init__(self, connection: "Connection[Row]"):
-        ...
+    def __init__(self, connection: "Connection[Row]"): ...
 
     @overload
-    def __init__(self, connection: "Connection[Any]", *, row_factory: RowFactory[Row]):
-        ...
+    def __init__(
+        self, connection: "Connection[Any]", *, row_factory: RowFactory[Row]
+    ): ...
 
     def __init__(
         self,
index 012e281bdb4f3b2375d83bcd8a4700ea3b144984..4124473374ec450aef89435d8da0a60dc0cc64a7 100644 (file)
@@ -29,14 +29,12 @@ class AsyncCursor(BaseCursor["AsyncConnection[Any]", Row]):
     __slots__ = ()
 
     @overload
-    def __init__(self, connection: "AsyncConnection[Row]"):
-        ...
+    def __init__(self, connection: "AsyncConnection[Row]"): ...
 
     @overload
     def __init__(
         self, connection: "AsyncConnection[Any]", *, row_factory: AsyncRowFactory[Row]
-    ):
-        ...
+    ): ...
 
     def __init__(
         self,
index 971d00eea469784ef700b6a6f9d4e6a1234d91dd..1b475f7dc9fabfc255447765fbf15c70af3f8a8f 100644 (file)
@@ -23,112 +23,83 @@ class PGconn(Protocol):
     notify_handler: Optional[Callable[["PGnotify"], None]]
 
     @classmethod
-    def connect(cls, conninfo: bytes) -> "PGconn":
-        ...
+    def connect(cls, conninfo: bytes) -> "PGconn": ...
 
     @classmethod
-    def connect_start(cls, conninfo: bytes) -> "PGconn":
-        ...
+    def connect_start(cls, conninfo: bytes) -> "PGconn": ...
 
-    def connect_poll(self) -> int:
-        ...
+    def connect_poll(self) -> int: ...
 
-    def finish(self) -> None:
-        ...
+    def finish(self) -> None: ...
 
     @property
-    def info(self) -> List["ConninfoOption"]:
-        ...
+    def info(self) -> List["ConninfoOption"]: ...
 
-    def reset(self) -> None:
-        ...
+    def reset(self) -> None: ...
 
-    def reset_start(self) -> None:
-        ...
+    def reset_start(self) -> None: ...
 
-    def reset_poll(self) -> int:
-        ...
+    def reset_poll(self) -> int: ...
 
     @classmethod
-    def ping(self, conninfo: bytes) -> int:
-        ...
+    def ping(self, conninfo: bytes) -> int: ...
 
     @property
-    def db(self) -> bytes:
-        ...
+    def db(self) -> bytes: ...
 
     @property
-    def user(self) -> bytes:
-        ...
+    def user(self) -> bytes: ...
 
     @property
-    def password(self) -> bytes:
-        ...
+    def password(self) -> bytes: ...
 
     @property
-    def host(self) -> bytes:
-        ...
+    def host(self) -> bytes: ...
 
     @property
-    def hostaddr(self) -> bytes:
-        ...
+    def hostaddr(self) -> bytes: ...
 
     @property
-    def port(self) -> bytes:
-        ...
+    def port(self) -> bytes: ...
 
     @property
-    def tty(self) -> bytes:
-        ...
+    def tty(self) -> bytes: ...
 
     @property
-    def options(self) -> bytes:
-        ...
+    def options(self) -> bytes: ...
 
     @property
-    def status(self) -> int:
-        ...
+    def status(self) -> int: ...
 
     @property
-    def transaction_status(self) -> int:
-        ...
+    def transaction_status(self) -> int: ...
 
-    def parameter_status(self, name: bytes) -> Optional[bytes]:
-        ...
+    def parameter_status(self, name: bytes) -> Optional[bytes]: ...
 
     @property
-    def error_message(self) -> bytes:
-        ...
+    def error_message(self) -> bytes: ...
 
     @property
-    def server_version(self) -> int:
-        ...
+    def server_version(self) -> int: ...
 
     @property
-    def socket(self) -> int:
-        ...
+    def socket(self) -> int: ...
 
     @property
-    def backend_pid(self) -> int:
-        ...
+    def backend_pid(self) -> int: ...
 
     @property
-    def needs_password(self) -> bool:
-        ...
+    def needs_password(self) -> bool: ...
 
     @property
-    def used_password(self) -> bool:
-        ...
+    def used_password(self) -> bool: ...
 
     @property
-    def ssl_in_use(self) -> bool:
-        ...
+    def ssl_in_use(self) -> bool: ...
 
-    def exec_(self, command: bytes) -> "PGresult":
-        ...
+    def exec_(self, command: bytes) -> "PGresult": ...
 
-    def send_query(self, command: bytes) -> None:
-        ...
+    def send_query(self, command: bytes) -> None: ...
 
     def exec_params(
         self,
@@ -137,8 +108,7 @@ class PGconn(Protocol):
         param_types: Optional[Sequence[int]] = None,
         param_formats: Optional[Sequence[int]] = None,
         result_format: int = Format.TEXT,
-    ) -> "PGresult":
-        ...
+    ) -> "PGresult": ...
 
     def send_query_params(
         self,
@@ -147,16 +117,14 @@ class PGconn(Protocol):
         param_types: Optional[Sequence[int]] = None,
         param_formats: Optional[Sequence[int]] = None,
         result_format: int = Format.TEXT,
-    ) -> None:
-        ...
+    ) -> None: ...
 
     def send_prepare(
         self,
         name: bytes,
         command: bytes,
         param_types: Optional[Sequence[int]] = None,
-    ) -> None:
-        ...
+    ) -> None: ...
 
     def send_query_prepared(
         self,
@@ -164,16 +132,14 @@ class PGconn(Protocol):
         param_values: Optional[Sequence[Optional[Buffer]]],
         param_formats: Optional[Sequence[int]] = None,
         result_format: int = Format.TEXT,
-    ) -> None:
-        ...
+    ) -> None: ...
 
     def prepare(
         self,
         name: bytes,
         command: bytes,
         param_types: Optional[Sequence[int]] = None,
-    ) -> "PGresult":
-        ...
+    ) -> "PGresult": ...
 
     def exec_prepared(
         self,
@@ -181,204 +147,145 @@ class PGconn(Protocol):
         param_values: Optional[Sequence[Buffer]],
         param_formats: Optional[Sequence[int]] = None,
         result_format: int = 0,
-    ) -> "PGresult":
-        ...
+    ) -> "PGresult": ...
 
-    def describe_prepared(self, name: bytes) -> "PGresult":
-        ...
+    def describe_prepared(self, name: bytes) -> "PGresult": ...
 
-    def send_describe_prepared(self, name: bytes) -> None:
-        ...
+    def send_describe_prepared(self, name: bytes) -> None: ...
 
-    def describe_portal(self, name: bytes) -> "PGresult":
-        ...
+    def describe_portal(self, name: bytes) -> "PGresult": ...
 
-    def send_describe_portal(self, name: bytes) -> None:
-        ...
+    def send_describe_portal(self, name: bytes) -> None: ...
 
-    def get_result(self) -> Optional["PGresult"]:
-        ...
+    def get_result(self) -> Optional["PGresult"]: ...
 
-    def consume_input(self) -> None:
-        ...
+    def consume_input(self) -> None: ...
 
-    def is_busy(self) -> int:
-        ...
+    def is_busy(self) -> int: ...
 
     @property
-    def nonblocking(self) -> int:
-        ...
+    def nonblocking(self) -> int: ...
 
     @nonblocking.setter
-    def nonblocking(self, arg: int) -> None:
-        ...
+    def nonblocking(self, arg: int) -> None: ...
 
-    def flush(self) -> int:
-        ...
+    def flush(self) -> int: ...
 
-    def set_single_row_mode(self) -> None:
-        ...
+    def set_single_row_mode(self) -> None: ...
 
-    def get_cancel(self) -> "PGcancel":
-        ...
+    def get_cancel(self) -> "PGcancel": ...
 
-    def notifies(self) -> Optional["PGnotify"]:
-        ...
+    def notifies(self) -> Optional["PGnotify"]: ...
 
-    def put_copy_data(self, buffer: Buffer) -> int:
-        ...
+    def put_copy_data(self, buffer: Buffer) -> int: ...
 
-    def put_copy_end(self, error: Optional[bytes] = None) -> int:
-        ...
+    def put_copy_end(self, error: Optional[bytes] = None) -> int: ...
 
-    def get_copy_data(self, async_: int) -> Tuple[int, memoryview]:
-        ...
+    def get_copy_data(self, async_: int) -> Tuple[int, memoryview]: ...
 
-    def trace(self, fileno: int) -> None:
-        ...
+    def trace(self, fileno: int) -> None: ...
 
-    def set_trace_flags(self, flags: Trace) -> None:
-        ...
+    def set_trace_flags(self, flags: Trace) -> None: ...
 
-    def untrace(self) -> None:
-        ...
+    def untrace(self) -> None: ...
 
     def encrypt_password(
         self, passwd: bytes, user: bytes, algorithm: Optional[bytes] = None
-    ) -> bytes:
-        ...
+    ) -> bytes: ...
 
-    def make_empty_result(self, exec_status: int) -> "PGresult":
-        ...
+    def make_empty_result(self, exec_status: int) -> "PGresult": ...
 
     @property
-    def pipeline_status(self) -> int:
-        ...
+    def pipeline_status(self) -> int: ...
 
-    def enter_pipeline_mode(self) -> None:
-        ...
+    def enter_pipeline_mode(self) -> None: ...
 
-    def exit_pipeline_mode(self) -> None:
-        ...
+    def exit_pipeline_mode(self) -> None: ...
 
-    def pipeline_sync(self) -> None:
-        ...
+    def pipeline_sync(self) -> None: ...
 
-    def send_flush_request(self) -> None:
-        ...
+    def send_flush_request(self) -> None: ...
 
 
 class PGresult(Protocol):
-    def clear(self) -> None:
-        ...
+    def clear(self) -> None: ...
 
     @property
-    def status(self) -> int:
-        ...
+    def status(self) -> int: ...
 
     @property
-    def error_message(self) -> bytes:
-        ...
+    def error_message(self) -> bytes: ...
 
-    def error_field(self, fieldcode: int) -> Optional[bytes]:
-        ...
+    def error_field(self, fieldcode: int) -> Optional[bytes]: ...
 
     @property
-    def ntuples(self) -> int:
-        ...
+    def ntuples(self) -> int: ...
 
     @property
-    def nfields(self) -> int:
-        ...
+    def nfields(self) -> int: ...
 
-    def fname(self, column_number: int) -> Optional[bytes]:
-        ...
+    def fname(self, column_number: int) -> Optional[bytes]: ...
 
-    def ftable(self, column_number: int) -> int:
-        ...
+    def ftable(self, column_number: int) -> int: ...
 
-    def ftablecol(self, column_number: int) -> int:
-        ...
+    def ftablecol(self, column_number: int) -> int: ...
 
-    def fformat(self, column_number: int) -> int:
-        ...
+    def fformat(self, column_number: int) -> int: ...
 
-    def ftype(self, column_number: int) -> int:
-        ...
+    def ftype(self, column_number: int) -> int: ...
 
-    def fmod(self, column_number: int) -> int:
-        ...
+    def fmod(self, column_number: int) -> int: ...
 
-    def fsize(self, column_number: int) -> int:
-        ...
+    def fsize(self, column_number: int) -> int: ...
 
     @property
-    def binary_tuples(self) -> int:
-        ...
+    def binary_tuples(self) -> int: ...
 
-    def get_value(self, row_number: int, column_number: int) -> Optional[bytes]:
-        ...
+    def get_value(self, row_number: int, column_number: int) -> Optional[bytes]: ...
 
     @property
-    def nparams(self) -> int:
-        ...
+    def nparams(self) -> int: ...
 
-    def param_type(self, param_number: int) -> int:
-        ...
+    def param_type(self, param_number: int) -> int: ...
 
     @property
-    def command_status(self) -> Optional[bytes]:
-        ...
+    def command_status(self) -> Optional[bytes]: ...
 
     @property
-    def command_tuples(self) -> Optional[int]:
-        ...
+    def command_tuples(self) -> Optional[int]: ...
 
     @property
-    def oid_value(self) -> int:
-        ...
+    def oid_value(self) -> int: ...
 
-    def set_attributes(self, descriptions: List["PGresAttDesc"]) -> None:
-        ...
+    def set_attributes(self, descriptions: List["PGresAttDesc"]) -> None: ...
 
 
 class PGcancel(Protocol):
-    def free(self) -> None:
-        ...
+    def free(self) -> None: ...
 
-    def cancel(self) -> None:
-        ...
+    def cancel(self) -> None: ...
 
 
 class Conninfo(Protocol):
     @classmethod
-    def get_defaults(cls) -> List["ConninfoOption"]:
-        ...
+    def get_defaults(cls) -> List["ConninfoOption"]: ...
 
     @classmethod
-    def parse(cls, conninfo: bytes) -> List["ConninfoOption"]:
-        ...
+    def parse(cls, conninfo: bytes) -> List["ConninfoOption"]: ...
 
     @classmethod
-    def _options_from_array(cls, opts: Sequence[Any]) -> List["ConninfoOption"]:
-        ...
+    def _options_from_array(cls, opts: Sequence[Any]) -> List["ConninfoOption"]: ...
 
 
 class Escaping(Protocol):
-    def __init__(self, conn: Optional[PGconn] = None):
-        ...
+    def __init__(self, conn: Optional[PGconn] = None): ...
 
-    def escape_literal(self, data: Buffer) -> bytes:
-        ...
+    def escape_literal(self, data: Buffer) -> bytes: ...
 
-    def escape_identifier(self, data: Buffer) -> bytes:
-        ...
+    def escape_identifier(self, data: Buffer) -> bytes: ...
 
-    def escape_string(self, data: Buffer) -> bytes:
-        ...
+    def escape_string(self, data: Buffer) -> bytes: ...
 
-    def escape_bytea(self, data: Buffer) -> bytes:
-        ...
+    def escape_bytea(self, data: Buffer) -> bytes: ...
 
-    def unescape_bytea(self, data: Buffer) -> bytes:
-        ...
+    def unescape_bytea(self, data: Buffer) -> bytes: ...
index 2b240f7fb6accf47724ad9a41fc18622a405e31c..89fe2a1ab80fb3d190b591eacbf3000f06bea4ed 100644 (file)
@@ -43,8 +43,7 @@ class RowMaker(Protocol[Row]):
     Typically, `!RowMaker` functions are returned by `RowFactory`.
     """
 
-    def __call__(self, __values: Sequence[Any]) -> Row:
-        ...
+    def __call__(self, __values: Sequence[Any]) -> Row: ...
 
 
 class RowFactory(Protocol[Row]):
@@ -61,8 +60,7 @@ class RowFactory(Protocol[Row]):
     use the values to create a dictionary for each record.
     """
 
-    def __call__(self, __cursor: "Cursor[Any]") -> RowMaker[Row]:
-        ...
+    def __call__(self, __cursor: "Cursor[Any]") -> RowMaker[Row]: ...
 
 
 class AsyncRowFactory(Protocol[Row]):
@@ -70,8 +68,7 @@ class AsyncRowFactory(Protocol[Row]):
     Like `RowFactory`, taking an async cursor as argument.
     """
 
-    def __call__(self, __cursor: "AsyncCursor[Any]") -> RowMaker[Row]:
-        ...
+    def __call__(self, __cursor: "AsyncCursor[Any]") -> RowMaker[Row]: ...
 
 
 class BaseRowFactory(Protocol[Row]):
@@ -79,8 +76,7 @@ class BaseRowFactory(Protocol[Row]):
     Like `RowFactory`, taking either type of cursor as argument.
     """
 
-    def __call__(self, __cursor: "BaseCursor[Any, Any]") -> RowMaker[Row]:
-        ...
+    def __call__(self, __cursor: "BaseCursor[Any, Any]") -> RowMaker[Row]: ...
 
 
 TupleRow: TypeAlias = Tuple[Any, ...]
index d2f4ab14aa5399cc6a2a699d2bd7e3fbfc05b9d2..77d78f74adaae466a9db3a352bd84589e4f58781 100644 (file)
@@ -221,8 +221,7 @@ class ServerCursor(ServerCursorMixin["Connection[Any]", Row], Cursor[Row]):
         *,
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ):
-        ...
+    ): ...
 
     @overload
     def __init__(
@@ -233,8 +232,7 @@ class ServerCursor(ServerCursorMixin["Connection[Any]", Row], Cursor[Row]):
         row_factory: RowFactory[Row],
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ):
-        ...
+    ): ...
 
     def __init__(
         self,
@@ -362,8 +360,7 @@ class AsyncServerCursor(
         *,
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ):
-        ...
+    ): ...
 
     @overload
     def __init__(
@@ -374,8 +371,7 @@ class AsyncServerCursor(
         row_factory: AsyncRowFactory[Row],
         scrollable: Optional[bool] = None,
         withhold: bool = False,
-    ):
-        ...
+    ): ...
 
     def __init__(
         self,
index 96a81bf4eb3c9fea36c911a8bdc68618c2a410bb..0e79f92ff7b42a00489eec38043ee4539b1c66bf 100644 (file)
@@ -1,6 +1,7 @@
 """
 Adapters for the enum type.
 """
+
 from enum import Enum
 from typing import Dict, Generic, Optional, Mapping, Sequence
 from typing import Tuple, Type, TypeVar, Union, cast
index 360f49e6dd7ee2557485cbcc9731f3538c06c22e..548ced9c73e92852124f48fdb5ea12947a2f0b58 100644 (file)
@@ -46,12 +46,10 @@ class Multirange(MutableSequence[Range[T]]):
         return f"{{{', '.join(map(str, self._ranges))}}}"
 
     @overload
-    def __getitem__(self, index: int) -> Range[T]:
-        ...
+    def __getitem__(self, index: int) -> Range[T]: ...
 
     @overload
-    def __getitem__(self, index: slice) -> "Multirange[T]":
-        ...
+    def __getitem__(self, index: slice) -> "Multirange[T]": ...
 
     def __getitem__(self, index: Union[int, slice]) -> "Union[Range[T],Multirange[T]]":
         if isinstance(index, int):
@@ -63,12 +61,10 @@ class Multirange(MutableSequence[Range[T]]):
         return len(self._ranges)
 
     @overload
-    def __setitem__(self, index: int, value: Range[T]) -> None:
-        ...
+    def __setitem__(self, index: int, value: Range[T]) -> None: ...
 
     @overload
-    def __setitem__(self, index: slice, value: Iterable[Range[T]]) -> None:
-        ...
+    def __setitem__(self, index: slice, value: Iterable[Range[T]]) -> None: ...
 
     def __setitem__(
         self,
index a1143a6c4e5de5929b881c745da066bd26fccec3..ac2f755c7894c5eccc64132062dad1423fdd0210 100644 (file)
@@ -46,7 +46,7 @@ extras_require = {
     ],
     # Requirements needed for development
     "dev": [
-        "black >= 23.1.0",
+        "black >= 24.1.0",
         "codespell >= 2.2",
         "dnspython >= 2.1",
         "flake8 >= 4.0",
index 2ae629c2d4d3d195def647f96d7bce3cdbab83b6..40a061b1e954b4de28869853a004d04fcd5459b7 100644 (file)
@@ -1,3 +1,3 @@
 [flake8]
 max-line-length = 88
-ignore = W503, E203
+ignore = W503, E203, E704
index 2ae629c2d4d3d195def647f96d7bce3cdbab83b6..40a061b1e954b4de28869853a004d04fcd5459b7 100644 (file)
@@ -1,3 +1,3 @@
 [flake8]
 max-line-length = 88
-ignore = W503, E203
+ignore = W503, E203, E704
index 6d0dcbab4d34e817b53e6c34acd359edfd9276c1..593920bae16ee85735e208df49495508e3e325c2 100644 (file)
@@ -826,8 +826,7 @@ class MaintenanceTask(ABC):
         pool.run_task(self)
 
     @abstractmethod
-    def _run(self, pool: "ConnectionPool") -> None:
-        ...
+    def _run(self, pool: "ConnectionPool") -> None: ...
 
 
 class StopWorker(MaintenanceTask):
index 6454f47e6bd64be7d419c1912254bad47e0d78ef..6ff94b96dc7b6a60ee032891906f71dffc7b1479 100644 (file)
@@ -756,8 +756,7 @@ class MaintenanceTask(ABC):
         pool.run_task(self)
 
     @abstractmethod
-    async def _run(self, pool: "AsyncConnectionPool") -> None:
-        ...
+    async def _run(self, pool: "AsyncConnectionPool") -> None: ...
 
 
 class StopWorker(MaintenanceTask):
index a3f4c190769b5d077cf6671f038cd5f694089e4b..a34fd47a145a873fa5b6128cf399706dcea0c890 100644 (file)
@@ -17,7 +17,7 @@ pytest-cov == 3.0.0
 pytest-randomly == 3.5.0
 
 # From the 'dev' extra
-black == 23.1.0
+black == 24.1.0
 dnspython == 2.1.0
 flake8 == 4.0.0
 types-setuptools == 57.4.0
index a49f11685b069c33d9f7958e3513308c312d75e0..0fb65ad90ea633c4b969d2a16478916e1dee29ac 100644 (file)
@@ -1,6 +1,7 @@
 """
 A quick and rough performance comparison of text vs. binary Decimal adaptation
 """
+
 from random import randrange
 from decimal import Decimal
 import psycopg
index ec952293a18d79209ab7cce649935f9d596201fc..74cc04d1f8635f6b3a1ab6b9eccafe00757edb7f 100644 (file)
@@ -7,6 +7,7 @@ We do not fetch results explicitly (using cursor.fetch*()), this is
 handled by execute() calls when pgconn socket is read-ready, which
 happens when the output buffer is full.
 """
+
 import argparse
 import asyncio
 import logging
index 1cf0403497e5a52d8bcd6a592618ea8f04a87f09..b8f1de5d6c2839dd3115e6cf1d5acb9aa4046108 100644 (file)
@@ -606,7 +606,7 @@ async def test_cursor_factory(aconn):
     async with aconn.cursor() as cur:
         assert isinstance(cur, MyCursor)
 
-    async with (await aconn.execute("select 1")) as cur:
+    async with await aconn.execute("select 1") as cur:
         assert isinstance(cur, MyCursor)
 
 
index fffc32f31ba0ac8ac25d36527f3502294156d486..8e5db7668c78efc28e5389ada3e8fe05201237f2 100644 (file)
@@ -402,9 +402,11 @@ def test_dump_numeric_binary(conn, expr):
 @pytest.mark.parametrize(
     "fmt_in",
     [
-        f
-        if f != PyFormat.BINARY
-        else pytest.param(f, marks=pytest.mark.crdb_skip("binary decimal"))
+        (
+            f
+            if f != PyFormat.BINARY
+            else pytest.param(f, marks=pytest.mark.crdb_skip("binary decimal"))
+        )
         for f in PyFormat
     ],
 )