Skip to main content

tinyray

A minimal, actor-only Ray for ML experiments. Rust core, Python API.

import tinyray as tr

@tr.remote(num_gpus=1, max_restarts=3)
class Rollout:
    def __init__(self, cfg):
        self.env = make_env(cfg)
    def step(self):
        return self.env.rollout()          # ~10 MB

rollouts = tr.create_actors(Rollout, cfg, count=32)   # atomic, all or nothing
refs = [r.step.remote() for r in rollouts]            # returns immediately
ready, pending = tr.wait(refs, num_returns=24)        # 24 finished; 8 still running
learner.update.remote(ready)                          # data goes rollout -> learner

wait returns two lists of ObjectRef, never values: ready are the ones that have settled, pending the ones still running. Both are just names -- a task id and the address of the actor holding the result -- so the driver moves a few dozen bytes per reference and never the payload. Passing ready to the learner hands over those names, and the learner fetches each 10 MB batch straight from the rollout that produced it.

Dropping the eight slow rollouts drops their results, not their work: they are still running, and their outputs still occupy the producers' stores until the watermark or TTL reclaims them. And if the group runs NCCL collectives, those same eight actors must still attend the next barrier -- see tinyray.collective.

What it is, and is not

tinyray is an HTTP control plane. The data plane belongs to the framework.

SGLang, vLLM, Megatron and torchrun already do distributed compute well. What they want from a cluster manager is placement, rank assignment, supervision and restart -- and then to be left alone.

  • Actors only. No stateless tasks. ML workers hold models and CUDA contexts.
  • HTTP for control. At 200 ms per call a ~200 us round trip is 0.1% overhead, and every message is inspectable with ordinary tools.
  • It never claims a process-global resource. A process has one default torch.distributed group, one CUDA context, one set of signal handlers. Those belong to your framework. tinyray assigns ranks and injects the torchrun environment; you call init_process_group yourself.
  • It supervises processes it did not write. An SGLang server is an ordinary process: give it GPUs, wait until it actually serves, label its logs, restart it when it dies.
  • No object store. For pure-Python rollouts a result stays in the actor that produced it and consumers fetch it directly. When a framework owns the data, tinyray moves references and nothing else.
@tr.remote(num_gpus=1)
class Trainer:
    def __init__(self):
        import torch.distributed as dist
        dist.init_process_group(backend="nccl")   # yours, not tinyray's

group = tr.create_worker_group(Trainer, size=8, name="trainer")
group.run("train_step", batch)          # dispatched to all ranks, then awaited

server = tr.launch_process(              # not a tinyray actor at all
    ["python", "-m", "sglang.launch_server", "--port", "{port}"],
    name="rollout", num_gpus=4, ready_when="http:/health",
)

Two details that are load-bearing rather than cosmetic:

  • Constructors run concurrently. A framework that rendezvous in __init__ blocks rank 0 until the last rank arrives, so constructing a group serially deadlocks on the first worker.
  • Readiness is observed, not assumed. An inference server binds its port minutes before it can answer; ready_when="http:/health" waits for the second event, not the first.

tinyray.collective still exists for pure-tinyray NCCL groups, but it takes the default process group and therefore cannot coexist with Megatron or SGLang. Use create_worker_group unless nothing else in the process wants that group.

Why Rust

An actor running a 200 ms training step holds the GIL. If the data path were Python, it could not serve result fetches during that time, and 32 actors fetching from each other would degrade to serial. The Rust core removes that coupling entirely:

10 MB decode idle 4 GIL-bound threads slowdown
native thread (the real serving path) 0.37 ms 0.38 ms 1.04x
initiated from Python 0.75 ms 36.7 ms 49x

Which also yields an architectural rule: the serving path must be driven by tokio, never by a Python-side loop. Work initiated from Python inherits GIL scheduling latency no matter how little of it runs in the interpreter, so /task/fetch never enters the interpreter at all.

Install

pip install tinyray

Wheels are built per interpreter version (3.9-3.13) for Linux and macOS on both x86_64 and aarch64. There is no abi3 build: the buffer protocol that makes results zero-copy is absent from the limited API on older interpreters, and version-specific wheels are a cheap price for it.

The package ships py.typed and hand-written stubs for the Rust extension, so type checkers see the full API.

From source

Requires a Rust toolchain.

