Skip to main content

Speed up file transfers with the baseten.co + baseten_fs.

Project description

Truss-Transfer

Python-optional download utility for resolving Baseten Pointers (bptr).

Installation

pip install truss-transfer
# pip install /workspace/model-performance/michaelfeil/truss/truss-transfer/target/wheels/truss_transfer-0.1.0-cp39-cp39-manylinux_2_34_x86_64.whl

How to Resolve a bptr

Via Python Package

import truss_transfer

# Resolve bptr using default download directory from environment
result_dir = truss_transfer.lazy_data_resolve()

# Resolve bptr with custom download directory
result_dir = truss_transfer.lazy_data_resolve("/custom/download/path")

# Example usage in a data loader
def lazy_data_loader(download_dir: str):
    print(f"download using {truss_transfer.__version__}")
    try:
        resolved_dir = truss_transfer.lazy_data_resolve(str(download_dir))
        print(f"Files resolved to: {resolved_dir}")
        return resolved_dir
    except Exception as e:
        print(f"Lazy data resolution failed: {e}")
        raise

Via CLI

# Using the compiled binary
./target/x86_64-unknown-linux-musl/release/truss_transfer_cli /tmp/download_dir

# Using the Python package CLI
python -m truss_transfer /tmp/download_dir

How to Build a bptr and Save it via Python

You can create Baseten Pointers from HuggingFace models using the Python API:

import truss_transfer
import json

# Define models to include in the bptr
models = [
    truss_transfer.PyModelRepo(
        repo_id="microsoft/DialoGPT-medium",
        revision="main",
        volume_folder="dialogpt",
        kind="hf",  # "hf" for HuggingFace, "gcs" for Google Cloud Storage
        runtime_secret_name="hf_access_token",
        allow_patterns=["*.safetensors", "*.json"],  # Optional: specific file patterns
        ignore_patterns=["*.txt"]  # Optional: patterns to ignore
    ),
    truss_transfer.PyModelRepo(
        repo_id="julien-c/dummy-unknown",
        revision="60b8d3fe22aebb024b573f1cca224db3126d10f3",
        volume_folder="julien_dummy",
        runtime_secret_name="hf_access_token_2"
    )
]

# Create the bptr manifest
bptr_manifest = truss_transfer.create_basetenpointer_from_models(models)

# Save to file
with open("/bptr/bptr-manifest", "w") as f:
    f.write(bptr_manifest)

# Or parse as JSON for programmatic use
manifest_data = json.loads(bptr_manifest)
print(f"Created bptr with {len(manifest_data)} pointers")

PyModelRepo Parameters

  • repo_id: Repository identifier (e.g., "microsoft/DialoGPT-medium")
  • revision: Git commit hash or branch name (e.g., "main", commit hash)
  • volume_folder: Local folder name where files will be stored
  • kind: Repository type - "hf" for HuggingFace, "gcs" for Google Cloud Storage
  • runtime_secret_name: Name of the secret containing access token
  • allow_patterns: Optional list of file patterns to include
  • ignore_patterns: Optional list of file patterns to exclude

End-to-End Flow

Here's a complete example of creating and resolving a bptr:

Step 1: Create a bptr Manifest

import truss_transfer
import json
import os

# Create models configuration
models = [
    truss_transfer.PyModelRepo(
        repo_id="microsoft/DialoGPT-medium",
        revision="main",
        volume_folder="dialogpt",
        runtime_secret_name="hf_access_token"
    )
]

# Generate the bptr manifest
bptr_manifest = truss_transfer.create_basetenpointer_from_models(models)

# Ensure the directory exists
os.makedirs("/bptr", exist_ok=True)

# Save the manifest
with open("/bptr/bptr-manifest", "w") as f:
    f.write(bptr_manifest)

print("bptr manifest created successfully!")

Step 2: Set up Environment (Optional)

# Configure download location
export TRUSS_TRANSFER_DOWNLOAD_DIR="/tmp/my-models"

