Skip to main content

Rivora Contract Protocol (RCP)

RCP defines a common contract between applications, frameworks, and servers, so each can be built and updated separately. It describes how HTTP requests, WebTransport sessions, application lifecycles, and protocol events are represented through scopes, receive events, and send events.

It is optimized around HTTP/3 and QUIC and Webtransport over HTTP/3

Install

pip install rivora-rcp

Quick start

from rcp import HTTPResponseEventType


async def app(scope, receive, send):
    await send({"type": HTTPResponseEventType.START, "status": 200})
    await send(
        {
            "type": HTTPResponseEventType.BODY,
            "body": b"Hello from RCP",
            "more_body": False,
        }
    )

RCP applications are asynchronous callables that receive a scope, receive, and send. Servers provide these values and translate RCP events to and from the underlying transport.

Protocol versions

Version Capabilities
1.0 HTTP/3, QUIC, lifespan, and extensions
2.0 Version 1.0 plus WebTransport

The RCP protocol version is separate from the Python package version.

To learn more about rcp, please read the documentation.

RCP is licensed under the MIT License.

Metadata

Release files for rivora-rcp 2.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rivora-rcp 2.0.6
File Size Uploaded Provenance Actions
rivora_rcp-2.0.6.tar.gz 8.3 kB Without provenance Details for rivora_rcp-2.0.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rivora-rcp 2.0.6
File Interpreter ABI Platform Actions
rivora_rcp-2.0.6-py3-none-any.whl Python 3 none any Details for rivora_rcp-2.0.6-py3-none-any.whl

Total release size: 18.7 kB

Release files / rivora_rcp-2.0.6.tar.gz

Download URL rivora_rcp-2.0.6.tar.gz
Size 8.3 kB
Tags Source
SHA-256 checksum
How to use checksums
c70393bede3fcb7658db97f78c04ef6712a4c30cf87d9845d97fa6c1d5ad64f8
BLAKE2b-256 checksum
How to use checksums
e37ea9466d85969097ccd763e6523c01be1256daa7348021e83562c0b035d1eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / rivora_rcp-2.0.6-py3-none-any.whl

Download URL rivora_rcp-2.0.6-py3-none-any.whl
Size 10.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
199468b86945ca188b9d0e60f1d33531dbbea22fb3bb1ad6f7ff9ebe9f29b52c
BLAKE2b-256 checksum
How to use checksums
a4d763b69c925f93b4e6ebe9d1abe185eeb5c0137b9777aa3bd034db2372e64a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Security for rivora-rcp 2.0.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page