Skip to main content

Python RSocket library

Project description

RSocket-py

Python implementation of RSocket

Installation

The latest version from pypi can be installed using:

pip install rsocket

or install any of the extras:

  • rx
  • aiohttp
  • quart
  • uic

Example:

pip install --pre rsocket[rx]

Alternatively, download the source code, build a package:

python3 setup.py bdist_wheel

and use the resulting package from the ./dist folder, or install locally:

python3 setup.py install

Documentation

Documentation is available on the official rsocket.io site.

Examples

Examples can be found in the /examples folder. It contains various server and client usages. The following is a table denoting which client example is constructed to be run against which server example. Some of the examples are in java to show compatibility with a different implementation.

The examples/test_examples.py shows which pairs of client/server work with each other, and can be used to execute all the examples (except for the client_springboot.py which is set up to work against https://github.com/benwilcock/spring-rsocket-demo)

server (python) server (java) client (python) client(java)
server.py client.py
server_quic.py client_quic.py
server_with_lease.py ClientWithLease
server_with_routing.py client_with_routing.py Client
server_with_routing.py client_rx.py
server_with_routing.py client_reconnect.py
Server run_against_example_java_server.py
server_quart_websocket.py client_websocket.py
server_aiohttp_websocket.py client_websocket.py

Build Status

build master Coverage Status CodeQL

Progress

  • Requests
    • Fire and forget
    • Response
    • Stream
    • Channel
    • Metadata push
  • Features
    • Keepalive / Max server life
    • Lease
    • Resume
    • Fragmentation
  • Extensions
    • Composite metadata
    • Per Stream Mimetype
    • Routing
    • Authentication
  • Transports
    • TCP
    • Websocket
    • QUIC
    • HTTP/2
    • Aeron
  • RxPy Integration
    • Stream Response
    • Channel Response
    • Channel Requester stream
    • Response
  • Other
    • Error handling all scenarios in the protocol spec
    • Reconnect
    • Load balancing

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rsocket-0.3.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rsocket-0.3-py3-none-any.whl (58.1 kB view details)

Uploaded Python 3

File details

Details for the file rsocket-0.3.tar.gz.

File metadata

  • Download URL: rsocket-0.3.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for rsocket-0.3.tar.gz
Algorithm Hash digest
SHA256 bdeec889c2ff349996d7e59d06d896c77cab8f352b23f64235e6b68c0a88a8ca
MD5 0e3d4b1e833961b936311e53186c596a
BLAKE2b-256 6b2708ca773c91e440e1abf1288c5b95e26c41b7cde755bb13ef3603bda95599

See more details on using hashes here.

File details

Details for the file rsocket-0.3-py3-none-any.whl.

File metadata

  • Download URL: rsocket-0.3-py3-none-any.whl
  • Upload date:
  • Size: 58.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for rsocket-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1054cd28522af43ed3d7359f381a6727c253512f1fd0d09649a7e58ee7c5482a
MD5 d728cbc4697b342f36c769e2a36e5ea1
BLAKE2b-256 433fcf327a802c833ebb26e40333d6a288e9e6df1a5c483e49d2f38521a34da9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page