Skip to main content

Fast TOON (Token-Oriented Object Notation) encoder. Byte-identical to the TOON spec, 8x faster than toons and 2.7x faster than the official TS SDK.

Project description

etoon

OpenSSF Scorecard SLSA 3 VirusTotal cargo audit

Fast TOON (Token-Oriented Object Notation) encoder for Python, Rust, and CLI.

8× faster than toons, 2.7× faster than the official TS SDK, byte-identical output.

中文說明

Performance

Measured on a 50-doc payload (7480 bytes JSON → 4012 bytes TOON):

Encoder Time vs etoon
etoon (Rust, native) 12.1 μs 1.00×
etoon (Python, PyO3) 15.4 μs 1.27×
@toon-format/toon (TS SDK) 35.6 μs 2.94×
py-rtoon 85.9 μs 7.10×
toons 106.4 μs 8.79×

CLI via stdin pipe (Claude / Bash workflows):

CLI Per call Relative
etoon 0.43 ms 1.00×
official toon 50.7 ms 118× slower

Auto-detect mode (v0.2.0+) — handles JSON, mixed log, and plain text:

Input Size Per call
Pure JSON (1000 objects) 120KB 0.73 ms
Mixed log (5K JSON + 5K text) 600KB 1.93 ms
Plain text pass-through 300KB 0.56 ms

Reproduce

# Encoder core benchmark (Rust native, no I/O)
cargo run --release --bin bench payload.json

# CLI stdin pipe benchmark
python3 -c "
import json
data = [{'id': i, 'name': f'item_{i}', 'price': i*1.5, 'tags': ['a','b','c']} for i in range(1000)]
print(json.dumps(data))
" > /tmp/bench.json

# Time 200 runs
start=$(date +%s%N)
for i in $(seq 1 200); do etoon < /tmp/bench.json > /dev/null; done
end=$(date +%s%N)
echo "$(echo "scale=2; ($end - $start) / 200000000" | bc)ms avg"

Install

CLI binary (recommended for LLM workflows)

Pre-built — no Rust required:

Download from GitHub Releases (Linux/macOS/Windows, x86_64/aarch64):

Linux
# x86_64
curl -L https://github.com/coseto6125/etoon/releases/latest/download/etoon-linux-x86_64 -o etoon

# Apple Silicon / ARM server (aarch64)
curl -L https://github.com/coseto6125/etoon/releases/latest/download/etoon-linux-aarch64 -o etoon

chmod +x etoon
sudo mv etoon /usr/local/bin/   # or ~/.local/bin/
macOS
# Apple Silicon (M1/M2/M3/M4)
curl -L https://github.com/coseto6125/etoon/releases/latest/download/etoon-macos-aarch64 -o etoon

# Intel Mac
curl -L https://github.com/coseto6125/etoon/releases/latest/download/etoon-macos-x86_64 -o etoon

chmod +x etoon
sudo mv etoon /usr/local/bin/
Windows
# PowerShell
Invoke-WebRequest -Uri "https://github.com/coseto6125/etoon/releases/latest/download/etoon-windows-x86_64.exe" -OutFile "etoon.exe"

# Move to a directory in your PATH, e.g.:
Move-Item etoon.exe "$env:USERPROFILE\.local\bin\etoon.exe"
Verify download (optional)

Each release includes SHA256 checksums, SLSA provenance attestation, and VirusTotal scan reports.

# 1. Verify checksum
curl -L https://github.com/coseto6125/etoon/releases/latest/download/SHA256SUMS.txt -o SHA256SUMS.txt
sha256sum -c SHA256SUMS.txt --ignore-missing

# 2. Verify SLSA provenance (requires gh CLI)
gh attestation verify etoon-linux-x86_64 --repo coseto6125/etoon

# 3. VirusTotal — scan report links are in the release notes

macOS unsigned binary note: xattr -d com.apple.quarantine etoon to bypass Gatekeeper.

From source (requires Rust toolchain):

cargo install etoon

Python library

pip install etoon

This installs the Python binding (etoon.dumps()), not the CLI binary. For the CLI, use one of the methods above.

Rust library

cargo add etoon --no-default-features

Usage

Python