python -m venv .venv
.venv/bin/pip install -e ".[dev]"
.venv/bin/maturin develop --release
pre-commit install

Tests

./scripts/test.sh                    # everything
cargo test --workspace               # 120 Rust tests
pytest tests/ -q                     # 216 Python tests
pytest benchmarks/ -q -s -m bench
python scripts/mutate.py             # 19 mutants: do the tests actually work?

Testing the tests

A green suite proves nothing about the tests. Three mechanisms keep them honest:

  • tests/test_suite_quality.py -- structural checks encoding the six blind spots that let real bugs through: unwired modules, timing constants that only ever run at their production value, options accepted but ignored, collapsed error taxonomies, untested lock branches, and design claims with no test.
  • tests/test_driver_byte_budget.py -- parks a 32 MB result in an actor, exercises every driver-side operation and asserts what crossed the driver's wire. The design's central claim is that payloads move between actors and never through the driver; this is where that claim is enforced for every operation rather than one.
  • scripts/mutate.py -- deliberately breaks 21 invariants and reports which ones the suite catches. It has already found three tests that passed while the behaviour they claimed to check was disabled.

Each check exists because a real bug got through in that exact shape.

Development

pre-commit install wires up the gates that CI also runs:

hook what it guards
ruff check / ruff format Python lint and formatting
cargo fmt / cargo clippy -D warnings Rust formatting and lint
mypy the public API's annotations, checked against the stubs

Releases are cut by pushing a v* tag; .github/workflows/release.yml runs the full suite, builds the wheel matrix and an sdist, and publishes to PyPI through a trusted publisher. workflow_dispatch targets TestPyPI by default so a dry run cannot reach the real index by accident.

Operations

tinyray status 127.0.0.1:41234 127.0.0.1:41235   # what is each actor doing?
tinyray introspect 127.0.0.1:41234               # raw report
tinyray health 127.0.0.1:41234

status calls out stalled callers, evictions, backpressure and stragglers, because "which actor is stuck, and on what?" is the question that dominates distributed ML debugging.

Layout

crates/tinyray-core/      wire protocol, framing, identifiers
crates/tinyray-runtime/   store, ordered queue, transport, cluster, collective, shm
crates/tinyray-py/        PyO3 bindings (all unsafe lives in buffers.rs)
python/tinyray/           API, serde, launcher, head, collective, pool, CLI

Download files

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

Source Distribution

tinyray-0.1.0.tar.gz (114.0 kB view details)

Uploaded Source

Built Distributions

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

tinyray-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

tinyray-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

