Skip to main content

nono-py

Python bindings for nono, a capability-based sandboxing library.

nono provides OS-enforced sandboxing using Landlock (Linux) and Seatbelt (macOS). Once a sandbox is applied, unauthorized operations are structurally impossible.

Installation

pip install nono-py

From source

Requires Rust toolchain and maturin:

pip install maturin
maturin develop

Usage

from nono_py import CapabilitySet, AccessMode, apply, is_supported

# Check platform support
if not is_supported():
    print("Sandboxing not supported on this platform")
    exit(1)

# Build capability set
caps = CapabilitySet()
caps.allow_path("/tmp", AccessMode.READ_WRITE)
caps.allow_path("/home/user/project", AccessMode.READ)
caps.allow_file("/etc/hosts", AccessMode.READ)
caps.block_network()

# Apply sandbox (irreversible!)
apply(caps)

# Now the process can only access granted paths
# Network access is blocked
# This applies to all child processes too

API Reference

Sandboxing

CapabilitySet + apply()

Sandbox the current process (irreversible):

caps = CapabilitySet()
caps.allow_path("/tmp", AccessMode.READ_WRITE)
caps.block_network()
apply(caps)  # Process is now sandboxed

sandboxed_exec

Run a command in a sandboxed child process. The parent stays unsandboxed and can call this repeatedly with different capabilities:

caps = CapabilitySet()
caps.allow_path("/workspace", AccessMode.READ_WRITE)
caps.block_network()
result = sandboxed_exec(
    caps,
    ["python", "agent.py"],
    cwd="/workspace",
    timeout_secs=30.0,
)
print(result.stdout, result.exit_code)

sandboxed_exec does not inherit the parent process environment by default. Pass only the variables the child needs through env=[("NAME", "value")]. Full parent environment inheritance requires inherit_env=True; dynamic-loader variables such as LD_* and DYLD_* are rejected.

On timeout, sandboxed_exec kills the sandboxed command's process group so ordinary forked descendants are terminated with the direct child.

sandboxed_exec(..., max_processes=N) sets RLIMIT_NPROC in the child before exec. This is only meaningful when sandboxed executions run as a dedicated Unix UID, because the kernel counts all processes already owned by that real UID, not only processes in the sandbox tree. On a normal shared user account, setting a small value such as 8 can make the sandboxed program's first fork() fail with EAGAIN because the user already owns more than eight processes; it does not provide a reliable per-sandbox fork limit. Use cgroup pids.max or a dedicated container/microVM boundary for strong per-execution fork containment.

On Linux kernels before 6.7, proxy_only() uses a seccomp notification supervisor. The default listener handoff works under the unmodified Docker/containerd and AWS Fargate seccomp profile with all capabilities dropped; it does not require CAP_SYS_PTRACE, a privileged container, or a custom profile. NONO_PY_PROXY_HANDOFF=pidfd temporarily selects the one-release legacy rollback path. That legacy path may require a custom profile allowing only pidfd_getfd on ECS-EC2/EKS and is not suitable for Fargate.

For one compatibility release, sandboxed_exec(..., enforcement_mode="auto") retains the Landlock-first network behavior. Pass enforcement_mode="seccomp" to layer a static seccomp baseline under Landlock: plain block_network() denies non-Unix sockets, and policies with TCP port exceptions deny UDP, raw/non-IP sockets, and io_uring_setup(). The io_uring denial also affects programs using it only for file I/O. A future release will promote this baseline into Python's "auto" mode; "landlock" remains the explicit Landlock-only selection.

Unix-domain socket grants are trusted IPC channels. nono-py scrubs inherited descriptors before exec, but an allowed Unix peer can deliberately pass an already-connected Internet socket with SCM_RIGHTS; creation-time seccomp and Landlock connect/bind rules cannot retroactively restrict that descriptor.

Network Proxy

Domain-filtered network access for sandboxed children. The proxy intercepts outbound HTTP requests and enforces a host allowlist. For API calls, it performs credential injection: the sandboxed process sends a dummy token, and the proxy transparently swaps in the real API key (loaded from the OS keyring) before forwarding upstream. The sandboxed process never sees the real secret.

from nono_py import ProxyConfig, RouteConfig, start_proxy

