Skip to content

Commit 9476cb0

Browse files
committed
docs: Mark the async SSE client as experimental
1 parent 3acd969 commit 9476cb0

3 files changed

Lines changed: 25 additions & 0 deletions

File tree

‎README.md‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ An async implementation, `AsyncSSEClient`, is also available for use with `async
2222
pip install launchdarkly-eventsource[async]
2323
```
2424

25+
> [!CAUTION]
26+
> The async implementation (`AsyncSSEClient` and its associated `AsyncConnectStrategy` API) is experimental and should NOT be considered ready for production use. It may change or be removed without notice and is not subject to backwards compatibility guarantees.
27+
>
28+
> Pin to a specific minor version and review the changelog before upgrading.
29+
2530
## Supported Python versions
2631

2732
This version of the package is compatible with Python 3.9 and higher.

‎ld_eventsource/async_client.py‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@ class AsyncSSEClient:
1616
"""
1717
An async client for reading a Server-Sent Events stream.
1818
19+
CAUTION:
20+
This feature is experimental and should NOT be considered ready for production use.
21+
It may change or be removed without notice and is not subject to backwards
22+
compatibility guarantees.
23+
1924
This is an async/await implementation. The expected usage is to create an ``AsyncSSEClient``
2025
instance (either as an async context manager or directly), then read from it using the async
2126
iterator properties :attr:`events` or :attr:`all`.

‎ld_eventsource/config/async_connect_strategy.py‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ class AsyncConnectStrategy:
1010
"""
1111
An abstraction for how :class:`.AsyncSSEClient` should obtain an input stream.
1212
13+
CAUTION:
14+
This feature is experimental and should NOT be considered ready for production use.
15+
It may change or be removed without notice and is not subject to backwards
16+
compatibility guarantees.
17+
1318
The default implementation is :meth:`http()`, which makes HTTP requests with ``aiohttp``.
1419
Or, if you want to consume an input stream from some other source, you can create your own
1520
subclass of :class:`AsyncConnectStrategy`.
@@ -58,6 +63,11 @@ class AsyncConnectionClient:
5863
"""
5964
An object provided by :class:`.AsyncConnectStrategy` that is retained by a single
6065
:class:`.AsyncSSEClient` to perform all connection attempts by that instance.
66+
67+
CAUTION:
68+
This feature is experimental and should NOT be considered ready for production use.
69+
It may change or be removed without notice and is not subject to backwards
70+
compatibility guarantees.
6171
"""
6272

6373
async def connect(self, last_event_id: Optional[str]) -> AsyncConnectionResult:
@@ -85,6 +95,11 @@ async def __aexit__(self, type, value, traceback):
8595
class AsyncConnectionResult:
8696
"""
8797
The return type of :meth:`AsyncConnectionClient.connect()`.
98+
99+
CAUTION:
100+
This feature is experimental and should NOT be considered ready for production use.
101+
It may change or be removed without notice and is not subject to backwards
102+
compatibility guarantees.
88103
"""
89104

90105
def __init__(

0 commit comments

Comments
 (0)