Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions src/nexusrpc/_serializer.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ class Content:
A container for a map of headers and a byte array of data.

It is used by the SDK's Serializer interface implementations.

.. warning::
This API is experimental and may change in the future.
"""

headers: Mapping[str, str]
Expand All @@ -32,6 +35,9 @@ class Content:
class Serializer(Protocol):
"""
Serializer is used by the framework to serialize/deserialize input and output.

.. warning::
This API is experimental and may change in the future.
"""

def serialize(self, value: Any) -> Union[Content, Awaitable[Content]]:
Expand Down Expand Up @@ -63,6 +69,9 @@ class LazyValue(LazyValueT):

It is used to stream inputs and outputs in the various client and server APIs.

.. warning::
This API is experimental and may change in the future.

Example:
.. code-block:: python

Expand Down
14 changes: 14 additions & 0 deletions src/nexusrpc/handler/_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,11 @@


class AbstractHandler(ABC):
"""
.. warning::
This API is experimental and may change in the future.
"""

@abstractmethod
def start_operation(
self,
Expand Down Expand Up @@ -161,6 +166,9 @@ class BaseServiceCollectionHandler(AbstractHandler, ABC):

Operation requests are delegated to a :py:class:`ServiceHandler` based on the service
name in the operation context.

.. warning::
This API is experimental and may change in the future.
"""

def __init__(
Expand Down Expand Up @@ -226,6 +234,9 @@ class Handler(BaseServiceCollectionHandler):
The methods of this class itself are `async def`. There is currently no alternative
Handler class with `def` methods.

.. warning::
This API is experimental and may change in the future.

Example:
.. code-block:: python

Expand Down Expand Up @@ -417,6 +428,9 @@ class OperationHandlerMiddleware(ABC):
Middleware for operation handlers.

This should be extended by any operation handler middelware.

.. warning::
This API is experimental and may change in the future.
"""

@abstractmethod
Expand Down
3 changes: 3 additions & 0 deletions src/nexusrpc/handler/_operation_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,9 @@ class MiddlewareSafeOperationHandler(OperationHandler[Any, Any], ABC):
can be awaited by an async runtime. It can produce a result synchronously by returning
:py:class:`StartOperationResultSync` or asynchronously by returning :py:class:`StartOperationResultAsync`
in the same fashion that :py:class:`OperationHandler` does.

.. warning::
This API is experimental and may change in the future.
"""

@abstractmethod
Expand Down