config = ProxyConfig(
    allowed_hosts=["api.openai.com", "*.anthropic.com"],
    routes=[
        RouteConfig(prefix="/openai", upstream="https://api.openai.com", credential_key="openai-key"),
    ],
)
proxy = start_proxy(config)

# Inject only the current proxy/session env vars into the sandboxed child
env = proxy.sandbox_env(extra_env=[("NONO_SESSION_ID", "session-001")])
result = sandboxed_exec(caps, ["python", "agent.py"], env=env)

# Audit trail
events = proxy.drain_audit_events()
proxy.shutdown()

Filesystem Snapshots

Content-addressable snapshots with Merkle-committed state and rollback:

from nono_py import SnapshotManager, ExclusionConfig

mgr = SnapshotManager(
    session_dir="~/.nono/rollbacks/session-001",
    tracked_paths=["/workspace"],
    exclusion=ExclusionConfig(exclude_patterns=["node_modules", "__pycache__"]),
)
mgr.create_baseline()

# ... agent runs and modifies files ...

manifest, changes = mgr.create_incremental()
for change in changes:
    print(f"{change.change_type}: {change.path}")

# Roll back
mgr.restore_to(snapshot_number=0)

Audit Trail

Append-only, Merkle-chained audit logging with tamper detection:

from nono_py.audit import AlphaRecorder, verify_log, iter_session, session_started, session_ended

recorder = AlphaRecorder()
with open("audit-events.ndjson", "w") as f:
    recorder.write(f, session_started(started="2026-01-01T00:00:00Z", command=["agent"]))
    recorder.write(f, session_ended(ended="2026-01-01T00:05:00Z", exit_code=0))

# Verify integrity — detects any tampering
result = verify_log("/path/to/session")
assert result["records_verified"]

Resource Limiting

Run a command under a memory ceiling and/or a process-count cap by driving the tested nono CLI (Linux + cgroup v2):

  • memory= sets memory.max: a tree that exceeds it is OOM-killed (exit 137, surfaced as result.oom_killed).
  • max_processes= sets pids.max: at the cap the kernel refuses new fork/clone with EAGAIN. Nothing is killed — the offending process just fails to spawn — so there is no fixed exit code, only the command's own non-zero status.
from nono_py import AccessMode, CapabilitySet
from nono_py import limited

caps = CapabilitySet()
caps.allow_path("/work", AccessMode.READ_WRITE)

result = limited.run(caps, ["python", "hog.py"], memory="512M", max_processes=64)
if result.oom_killed:
    print("process exceeded its memory cap and was killed")
elif not result.ok:
    print(f"failed ({result.returncode}): {result.stderr}")

Enforcement lives in the nono binary (found on PATH, via NONO_BIN, or nono_bin=), not in-process — resource limits need an un-sandboxed supervisor parent, unlike apply(). Filesystem grants and block_network() are translated to CLI flags; proxy_only() is not carried across the subprocess boundary.

Other Classes

  • QueryContext - Check permissions without applying the sandbox
  • SandboxState - Serialize/restore capability sets as JSON
  • SupportInfo - Platform support details
  • Policy / ResolvedPolicy - Load and resolve policy.json documents
  • SessionMetadata - Session audit trail with Merkle roots and network events
  • ExecResult - Result of sandboxed_exec (stdout, stderr, exit_code)
  • InjectMode - Credential injection method enum

Functions

  • apply(caps) - Apply sandbox (irreversible)
  • sandboxed_exec(caps, command, ...) - Run command in sandboxed child
  • start_proxy(config) - Start network filtering proxy
  • is_supported() / support_info() - Platform support
  • load_policy(json) / load_embedded_policy() - Policy loading
  • embedded_policy_json() - Raw embedded policy JSON
  • validate_deny_overlaps(paths, caps) - Validate deny paths against capabilities

Platform Support

Platform Backend Requirements
Linux Landlock Kernel 5.13+ with Landlock enabled
macOS Seatbelt macOS 10.5+
Windows - Not supported

Development

# Install dev dependencies
pip install maturin pytest mypy

# Build and install for development
make dev

# Run tests
make test

# Run linters
make lint

# Format code
make fmt

License

Apache-2.0

Download files

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

Source Distribution