# Enable b10fs caching (optional)
export BASETEN_FS_ENABLED=1

# Set up authentication (if needed)
export HF_TOKEN="your-huggingface-token"
# Or use the official HuggingFace environment variable
export HUGGING_FACE_HUB_TOKEN="your-huggingface-token"

Step 3: Resolve the bptr

import truss_transfer

# Resolve the bptr - downloads files to the specified directory
resolved_dir = truss_transfer.lazy_data_resolve("/tmp/my-models")
print(f"Files downloaded to: {resolved_dir}")

# Now you can use the downloaded files
import os
files = os.listdir(resolved_dir)
print(f"Downloaded files: {files}")

Step 4: Use the Downloaded Files

# Example: Load a model from the resolved directory
model_path = os.path.join(resolved_dir, "dialogpt")
# Your model loading code here...

Complete Workflow

# Complete example combining creation and resolution
import truss_transfer
import json
import os

def create_and_resolve_bptr():
    # 1. Create bptr manifest
    models = [
        truss_transfer.PyModelRepo(
            repo_id="microsoft/DialoGPT-medium",
            revision="main",
            volume_folder="dialogpt",
            runtime_secret_name="hf_access_token"
        )
    ]

    bptr_manifest = truss_transfer.create_basetenpointer_from_models(models)

    # 2. Save manifest
    os.makedirs("/bptr", exist_ok=True)
    with open("/bptr/bptr-manifest", "w") as f:
        f.write(bptr_manifest)

    # 3. Resolve bptr
    resolved_dir = truss_transfer.lazy_data_resolve("/tmp/my-models")

    # 4. Verify files were downloaded
    dialogpt_path = os.path.join(resolved_dir, "dialogpt")
    if os.path.exists(dialogpt_path):
        files = os.listdir(dialogpt_path)
        print(f"Successfully downloaded {len(files)} files to {dialogpt_path}")
        return dialogpt_path
    else:
        raise Exception("Model files not found after resolution")

# Run the workflow
model_path = create_and_resolve_bptr()

Environment Variables and Settings

The following environment variables can be used to configure truss-transfer behavior:

Core Configuration

  • TRUSS_TRANSFER_DOWNLOAD_DIR (default: /tmp/bptr-resolved)

    • Directory where resolved files will be downloaded
    • Used when no explicit download directory is provided
    • Can be overridden by passing a directory to the CLI or Python function
  • RUST_LOG (default: info)

    • Controls logging level: error, warn, info, debug, trace
    • Example: RUST_LOG=debug for detailed logging

Authentication

  • HF_TOKEN (optional)

    • HuggingFace access token for accessing private repositories
    • Takes precedence over HUGGING_FACE_HUB_TOKEN
    • Used when runtime_secret_name is hf_token or hf_access_token
  • HUGGING_FACE_HUB_TOKEN (optional)

    • Official HuggingFace Hub token environment variable
    • Used as fallback if HF_TOKEN is not set
    • Allows access to private HuggingFace repositories

Baseten FS (b10fs) Configuration

  • BASETEN_FS_ENABLED (default: false)

    • Enable/disable Baseten FS caching: 1/true to enable, 0/false to disable
    • When enabled, files are cached in /cache/org/artifacts/truss_transfer_managed_v1
  • TRUSS_TRANSFER_B10FS_CLEANUP_HOURS (default: 96)

    • Hours after last access before deleting cached files from other tenants
    • Helps manage disk space by removing old cached files
    • Example: TRUSS_TRANSFER_B10FS_CLEANUP_HOURS=48 for 2 days
  • TRUSS_TRANSFER_B10FS_DOWNLOAD_SPEED_MBPS (default: 350)

    • Expected download speed in MB/s for b10fs performance benchmarking
    • Used to determine if b10fs is faster than direct download
    • Lower values make b10fs more likely to be used

Example Configuration

