Skip to content

Commit dec2fff

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

3 files changed

Lines changed: 29 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: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@ 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
21+
use. It may change or be removed without notice and is not subject to backwards
22+
compatibility guarantees. Pin to a specific minor version and review the changelog
23+
before upgrading.
24+
1925
This is an async/await implementation. The expected usage is to create an ``AsyncSSEClient``
2026
instance (either as an async context manager or directly), then read from it using the async
2127
iterator properties :attr:`events` or :attr:`all`.

ld_eventsource/config/async_connect_strategy.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@ 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
15+
use. It may change or be removed without notice and is not subject to backwards
16+
compatibility guarantees. Pin to a specific minor version and review the changelog
17+
before upgrading.
18+
1319
The default implementation is :meth:`http()`, which makes HTTP requests with ``aiohttp``.
1420
Or, if you want to consume an input stream from some other source, you can create your own
1521
subclass of :class:`AsyncConnectStrategy`.
@@ -58,6 +64,12 @@ class AsyncConnectionClient:
5864
"""
5965
An object provided by :class:`.AsyncConnectStrategy` that is retained by a single
6066
:class:`.AsyncSSEClient` to perform all connection attempts by that instance.
67+
68+
.. caution::
69+
This feature is experimental and should NOT be considered ready for production
70+
use. It may change or be removed without notice and is not subject to backwards
71+
compatibility guarantees. Pin to a specific minor version and review the changelog
72+
before upgrading.
6173
"""
6274

6375
async def connect(self, last_event_id: Optional[str]) -> AsyncConnectionResult:
@@ -85,6 +97,12 @@ async def __aexit__(self, type, value, traceback):
8597
class AsyncConnectionResult:
8698
"""
8799
The return type of :meth:`AsyncConnectionClient.connect()`.
100+
101+
.. caution::
102+
This feature is experimental and should NOT be considered ready for production
103+
use. It may change or be removed without notice and is not subject to backwards
104+
compatibility guarantees. Pin to a specific minor version and review the changelog
105+
before upgrading.
88106
"""
89107

90108
def __init__(

0 commit comments

Comments
 (0)