From: Bryan不可思议 Date: Fri, 6 Oct 2023 08:24:16 +0000 (+0000) Subject: fix: add deprecated warning X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3a334161ff28d66f94d1591e4d150c3abcdf97ad;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git fix: add deprecated warning --- diff --git a/lib/sqlalchemy/ext/asyncio/session.py b/lib/sqlalchemy/ext/asyncio/session.py index 429ff6e869..75dd43281d 100644 --- a/lib/sqlalchemy/ext/asyncio/session.py +++ b/lib/sqlalchemy/ext/asyncio/session.py @@ -1058,12 +1058,14 @@ class AsyncSession(ReversibleProxy[Session]): await greenlet_spawn(self.sync_session.invalidate) @classmethod + @util.deprecated( + "2.0", + "The :meth:`.AsyncSession.close_all` method is deprecated and will be " + "removed in a future release. Please refer to " + ":func:`.session.close_all_sessions`.", + ) async def close_all(cls) -> None: - """Close all :class:`_asyncio.AsyncSession` sessions. - - .. deprecated:: 2.0 The :meth:`.AsyncSession.close_all` method is deprecated and will be removed in a future release. Please refer to :func:`.session.close_all_sessions`. - - """ # noqa: E501 + """Close all :class:`_asyncio.AsyncSession` sessions.""" await greenlet_spawn(close_all_sessions) async def __aenter__(self: _AS) -> _AS: diff --git a/test/ext/asyncio/test_session_py3k.py b/test/ext/asyncio/test_session_py3k.py index a3988ea52d..61759f8a93 100644 --- a/test/ext/asyncio/test_session_py3k.py +++ b/test/ext/asyncio/test_session_py3k.py @@ -128,7 +128,11 @@ class AsyncSessionTest(AsyncFixture): u = User(name="u") async_session.add(u) await async_session.commit() - await AsyncSession.close_all() + with expect_deprecated( + r"The AsyncSession.close_all\(\) method is deprecated and will " + "be removed in a future release. " + ): + await AsyncSession.close_all() assert async_session.sync_session.identity_map.values() == []