nono_py-0.15.0.tar.gz (289.5 kB view details)

Uploaded Source

Built Distributions

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

nono_py-0.15.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nono_py-0.15.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

nono_py-0.15.0-cp314-cp314-macosx_11_0_arm64.whl (7.9 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

nono_py-0.15.0-cp314-cp314-macosx_10_12_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

nono_py-0.15.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nono_py-0.15.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

nono_py-0.15.0-cp313-cp313-macosx_11_0_arm64.whl (7.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

nono_py-0.15.0-cp313-cp313-macosx_10_12_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

nono_py-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nono_py-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

nono_py-0.15.0-cp312-cp312-macosx_11_0_arm64.whl (7.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

nono_py-0.15.0-cp312-cp312-macosx_10_12_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

nono_py-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nono_py-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

nono_py-0.15.0-cp311-cp311-macosx_11_0_arm64.whl (7.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

nono_py-0.15.0-cp311-cp311-macosx_10_12_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

nono_py-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nono_py-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

nono_py-0.15.0-cp310-cp310-macosx_11_0_arm64.whl (7.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

nono_py-0.15.0-cp310-cp310-macosx_10_12_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file nono_py-0.15.0.tar.gz.

File metadata

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

File hashes

Hashes for nono_py-0.15.0.tar.gz
Algorithm Hash digest
SHA256 2c2d2e75fa62e22bcf54e55b73b3833863083ff543c26609753f448a6b65cb31
MD5 c30369c83f0aab8127b77349c0bdb7d0
BLAKE2b-256 421da76da12c8c9559a754b23622623efdf0c6043a3abf9316f1622066b33570

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0.tar.gz:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 81f239a5d879f4e6f714004045b1214fd3af935ddacf33db89c8674165d7660b
MD5 a74337814e7ca231d56fd5edbca523c5
BLAKE2b-256 271e7d6714b69923393c3865c2e7cbd4d0b59a731f22006091f90f96723772bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2d1ae401ab0d3b166299997abbd3bee00d65ada90d28c8693f6d94c24ed1d4b9
MD5 278d5c7374b8b42fe1806dd24642bf47
BLAKE2b-256 588e5eb4728c5b4204567445c5787f82d24e9433099808bb47f92ebe7d176584

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8e4534568bd813ed9a5e5e72c5600607e57bbbfa022292508c5b1e4d07c7fa0
MD5 ddb2583c556aa30ff62af493a08ce0a3
BLAKE2b-256 193016fe4edc3d3eacfdcd4252272e5817e336d52819b99ec945531fc1f7cd7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e4b1231d7ef8ac01cf9b8d8413242622679e8b0b0713e5ed0095f46c6a9f1ac7
MD5 35286388351c3fb95d58335861775536
BLAKE2b-256 43728ab8debdadbf98cb57125cf5cd07fe8bc0b47af9f647e78ed6a96e2a0f6e

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 15da5e2c15798556ca828ee439410341a4519e207b4d6b4f90563e74836a9f42
MD5 e7fd293fa52d61433990352dfaf416f3
BLAKE2b-256 c8ef3a93838416a0c9312623e37f39d3555ee6128c254fd555af34f92f2af8f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a99c256eba23813622eba40ca3971f95eceaddd2d9fb243d2d25caac06a99554
MD5 bb7403b4f9fbb03ff4504522d424b644
BLAKE2b-256 1f75b7a1d8a2525a5dd83b5769c394937156da10339f85bd1da49194bad18c9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b362ebd56e46504babdb6870c65f9a91006526451439cfa9d797d723241cea91
MD5 97051543aa40d5a6c2a906336dfd39a5
BLAKE2b-256 34406edf85d077948be20591dce03bcdf9972c4b1e9269e610991dff6306ca18

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ae00e8c957811bc4b8295442b9ae24e2aa361b96d6bbe76774fd63323a041bfa
MD5 db644734cfdde937a9d120ad1856896b
BLAKE2b-256 84b61856a2803efe90a2ff97e972f27a1419bb6535189f0044d43fdfa3fdb4ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 36b54c114ed740e355fb81e1a33036d0c1e10bb0a063621363d668667e1162f4
MD5 59d9f8e470b1147f35e4e08bb0548458
BLAKE2b-256 04845f818df39a9a7383c02d261d6c600b18d4d7fe050bf7577238b1d55bb6a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e79294565becbec85e5e10c48a6c1bdc280514a817d2c5c55906ecad81939ca9
MD5 d8f9bd9749f1fe0f92644e42c915065c
BLAKE2b-256 697438b7f1c032c5bc342e2a7caaf2acedd34ecaf21c83b52b4c36104a21b730

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 24e9a364575d8de40a94e529192c5d4a3bc5eed2a4db79bb16cf3e761cf66661
MD5 de1bfa6b1f51fbb17b7495c5b8619d31
BLAKE2b-256 8609b9f355789bd2039507efb71da7a34f70c3bfc6f3ac0cad958b0ce605f614

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c07c822489e7ddec1766bce49e70dff37995a73555db15544c956a8622bbbbc5
MD5 4cccd7890e9ba67830aa000545abc83a
BLAKE2b-256 85e653bdc99418819e13356319407c07b5de83527ff5a956258ffcae9745ff4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4c9b02b35d92c01aeafa75dc7f16ff7ab407d1d6700fbd4d85783b71f67ef7de
MD5 736ca1917ce7e0f84de1a583aac136c2
BLAKE2b-256 46e9f1ab1290d5f8747c7218a10fbaf272def7a7a9c371812c98d14d11d022ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9134a1913d9c32935b830547ba9dbfde5c3dfd8ff591e148c4498d28170ab3a8
MD5 d69c884106f008249e4d7e8af3de0f2f
BLAKE2b-256 f24152d587c40ff37d208415b144ed465883aa0ba36472b8bfb98e88f70aa175

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de84ce39173c1f1f71cb31c11b67d031f5b4f73a4bbd2fa9ca4894744fd60755
MD5 d0e957478289d6aac02cca3df05c3bbf
BLAKE2b-256 f15d0ffbddda37b6e989faba70893747bae73b83160b7d4e28795e25f96c6682

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d289a88560ca24a122fc00d218f032fa74aff5aafdce621364c7be19037de1e5
MD5 c4ea3f3409d3bce534d0d1500151d359
BLAKE2b-256 6dd76fcbba69c5af9881884d8b361318782651b40337d55f6e57be6d633389a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7eb23702285eb92de1f3cb0b7d83982a511c9ebec583969e569bbed835471c7a
MD5 03aaebf25201ca979cde3a4099b8f180
BLAKE2b-256 7e777a8a9efcf2d9a933a65ed1169d37b0fe35f782ceba56ac38af8953a91657

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2dca03b643b1ea8a52fc21bbab43c6c496f9d19833536a5cf26e548a43ef879c
MD5 2ae0dd308222f82a73570b1499d2087b
BLAKE2b-256 785ef0cec8622a85c11fc93818499e5721e9428fa76e5513a8e00b0131208525

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ee5b0db699ad045524d126cf0b8a1eda2904c181bfb4e63c674173d672135a6d
MD5 baeffb756d37339a38a50a96edaa11b4
BLAKE2b-256 843b18472897285f99c34a3db45879fe57e56d5ef0664ae60022b7dab515842f

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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

File details

Details for the file nono_py-0.15.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for nono_py-0.15.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1942cc39646c9e22f2af310ce7035368027b2b9d7bbf1c4ac61bb9b88047a7c2
MD5 40a8feaceeeafed30d2095522ee96131
BLAKE2b-256 bdae93f011b94a3b3d2b67d85044fd1be5b34d97b60ffaef5170927c3b62f449

See more details on using hashes here.

Provenance

The following attestation bundles were made for nono_py-0.15.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: auto-release.yml on nolabs-ai/nono-py

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.16.0

21 files

This release

0.15.0 This release

21 files

0.14.0

21 files

0.13.0

21 files

0.12.0

21 files

0.11.0

21 files

0.10.1

21 files

0.10.0

21 files

0.9.2

21 files

0.9.0

21 files

0.8.0

13 files

0.7.2

13 files

0.7.0

13 files

0.6.0

13 files

0.5.0

13 files

0.4.2

13 files

0.4.0

13 files

0.3.1

13 files

0.2.0

13 files

0.1.0

13 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