psycopg.git / summary / log / commit / refs
commit 400a334c8ea4540f562fd04ff17a6df67a98226d
Author: Daniele Varrazzo <daniele.varrazzo@gmail.com>
Date: Tue Oct 26 12:14:59 2021 +0000
Fix type hint for `Connection.notifies()`
Close #128.
docs/news.rst | 1 +
psycopg/psycopg/connection.py | 6 +++---
psycopg/psycopg/connection_async.py | 6 +++---
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/docs/news.rst b/docs/news.rst
index 2dd53875..921fd4bc 100644
--- a/docs/news.rst
+++ b/docs/news.rst
@@ -14,6 +14,7 @@ psycopg 3.0.2
^^^^^^^^^^^^^
- Fix type hint for `sql.SQL.join()` (:ticket:`#127`).
+- Fix type hint for `Connection.notifies()` (:ticket:`#128`).
psycopg 3.0.1
diff --git a/psycopg/psycopg/connection.py b/psycopg/psycopg/connection.py
index aeca9266..8815c970 100644
--- a/psycopg/psycopg/connection.py
+++ b/psycopg/psycopg/connection.py
@@ -8,8 +8,8 @@ import logging
import warnings
import threading
from types import TracebackType
-from typing import Any, Callable, cast, Dict, Generic, Iterator, List
-from typing import NamedTuple, Optional, Type, TypeVar, Union
+from typing import Any, Callable, cast, Dict, Generator, Generic, Iterator
+from typing import List, NamedTuple, Optional, Type, TypeVar, Union
from typing import overload, TYPE_CHECKING
from weakref import ref, ReferenceType
from functools import partial
@@ -743,7 +743,7 @@ class Connection(BaseConnection[Row]):
with Transaction(self, savepoint_name, force_rollback) as tx:
yield tx
- def notifies(self) -> Iterator[Notify]:
+ def notifies(self) -> Generator[Notify, None, None]:
"""
Yield `Notify` objects as soon as they are received from the database.
"""
diff --git a/psycopg/psycopg/connection_async.py b/psycopg/psycopg/connection_async.py
index 69b8bee0..5e0b8e9a 100644
--- a/psycopg/psycopg/connection_async.py
+++ b/psycopg/psycopg/connection_async.py
@@ -8,8 +8,8 @@ import sys
import asyncio
import logging
from types import TracebackType
-from typing import Any, AsyncIterator, Dict, Optional, Type, Union
-from typing import cast, overload, TYPE_CHECKING
+from typing import Any, AsyncGenerator, AsyncIterator, Dict, Optional
+from typing import Type, Union, cast, overload, TYPE_CHECKING
from . import errors as e
from . import waiting
@@ -275,7 +275,7 @@ class AsyncConnection(BaseConnection[Row]):
async with tx:
yield tx
- async def notifies(self) -> AsyncIterator[Notify]:
+ async def notifies(self) -> AsyncGenerator[Notify, None]:
while 1:
async with self.lock:
ns = await self.wait(notifies(self.pgconn))
[parent: 2b9161d76000]