# Basic setup
export TRUSS_TRANSFER_DOWNLOAD_DIR="/tmp/my-models"
export RUST_LOG=info

# With b10fs enabled and authentication
export BASETEN_FS_ENABLED=1
export TRUSS_TRANSFER_B10FS_CLEANUP_HOURS=48
export TRUSS_TRANSFER_B10FS_DOWNLOAD_SPEED_MBPS=100
export HF_TOKEN="your-huggingface-token"

Development

Running Tests

# Run all tests
cargo test

# Run tests without network dependencies
cargo test --lib

# Run Python tests
python -m pytest tests/

Running the CLI as binary

Compiling the libary as musl-linux target for cross-platform usage.

# Add one-time installations
# apt-get install -y musl-tools libssl-dev libatomic-ops-dev
# rustup target add x86_64-unknown-linux-musl

# To build with cargo:
cargo build --release --target x86_64-unknown-linux-musl --features cli --bin truss_transfer_cli
# To run the binary
./target/x86_64-unknown-linux-musl/release/truss_transfer_cli /tmp/ptr

Building a wheel from source

Prerequisites:

# apt-get install patchelf
# Install rust via Rustup https://www.rust-lang.org/tools/install
pip install maturin==1.8.1

This will build you the wheels for your current python3 --version. The output should look like this:

maturin build --release
🔗 Found pyo3 bindings
🐍 Found CPython 3.9 at /workspace/model-performance/michaelfeil/.asdf/installs/python/3.9.21/bin/python3
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.75s
🖨  Copied external shared libraries to package truss_transfer.libs directory:
    /usr/lib/x86_64-linux-gnu/libssl.so.3
    /usr/lib/x86_64-linux-gnu/libcrypto.so.3
📦 Built wheel for CPython 3.9 to /workspace/model-performance/michaelfeil/truss/truss-transfer/target/wheels/truss_transfer-0.1.0-cp39-cp39-manylinux_2_34_x86_64.whl

Release a new version and make it the default version used in the serving image builder for new deploys

