Skip to main content

Mause RPC

A dumb as hell rpc implementation built on rabbitmq

Need to write a server?

from mause_rpc.server import Server

rpc_queue = "rpc.queue"
server = Server(rpc_queue, "rabbitmq://...")


@server.register
def hello(name: str) -> str:
    return "hello " + name


@server.register("divide")
def div(a: int, b: int) -> float:
    if b == 0:
        raise ZeroDivisionError()
    return a / b


if __name__ == "__main__":
    server.serve()

Need a client?

from mause_rpc.client import get_client

rpc_queue = "rpc.queue"
client = get_client(rpc_queue, "rabbitmq://...")


def test_basic_functionality():
    assert client.hello("mark") == "hello mark"
    assert client.divide(5, 2) == 2.5

    with pytest.raises(ZeroDivisionError):
        client.divide(5, 0)

Metadata

Release files for mause_rpc 0.0.21

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

Source distribution (sdist)

Source distribution for mause_rpc 0.0.21
File Size Uploaded
mause_rpc-0.0.21.tar.gz 4.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mause_rpc 0.0.21
File Interpreter ABI Platform
mause_rpc-0.0.21-py3-none-any.whl Python 3 none any Details

Total release size: 9.5 kB

Release files / mause_rpc-0.0.21.tar.gz

Download URL mause_rpc-0.0.21.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f99f8843614267326233e1416b39b9d4d0c6c91f0f63114c955471375820a088
BLAKE2b-256 checksum
How to use checksums
71c389f4e008edf4dd535c519729fb56fd17021f7211863b259e6ca0f17a60ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.10.6 Linux/5.15.0-97-generic

Release files / mause_rpc-0.0.21-py3-none-any.whl

Download URL mause_rpc-0.0.21-py3-none-any.whl
Size 5.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e9de7073ed16553a06ed72ccc0b92db884548e9b0c8b2b577e70d032966bebb5
BLAKE2b-256 checksum
How to use checksums
77384592bc863a36255a23abe808c088bb2fb7b56564b3a6d1329bca9d5907b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.10.6 Linux/5.15.0-97-generic

Release history Release notifications | RSS feed

This release

0.0.21 This release

2 release files

0.0.20

2 release files

0.0.19

2 release files

0.0.13

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

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