|
6 | 6 | import inspect |
7 | 7 | import json |
8 | 8 | import re |
| 9 | +import warnings |
9 | 10 | from collections.abc import AsyncIterator, Awaitable, Callable, Iterable, Sequence |
10 | 11 | from contextlib import AbstractAsyncContextManager, asynccontextmanager |
11 | 12 | from typing import Any, Generic, Literal, TypeVar, overload |
@@ -286,6 +287,12 @@ def run( |
286 | 287 | case "stdio": |
287 | 288 | anyio.run(self.run_stdio_async) |
288 | 289 | case "sse": # pragma: no cover |
| 290 | + warnings.warn( |
| 291 | + 'run(transport="sse") is deprecated. Use run(transport="streamable-http") instead. ' |
| 292 | + "SSE transport will be removed in a future major release.", |
| 293 | + DeprecationWarning, |
| 294 | + stacklevel=2, |
| 295 | + ) |
289 | 296 | anyio.run(lambda: self.run_sse_async(**kwargs)) |
290 | 297 | case "streamable-http": # pragma: no cover |
291 | 298 | anyio.run(lambda: self.run_streamable_http_async(**kwargs)) |
@@ -854,7 +861,18 @@ async def run_sse_async( # pragma: no cover |
854 | 861 | message_path: str = "/messages/", |
855 | 862 | transport_security: TransportSecuritySettings | None = None, |
856 | 863 | ) -> None: |
857 | | - """Run the server using SSE transport.""" |
| 864 | + """Run the server using SSE transport. |
| 865 | +
|
| 866 | + .. deprecated:: |
| 867 | + Use :meth:`run_streamable_http_async` instead. SSE transport will be |
| 868 | + removed in a future major release. |
| 869 | + """ |
| 870 | + warnings.warn( |
| 871 | + "run_sse_async is deprecated. Use run_streamable_http_async instead. " |
| 872 | + "SSE transport will be removed in a future major release.", |
| 873 | + DeprecationWarning, |
| 874 | + stacklevel=2, |
| 875 | + ) |
858 | 876 | import uvicorn |
859 | 877 |
|
860 | 878 | starlette_app = self.sse_app( |
@@ -915,7 +933,18 @@ def sse_app( |
915 | 933 | transport_security: TransportSecuritySettings | None = None, |
916 | 934 | host: str = "127.0.0.1", |
917 | 935 | ) -> Starlette: |
918 | | - """Return an instance of the SSE server app.""" |
| 936 | + """Return an instance of the SSE server app. |
| 937 | +
|
| 938 | + .. deprecated:: |
| 939 | + Use :meth:`streamable_http_app` instead. SSE transport will be |
| 940 | + removed in a future major release. |
| 941 | + """ |
| 942 | + warnings.warn( |
| 943 | + "sse_app is deprecated. Use streamable_http_app instead. " |
| 944 | + "SSE transport will be removed in a future major release.", |
| 945 | + DeprecationWarning, |
| 946 | + stacklevel=2, |
| 947 | + ) |
919 | 948 | # Auto-enable DNS rebinding protection for localhost (IPv4 and IPv6) |
920 | 949 | if transport_security is None and host in ("127.0.0.1", "localhost", "::1"): |
921 | 950 | transport_security = TransportSecuritySettings( |
|
0 commit comments