import etoon
docs = [{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]
print(etoon.dumps(docs))
# [2]{id,name}:
#   1,Alice
#   2,Bob

CLI (Bash pipe)

curl -s https://api.example.com/data | etoon
cat data.json | etoon -o output.toon
aws logs tail /ecs/my-service | etoon        # mixed log: JSON blocks → TOON, text → pass-through
etoon --strict < data.json                   # error on non-JSON (old behavior)

LLM Agents — Setup Guide

Append | etoon to shell commands so the AI reads TOON instead of raw JSON — 40-60% fewer tokens, lossless, auto-detects input format.

gh pr list --json number,title,author | etoon
aws logs tail /ecs/my-service | etoon
kubectl get pods -o json | etoon

Rules:

  • | etoon goes at the end of the pipeline — jq / grep / awk before it, never after
  • Auto-detects JSON / mixed log / plain text — safe to append to any command
  • Skip only for: byte-exact diff, single-value lookups (1-2 lines)

Claude Code

Add to CLAUDE.md (or .claude/CLAUDE.md) in your project root:

## Bash Output

Append `| etoon` as the final pipe segment of any Bash command whose output
reaches the conversation. etoon auto-detects JSON, mixed log, and plain text.
Skip only for byte-exact diff or single-value lookups (1-2 lines).

Cursor

Add to .cursor/rules/etoon.mdc:

---
description: Compress shell output with etoon
globs:
alwaysApply: true
---

When running shell/terminal commands, append `| etoon` as the last pipe segment.
etoon auto-detects JSON, mixed log, and plain text — safe for any command.
Skip only for byte-exact diff or single-value lookups (1-2 lines).

OpenAI Codex CLI

Add to AGENTS.md in your project root:

## Bash Output

Append `| etoon` as the final pipe segment of any shell command.
etoon auto-detects JSON, mixed log, and plain text (non-JSON passes through unchanged).
Skip only for byte-exact diff or single-value lookups (1-2 lines).

Windsurf / Other AI Editors

Add to .windsurfrules (Windsurf) or the equivalent rules file:

When executing shell commands, always append `| etoon` at the end of the pipeline.
etoon auto-detects input format: JSON → compact TOON, mixed log → JSON blocks encoded + text pass-through, plain text → unchanged.
Skip only for byte-exact diff or single-value lookups (1-2 lines).

Gemini CLI

Add to GEMINI.md in your project root:

## Bash Output

Append `| etoon` as the final pipe segment of any shell command.
etoon auto-detects JSON, mixed log, and plain text (non-JSON passes through unchanged).
Skip only for byte-exact diff or single-value lookups (1-2 lines).

ChatGPT / Custom GPTs

Add to system prompt or custom instructions:

When generating shell commands for the user, append `| etoon` as the last pipe segment.
etoon converts JSON to TOON (40-60% fewer tokens). Non-JSON passes through unchanged.

Rust

let json_bytes = serde_json::to_vec(&my_data)?;
let toon = etoon::toon::encode(&json_bytes)?;

Architecture

Python dict → orjson.dumps → JSON bytes → sonic-rs (SIMD parse) → walk → TOON string

Key optimizations:

  • sonic-rs SIMD JSON parser (~7× faster than serde_json)
  • orjson bridge — single boundary crossing (vs PyO3-based alternatives)
  • uniform-order table fast path — skips 300 key lookups per 50-row table
  • itoa specialized integer formatting

Compatibility

Output is byte-identical to the toons Python package (Apache 2.0) and the official toon-format/toon TypeScript SDK. Passes 111/111 TOON spec fixtures covering primitives, objects, arrays (primitive/tabular/nested/bulleted), and whitespace.

Advanced options

These are TOON spec optional parameters, intended for programmatic use in your codebase (Python / Rust library calls). The CLI | etoon pipe for LLM workflows uses defaults and does not need these.

# Custom delimiter (when values contain commas)
etoon.dumps(data, delimiter="|")   # or "\t"

# Key folding: collapse {a:{b:{c:1}}} → "a.b.c: 1"
etoon.dumps(data, fold_keys=True)
etoon.dumps(data, fold_keys=True, flatten_depth=2)  # partial fold

Limitations

  • Integers > 2⁶³ are lossily coerced via f64 (works for most common big integers that happen to be representable; arbitrary-precision is not supported).
  • Custom indent is hardcoded to 2 spaces (TOON spec default).

License

Apache 2.0. Test fixtures in tests/fixtures/ are sourced from the toons project (Apache 2.0).

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

etoon-0.2.1.tar.gz (36.5 kB view details)

Uploaded Source

Built Distributions

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

etoon-0.2.1-cp313-cp313-win_amd64.whl (273.7 kB view details)

Uploaded CPython 3.13Windows x86-64

etoon-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (371.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

etoon-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (342.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

etoon-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (320.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

etoon-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl (341.4 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

etoon-0.2.1-cp312-cp312-win_amd64.whl (273.7 kB view details)

Uploaded CPython 3.12Windows x86-64

etoon-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (371.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

etoon-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (342.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

etoon-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (320.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

etoon-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl (341.5 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

etoon-0.2.1-cp311-cp311-win_amd64.whl (275.4 kB view details)

Uploaded CPython 3.11Windows x86-64

etoon-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (371.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

etoon-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (343.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

etoon-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (321.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

etoon-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl (342.1 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

etoon-0.2.1-cp310-cp310-win_amd64.whl (275.3 kB view details)

Uploaded CPython 3.10Windows x86-64

etoon-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (371.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

etoon-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (343.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

etoon-0.2.1-cp310-cp310-macosx_11_0_arm64.whl (321.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

etoon-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl (342.1 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file etoon-0.2.1.tar.gz.

File metadata

  • Download URL: etoon-0.2.1.tar.gz
  • Upload date:
  • Size: 36.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for etoon-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e09affb672c7da48b60d412466d0db51591d25eb79e42c8e0ab08c32471e79f1
MD5 2fcca41a72e7878b2858eb641b6313db
BLAKE2b-256 ef0d5c3af5b8cb679cb77db7d9c250acff029d23733cedf2bee4b7997490e0ef

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: etoon-0.2.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 273.7 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for etoon-0.2.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 28b93fb69116a4211cc8179e8e44632a9da2ce14317d85eb45dbd2d4ebdf608d
MD5 e370c02715407c0e9c84881125b3294f
BLAKE2b-256 1d628e4b855d8fc41ba8ab50d83f9c14693432970c38a71912f3840b6807d2b8

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 951ecc223f98abe9609452ebf161766f54575eba20149a1dc5d1a36ba8a65ce7
MD5 01123ac3bec0664bb63edbd7a4b5ddf5
BLAKE2b-256 02869742957681896474220ef588f0bb4a5cdc9424a52a5b6806ea5749585fba

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7c82bb1461281c31d4061f220fb31595b72dcbb8b8f0943628ac5cd2cc52e3ea
MD5 2410f0c3c31e9703029e5f6dac6ae583
BLAKE2b-256 9fb35fb267e140ac50226adae877d76d70b4d1bf0bf900149cb6fd4824080ae2

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 02a0f9a79aa802ffad6e57a37e06393ca42756e70d9f01dfaf1394298c2cadf0
MD5 84dbd99b43bf6870c49b2a94c3c0b0c1
BLAKE2b-256 79d5dbfbc8794dca5953ad0a52652f0e8f46f6fd9d83fbb88a4cd855c1001cad

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1028549a5b69c286487cbd1e59de1878f3c99a06f83965cb6f2f31fc584d5e04
MD5 bc2d43ad27b264985a98380a14bfe7cf
BLAKE2b-256 0d90422747caafd5cd1e79ae39fd238f7b0c1e0536c9b8c5c58048d4c6630b3d

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: etoon-0.2.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 273.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for etoon-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8cec26bb16f356d20cb2f3087102936e997abee4d323844d3fa8047d7b2d29b8
MD5 38f3edc320e89e8a777dfa0b9e30e088
BLAKE2b-256 7ea58ab4525bb918f110f60ed1848adf51d4663e3fc73dcfafbbb7576e74b026

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b19a90e299ead725aa224be7fe0bb97dfcdda6b2ec5a5e1e3d548638abd431d9
MD5 5f03b177df589fe67d4a23446b6e11a3
BLAKE2b-256 d953304ac95d5c2021544fa787c3276b54bdc693fdf00e34b6b17cd43f5cde64

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d6de7777571897405cdb9a5a7cc982aefb0e6a24e36de0e3f57bcc79922d67bf
MD5 010fe4962a28c8b4219579dd57f29330
BLAKE2b-256 0cf6e143b45a2bca58403e59a54debcf2b2cb1bda7aa5341210f1d9dae73cfee

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ee514422e7f299d223ddeac202b82589dda032499b7280b46988d702b74cb0a7
MD5 7ee8cb94b67e6e2b63156316d89ac0db
BLAKE2b-256 1402e36052a4738815c709767cc483027983087f12faf6a917fb67caebf83683

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 68b7c24cb692a5d0e0b84843165314bb8f106ef38bd9883299f4d919fab0e616
MD5 22fcef9a93f0ad37113961b5ebb04348
BLAKE2b-256 4f410e760336fe30c7dc802c4410a932c42eb05e8a40873e955299e5de5b4bf7

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: etoon-0.2.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 275.4 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for etoon-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 866db3996ffa4e24f49fe7a1ecb40ec16f01fd6990b1060ec712dfb0d2c624e1
MD5 ca8f33b558f99cce64d80a1a051bc77a
BLAKE2b-256 d0866315d576617e5d201590e1320afb4c0edf755e2777b14e67f0bbddc39434

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 142fa8fa218f92d119bebaa0a614e9ca957e92c1f9e06988195b80e52e22ad7b
MD5 2de080b40389cf01e9c3a3272561c8e8
BLAKE2b-256 60bafd35ecf31f55044798688bc02aaaf680fe4a0c8346100a1e7b7828c65062

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6a1c15f2d1b0617c4f475c660b12ededd6f950191f78188bbf246a09a7ddc0c7
MD5 d2419b05f659944c60adebfd60e921a4
BLAKE2b-256 c4b09a6d7dd69d765a2ba2855c2c20f5eb5d862deeeae63d4e0588329b572e7b

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f8ffdeaccdfbe522ba84913c20d941658a9d02f19057f1069e2c94efccffaf57
MD5 aa4e8981aa56eae6595b43edec67b454
BLAKE2b-256 c006a7e25395725950eba193ee9d4ac762420c3a73b97ca1a4f0b3c73d1c1c4e

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9ae783d0e344728347fc5e48aa3b04fcac5fd8d5cf8b94e92a253f92d1786326
MD5 9ee6245cf25bbeb1eb0645c8c988cd91
BLAKE2b-256 d4a86cbc1b4a9ba9705008131218a87873dfcd30eba1920505b6eec8abe07ab0

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: etoon-0.2.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 275.3 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for etoon-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ed7d2fda264c336abcbe84edaf9170d0f35be1599051a621e8c65628cfd9571d
MD5 c5c4388e66da66ada3b1b90841745b8d
BLAKE2b-256 7c48de7659c6b036f6e7684678fcdac56145af14ddaf0a2091e1d4138c3d90eb

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a22b6a49cb8825343d511cecca4ea732d66943799f8ae9460220c2267fe1d79d
MD5 464379bfb5e6ee060d9e44accbe667f9
BLAKE2b-256 6f3fda527df488f72d2b44de5378574fc46716a0d7557e87bbc14d13198792de

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d321817e79e6afe5068c2c2bc688498bb72220bf5dabaf11ea37724d70bcdee3
MD5 c56b5269ea1fc06b9e4e13b7194d867c
BLAKE2b-256 0e8cbd1406a34970f3234d03c25e788325a26dd996bc8470dc601157659f0223

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6ae78204692e77fea74e8eda17362bb01c6c551d759ac46b53b0dff9c7026f61
MD5 624b357db7560f455634dcd3a9d4d91b
BLAKE2b-256 af1fe2a7aa694eae328b0e85f62275ab50626fe8b0f353d4293d7a5649385812

See more details on using hashes here.

File details

Details for the file etoon-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for etoon-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7127cf4854df2ab5dde78e98d2bb2c83aacfe0e0d77638e9a3107ec315ae42d5
MD5 516636938bc721708e78b4ed07f0942c
BLAKE2b-256 6d5409c1b39754206b661f19028046f06326f4f6903584ee02d90ef6e4d1f390

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