Skip to main content

Unix domain socket unicast transport for Swarmauri.

Project description

Swarmauri UDS Unicast Transport

Transport Icon Lifecycle License

The Swarmauri UDS Unicast Transport offers reliable, ordered, local-only communication over Unix domain sockets. It embraces the unified transport lifecycle so the server and client contexts are created directly from the transport instance (.server(...) / .client(...)).

Installation

Using uv

uv add --directory pkgs/standards/swarmauri_transport_uds_unicast swarmauri_transport_uds_unicast

Using pip

pip install swarmauri_transport_uds_unicast

Usage

The example below demonstrates setting up a server and client that echo messages over a Unix domain socket path.

import asyncio
from swarmauri_transport_uds_unicast import UdsUnicastTransport

SOCKET_PATH = "/tmp/swm-uds.sock"

async def main() -> None:
    server = UdsUnicastTransport(SOCKET_PATH)

    async def run_server():
        async with server.server():
            data = await server.recv()
            await server.send("peer", b"echo:" + data)

    async def run_client():
        client = UdsUnicastTransport(SOCKET_PATH)
        async with client.client():
            await client.send("server", b"ping")
            response = await client.recv()
            print(response.decode())

    await asyncio.gather(run_server(), run_client())

asyncio.run(main())

This transport is ideal for same-host communication where low latency and security isolation are required.

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

Built Distribution

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

File details

Details for the file swarmauri_transport_uds_unicast-0.1.0.dev39.tar.gz.

File metadata

  • Download URL: swarmauri_transport_uds_unicast-0.1.0.dev39.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_transport_uds_unicast-0.1.0.dev39.tar.gz
Algorithm Hash digest
SHA256 6db71dc1f01a7ac37ffa4ae7aa1f0933773664f335acfcfffb34ffe3ba725cd2
MD5 ac2a4624e200b38522ef08ccb88bd951
BLAKE2b-256 3f931bbad77dd7d53be6e27b1d947eb358d9f0c0c7bc80771d730b8b6937d321

See more details on using hashes here.

File details

Details for the file swarmauri_transport_uds_unicast-0.1.0.dev39-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_transport_uds_unicast-0.1.0.dev39-py3-none-any.whl
  • Upload date:
  • Size: 3.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_transport_uds_unicast-0.1.0.dev39-py3-none-any.whl
Algorithm Hash digest
SHA256 2a4f3dbb838a0c146fa8fb9a70c994f687e14407e0645e450f4bb488201e2098
MD5 910aa8cc4075cbdfc9c22de3c29355fd
BLAKE2b-256 6a2c11f1cc84cab01b7237d4725e724dc97919c13f64f6bae2c505a228abab04

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