truss-transfer gets bundled with truss in the context-builder phase. In this phase, the truss-transfer version gets installed. To make truss-transfer bundeable, it needs to be published to pypi and github releases.

  1. Open a PR with rust changes
  2. Change the version to x.z.y+1.rc0 in Cargo.toml and push change to branch a.
  3. Run a `Buid and Release truss-transfer" action https://github.com/basetenlabs/truss/actions with "release to pypi = true" on this branch a.
  4. Make x.z.y+1.rc0 as truss pyproject.toml, and templates/server/requirements.txt dependency
  5. Edit truss to a new truss.rcX, publish truss.rcX to pypy.org (main.yml action)
  6. pip install truss=truss.rcX locally and truss push (on example that uses python truss)
  7. Merge PR
  8. Wait for CLI binary to be released under assets as part of a new tag (https://github.com/basetenlabs/truss/releases)
  9. add the CLI to the server.Dockerfile.jinja to have it available for trussless.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

truss_transfer-0.0.16rc7.tar.gz (57.8 kB view details)

Uploaded Source

Built Distributions

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

truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_i686.whl (4.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_armv7l.whl (3.9 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (4.9 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ i686

truss_transfer-0.0.16rc7-cp313-cp313t-macosx_11_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

truss_transfer-0.0.16rc7-cp313-cp313t-macosx_10_12_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

truss_transfer-0.0.16rc7-cp38-abi3-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.8+Windows x86-64

truss_transfer-0.0.16rc7-cp38-abi3-win32.whl (2.8 MB view details)

Uploaded CPython 3.8+Windows x86

truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_x86_64.whl (4.1 MB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ x86-64

truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_i686.whl (4.0 MB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ i686

truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_armv7l.whl (3.9 MB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARMv7l

truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_armv7l.whl (3.7 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.28+ ARMv7l

truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.28+ ARM64

truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (4.9 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ppc64le

truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (4.0 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ i686

truss_transfer-0.0.16rc7-cp38-abi3-macosx_11_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

truss_transfer-0.0.16rc7-cp38-abi3-macosx_10_12_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file truss_transfer-0.0.16rc7.tar.gz.

File metadata

  • Download URL: truss_transfer-0.0.16rc7.tar.gz
  • Upload date:
  • Size: 57.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.1

File hashes

Hashes for truss_transfer-0.0.16rc7.tar.gz
Algorithm Hash digest
SHA256 d41a667712b3ceb7db94ec8ff48b8aa8a9aca3aa4ab188382e9d6151e1e9022f
MD5 cf12c1063cd69864abfb12d9b40aca69
BLAKE2b-256 d5f13179f787e3e5b8d977453952a88798d17a528a3a645f615d4e9374fa3b18

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f8b12a458493b33e505d93dc016a5cb52370b38b77fa09035081f7f6c99a512f
MD5 b11e4a5d6cf99447a2d497dad04f24cf
BLAKE2b-256 c7d1ca09efea3c56e526935468f1f79adcb2a654acd2725475176789a63e8b3e

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 661621e145fc8a389c6bb0023a3262d8dc3d5bd9f2e57e7961017a6130d98385
MD5 20b696796031d5ebfd8c30a852712f40
BLAKE2b-256 ffa47901bfc28c6704169140e7ad1079a4cf7119c6ecd60af113dbb1f55be0de

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 38e320640449cdb3a77566a946507d188d55afb0101e2c7506ff6927e9904875
MD5 bf26e497b9e986c3ac53f12cebf82fec
BLAKE2b-256 34b26ebe75ad095f7627d095cd8f5533708bd601f82a42b351fd3be89c005cea

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f62810561cf44e9a5248c4d7e2489a51ef680964e83e977cdc7d64301b072c6c
MD5 8813c62b2cc993bfd9698abc52df679a
BLAKE2b-256 9f83a3c8a3e8801cd6f9743772727cf787faaf7b96534a643b93132ae5ae0c67

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eb6b06bfd188886ba588ba53849e991321a4a8d9189436d06963387d289bcd80
MD5 7b23817e280e3fecbd6f389008df5a6c
BLAKE2b-256 7509b7f31bf025d151c7ac0d8e43161b93a1ced3e257692519ec1be2ebd85030

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 22564ba05e5333e111099995b90e62a9632ab3d08ee648f52f4332a1648b453b
MD5 f1279fe25b4d926c3bbf5f0f7478f586
BLAKE2b-256 fc2d601154f01fe9235fc1edafde978ef4dbc3470f80e653c78e799b6d098ba5

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8024cb2b490f3da13557796bb3fe6f8ff173aefdf3bb333d0e667cf8aeaf84a1
MD5 9e8104a56b62268eb509bed1435657a5
BLAKE2b-256 54c59f281bf6a0a39e2d4c34b95537dee4debd5caa6e341f9846a15d5c9150af

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0c4eb27b53984d255289dd46d9f96dc282f61b9fe4733c518a39c3a4a203ecc6
MD5 860d0e1355374360b5d4b02f1685e9ab
BLAKE2b-256 ef9e1c8015c7ef449208e42e2838ca74d75dbc7de7255ae93a2dac85d0b1f200

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2acac462b224885d9e143e37066fbd4c006e0fc7985c1cc2c368c8c37b1e0459
MD5 a7558fefaa90918f901fed05192f4e43
BLAKE2b-256 287a4724b0b2fa803d8bb4f88ab6a37f07aebef149d095ef0b9ef404f5c22740

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0369e0ed81dcc7466d1ac24e49609ad486df067bcf6abda2ae8be43b7b3475df
MD5 a25be8eb3e07f24a794702732121c52f
BLAKE2b-256 9ad6eead9d60053ff7b4574b38c24e13b66aeb74aaea5d24ec40a2993d61b512

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-win32.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 48e93d41f1578a801fa8e79afbffdc92be70dd699f3c42eb89db6c5cf12bc2c8
MD5 0841ae9fbe21d2cbfcfb7ff6a9b71861
BLAKE2b-256 99163da563877033cbb341e5c815d5a56ea6ce02ff72e815a4a352a7641437bb

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a0f98042f614d7bc43e9930d365576cf62907468432f9a6c3a704549a30340f2
MD5 ac6c2d2e92c824a6fa7df764c3df4bcc
BLAKE2b-256 b6e25278b8a20a39e56f8e77c37e89470999510c25c875d5072145c5715980a4

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 24c14f5376a588a26505843aa846f0671b5f48e831b4ef11cb1e379dbf88aded
MD5 f47e84a0febba3ed2797d930124743f1
BLAKE2b-256 5cbe4d78512be3c53e7c98912c70b302e1cdd6cd4c98a27b262f15adc6be8f00

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 ddcbf10edd91b6f9ee4ee649c054f55014d1d924a849ec3e44d14ca50b93d802
MD5 fefb4a526abfffa4e3ba34fdf9ce07ca
BLAKE2b-256 1ff63302f556e29f812e7616ee6d09c7cfb802cd513fd86565c01dbbedcd74d8

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4f1a3581399b3c50cc132a69dc8946ba9fba5dcdef7b107de6c8be386598ff39
MD5 043cbff0eab6a4399bb2ff6d6d6062fb
BLAKE2b-256 0dbca9d76bf037dba21b708c1955ba7b7819745bc9aee02fe2b14264603a8e15

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 9e02ee8d1907693a83c3fe059bbd700f99198667af37e6f99ad0de442e1bffaf
MD5 88c10a1edfba3eaaa2a409794ac1ed57
BLAKE2b-256 d926fafbbcca792dec7fe2b75ab1287f038df2366e62525463a6df1fa7dc8613

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6dcc02e16a1c6a079ac9f391bd3d3ecf3ad1316f5a9deeedd3c8f5147ad912e8
MD5 5c713957b47b35ddf4db98dc5ce6cb1d
BLAKE2b-256 49d98484b53ab31789d3bd24c6240dbd455d715fe43e79070c99eff5c747e4ac

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ff417af10ad3b439c274c6cafd807486a343fa49d1b03c2d78ecfd01f287b63
MD5 795c5647a45b0a9b84afd5a268718e37
BLAKE2b-256 0d294c302469177881f1a12a8a91ff1eb720a2d9ee939c9a90a550a63351fde0

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 0fb22157a06e7f951afc1bcc1fe065cf9dafc68ca856e72fd3029d3ff4e53998
MD5 ba43804403a77c0fc94548baabbfa0b4
BLAKE2b-256 08f06b2a785aed60c8375ac07c91cdd4039a4fcf8cf803851a9f3a66a5749714

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 53af43bd55aa9e71700027efa23a9681e150b6f8e6a58eadee3745b6a0ae6c75
MD5 2636d0600e7d050e3b4623e3ea8dd7d7
BLAKE2b-256 6aa5a4dc81273459376893ae210c5bd0b26dd59e00d12d2654aa0ea962c81179

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4f012284f41391591ae325f4a08335ec3b02d61b46373bbb1a56d802c74d69f3
MD5 8b3b9fa6512e1955e3801ba8db5c9dca
BLAKE2b-256 3ca1dd55701ab3f7f0c8ffb391b6847a8493f0cb036b669a58015ceb44cdbab6

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.16rc7-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.16rc7-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 259841ff7c0ec7dddebfbe8050008d92632db335f9052f16de64f40b9d59c979
MD5 3107fd67d27710f0ef3d676a3ba06bb3
BLAKE2b-256 b04523373547ae0ad29cf82e9696301c9de3db759bfae0ce81266b7ed753ec14

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