tinyray-0.1.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (2.0 MB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

tinyray-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

tinyray-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

tinyray-0.1.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (2.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

tinyray-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

tinyray-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

tinyray-0.1.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (2.0 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

tinyray-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

tinyray-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

tinyray-0.1.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (2.0 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

tinyray-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

tinyray-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

tinyray-0.1.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file tinyray-0.1.0.tar.gz.

File metadata

  • Download URL: tinyray-0.1.0.tar.gz
  • Upload date:
  • Size: 114.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tinyray-0.1.0.tar.gz
Algorithm Hash digest
SHA256 52b30ed219239aded52261ea0fee6c2f816dd2eb752fda1d5de3c5e620df3743
MD5 9f4519bfe68d0c18e90c51fafe2a59a0
BLAKE2b-256 1f3e3e80de130b7f6b77ea21ec6cfe073288f656ec99135ec9d2b4909049021f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0.tar.gz:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd3f707ab96af4a91ecb2751e7ecaaf1374186540fbeda323ecadaa5f4806ab1
MD5 127438e425d97fd89c58c149d179d63b
BLAKE2b-256 e760ddee730935a3e3eabdbeadd639983ec74cae22ab1301c0429b0f722ceeda

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e825c50a31eeef572a186dbd92c03c198ca9e3b041c33a78f53feb315af95433
MD5 852425833c51da6bc2c7518e2d0761a0
BLAKE2b-256 1b7d8738479dda89afd1af0e6b6f2fa7ba95c57a9dc7ad85997132bf261d27c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 3fa779a2cf0a5cab22a7542a18e99672786df8f5173559c5348b3abd0c665b59
MD5 d8e9dcebbdb7fe3c635582c9fd58d274
BLAKE2b-256 d54dbf32839b5f59d4f54d9cf48972336cc0007e948aac2c9efd3053022d0b75

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3fc7acf022bcf68c505be97080a7435edbadb1e021c1eb3fb4b2d840f3ff762b
MD5 d72bc838e10edb8f0826ca0b9882ac2d
BLAKE2b-256 749251a651d7426b448230a422b45bb3f1e920e29ef84024aa7e3e7327832a4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c098daff3223dd288bf48f51960e0dddd852c866635b9ae20e4e630d5bc02375
MD5 a63e3985fc1b6abde136aeda05f10ac6
BLAKE2b-256 5264fd61f676598636e7ab3cecf97d0f7c98fa5729cef660046e6bb6ade25696

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 96df506b07e14d7a2ab3697a6a70b721523b948b716b1fb3fe19791ae4e1ee15
MD5 043b53f89b9bd7dc711c88a88dd12cc2
BLAKE2b-256 106a619d26dbe4573fb4618170780191944482ecbf59f99a5e957f300770c785

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa1661ba6b48e23b125a1ebcb90c086c74901fc884ad58e9c891e71ef4a66a30
MD5 c55cf97e15796ca58ff59788ddfa224d
BLAKE2b-256 bd25b945807c716ac3914b7a419443271907272b4ca79221537874015ab25ca8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 248c1f180720fef6b1c2798f31a82a5620ec449ca4f3762977e8f71ec4a0dd2b
MD5 6812241f5dccd7b0ecfedf6d73d8603b
BLAKE2b-256 bf7d418e4d73bafcecfd3b219eaa92d924a520ab0b13c0e730affb04c3a5b2f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 eeec7bc6ab12f8c2c4d19b6fea3309ec9b895bfc63da1bbf35d4b43c36dbc73b
MD5 08a468d45ac093f394bfdbf8b39b1aa4
BLAKE2b-256 8a04634a3c9869140964a350722c3b1ea6171b81c3a26bbe2fcd855081b97898

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5c28c42d9abb024a2b9c4c6c7a86905472ee8fc7f8fbbf18bea2be5c2c1c00e1
MD5 14ee15e55aec5b149d208cec1a905832
BLAKE2b-256 16704cd0aed29950bd6a0619447d8d314e9133f9f888e8380d770d1616941483

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b33b2130f745f65e0890cdb94da197d416fb3d3dcdc98e0bfe0b6123ff06e953
MD5 b99a4470da2e3efd8cda745a81888796
BLAKE2b-256 08ef99716b588a89d49e592be95fc6c040938a62e3389387e455ce30bd338d34

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 2014d4eb1c116d5a76859458f5af40db75a54ce3db4dc5c25d56bc35c8b2eb07
MD5 5d0caf54ea4f8de6f9f275b3b8f4c2c4
BLAKE2b-256 cffa70b9acb31abeb64c2430614f95310bd8d4b13c3f2c6e8fbfd2b700117dc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 80b329bf5c9f414a67c3ab5b36485e0e5033b68d6245bf41783294b014fbe413
MD5 e0a8f968a5c76c60d2eda26e4e471d70
BLAKE2b-256 292c7297743500e45d0b893d60dea82ea5d84cda999f15d6358211f76fcd71c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b383788ba96e139f0a991f572115f0b9938115b0411b1206e19c2f4c78943cd
MD5 35174d4710221cd38258cadca9699e51
BLAKE2b-256 04026dcbcdc1bf5a2b587302fe9b028a7e1f6ef3d20db8d362cdcdc43a8404d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tinyray-0.1.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tinyray-0.1.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 9fe25b3a1c569ffa051646310634b3678eed5b8864d34d47ed53104a6ce7bf4c
MD5 a324b1fef1ac518a574e96c1b4321a3c
BLAKE2b-256 2ae6267fe57c717ae046d19bcef3e8bdd00e1b90726f53b2c9fa733c5fd160ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tinyray-0.1.0-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on HSPK/tinyray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.13.0

13 files

0.12.0

13 files

0.11.0

13 files

0.10.0

13 files

0.9.1

13 files

0.9.0

13 files

0.8.1

13 files

0.7.1

13 files

0.6.1

13 files

0.6.0

13 files

0.5.0

13 files

0.4.1

13 files

0.4.0

13 files

0.3.0

13 files

0.2.1

16 files

0.2.0

16 files

This release

0.1.0 This release

16 files

0.0.3

16 files

0.0.2

16 files

0.0.1

16 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