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/static-bptr-manifest.json", "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/static-bptr-manifest.json", "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():
    # runtime_secret_name: best to be created with `-` in baseten.
    # 1. Create bptr manifest
    models = [
        truss_transfer.PyModelRepo(
            repo_id="NVFP4/Qwen3-235B-A22B-Instruct-2507-FP4",
            revision="main",
            # write to folder named
            volume_folder="dialogpt",
            # read secret from /secrets/hf-access-token
            runtime_secret_name="hf-access-token"
        ),
        # requires a gcs service account json
    ]
    root = "/tmp/my-models"
    bptr_manifest = truss_transfer.create_basetenpointer_from_models(models, root)

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

    # 3. Resolve bptr. If we would set `root` above to "", we could define the base dir here.
    truss_transfer.lazy_data_resolve(root)

    # 4. Verify files were downloaded
    dialogpt_path = os.path.join(root, "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()

Secrets

Preferably, use a - to and lowercase characters to add credentials in baseten.

AWS

{
  "access_key_id": "XXXXX",
  "secret_access_key": "adada/adsdad",
  "region": "us-west-2"
}

Google GCS

{
      "private_key_id": "b717a4db1dd5a5d1f980aef7ea50616584b6ebc8",
      "private_key": "-----BEGIN PRIVATE KEY-----\nMI",
      "client_email": "b10-some@xxx-example.iam.gserviceaccount.com"
}

Huggingface

The Huggingface token.

Azure

(Untested)

{
    "account_key": "key",
}

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.23rc1.tar.gz (60.5 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.23rc1-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.23rc1-cp313-cp313t-musllinux_1_2_i686.whl (4.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_armv7l.whl (3.9 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

truss_transfer-0.0.23rc1-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.23rc1-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.23rc1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl (4.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ i686

truss_transfer-0.0.23rc1-cp313-cp313t-macosx_11_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

truss_transfer-0.0.23rc1-cp313-cp313t-macosx_10_12_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

truss_transfer-0.0.23rc1-cp38-abi3-win_amd64.whl (3.3 MB view details)

Uploaded CPython 3.8+Windows x86-64

truss_transfer-0.0.23rc1-cp38-abi3-win32.whl (2.9 MB view details)

Uploaded CPython 3.8+Windows x86

truss_transfer-0.0.23rc1-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.23rc1-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.23rc1-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.23rc1-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.23rc1-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.23rc1-cp38-abi3-manylinux_2_28_aarch64.whl (3.9 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.28+ ARM64

truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.0 MB view details)

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

truss_transfer-0.0.23rc1-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.23rc1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (4.1 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ i686

truss_transfer-0.0.23rc1-cp38-abi3-macosx_11_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

truss_transfer-0.0.23rc1-cp38-abi3-macosx_10_12_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file truss_transfer-0.0.23rc1.tar.gz.

File metadata

  • Download URL: truss_transfer-0.0.23rc1.tar.gz
  • Upload date:
  • Size: 60.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.3

File hashes

Hashes for truss_transfer-0.0.23rc1.tar.gz
Algorithm Hash digest
SHA256 0b9ae9052f859fc0890f7ade3f3f0110268be770a58e7c6547ec17f3930d3fe5
MD5 f2f36ba6759cc24e5ca8bbe8f86613fb
BLAKE2b-256 38601efb345ec6fe3fc81139e47b4e7b57a29c3e8700688a0db0e7b7d569431d

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8b6bf23088f877fa0b2da3965beb60133c5c9fc73fa85cc7e674d7973463d1b2
MD5 4bce8c7244069a0868636f13ba9caf1d
BLAKE2b-256 ae78128aebf3293ddabe6ab838391a006dbff0781e52b087f402e7bc06294167

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 7f775465f29cead23ba81ebb69dcefc3f0ded9d88c43fc22f2a7d338b8c9fab1
MD5 b661930ef3c44305017423945cc2dd43
BLAKE2b-256 410278e43c19af7133d9dd72f3fa3c3db78a19e8c88dbec6b5806331c1b00870

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 39f9280bfec8fb99e9d1cbc3467588d4984db83a813caf449f7432b6b2b25261
MD5 3b9952fac9764ed328b6ba78f12ac659
BLAKE2b-256 48bd8a2650560813bfbf4e3b33b5f7f19075cb85a040e8910835487ce61c4e66

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f99ce3605811789f770bc73c4ac7ac26a9419e4e0b96593174e2ed2f9c67b1e0
MD5 9c512ce75680cfd72978f1e0d6fa91c5
BLAKE2b-256 9caa2d2714ef2a24818a6828d4e2f7f0caea90869337f29a0110e84cec736f54

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4187f3bdd5d50b683c7da642b04ebbbbac7f50d2847bd6b75a635fc24fb1bc62
MD5 882318f8f1907f35f373546669568ae1
BLAKE2b-256 0fa122a06c153b67c13212404aceac14113a2aa0f6937918021a1d08f422cf99

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 800929b680ad314a9f8fada2328c7a5cefb6eddcc0cefb797fb729669176fd98
MD5 90690c3683cb24173a78e80dafab774e
BLAKE2b-256 31ca19afad0a6fbe2f6c97b1bc38933b3e06c648a46a091dc6c12890df2dc597

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6e0576fb05013138d0f2034938f0d1a9dd15d9f68302738fb29e08d595c1ec06
MD5 35e50d8ce5c8a4025ade65c502ce6423
BLAKE2b-256 3813b79518742b06d5fdc690e5074340afc18c8e083ab0ef9a3fdc29a096815c

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d5b42dfb89652ddfc66039c1b12801c6f8e929ea7dd569405f56a46e8d12b499
MD5 3ffe3f6e1eabdad77c16248d90f249d2
BLAKE2b-256 86a4c1a8c8398771181ec6adbfe446fa9299df810460560ba6afe67c1f0f2869

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 090caf6391a89df901f7791e2e3aceceb3106394c45e030990a7dc7ae587d5bd
MD5 ecba45ec487e2ebfe9b97830a5db0ee3
BLAKE2b-256 fc31718a79c3444d2ff1ec1dd8c4d985732dcb680a722c1358c7eb8a9591a5d1

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a615e602aafe9d7a934f09b44d772823a0050d37f007c2c12c49ba04db91b85e
MD5 d42c0143ba16af81f80cbe1c63138c02
BLAKE2b-256 45e2a00bd75607625f8403f067ade0dbb84c7558d8491fa1cc7524b3cf7f2a5e

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-win32.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 d49f37d598541a50ddbb6a225ce0fb4dc421f2724a031b8c53b48ad3ab527370
MD5 3c595378d08f0aff5cd2201b7bf285ad
BLAKE2b-256 f064d68b4c79fe8e2b8a193353a67a59c5181b76aaeb0c79b385c0a948f3de6f

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 85002e90436cf952e241b9bba4f4b7609d855eccb0a18f7fd2fba1e8aa2b5159
MD5 8ebd6f115b7e99f81945b8ebbb3c4064
BLAKE2b-256 f397fc6a4bf5f7442b4c67cb5cd091632d5224ce2a4d7b27aa4c395cd830a2cf

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 9b7b37beb4e7f4dcf0d8fb1ea2fe081abb72140a09863aab87abc65b13ef8582
MD5 cf5fdd9f988ea3bd92c04369a1a54b67
BLAKE2b-256 af9bf74c9e150021f0460e9a9447a3bcea0da05fbca8a2fd807cbda435980a8e

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 95ba556207c425acca1c8c068f0b4128b1e54ae97381206c399bc14fa0b94599
MD5 bf0b7e0c647850241789666da81e77d2
BLAKE2b-256 939826e4e2f07a5224140c754ddf80ab841188403fcb1e8d0448275cbcdfd8e3

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 de4a27545632db5e925b665465c3dc7dcc32bd7d76c8910f7808f6fa37a9784f
MD5 82e6bf8ad4ccf8a8f378559451dc5586
BLAKE2b-256 d9189d0aa9d4beb22896f729f51c1996a447f57b86f287e90d472ae09ad85032

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_28_armv7l.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 5f02701db119d5cb2d0e818856d990909d010242946e2e2a8ae975ecce4b6524
MD5 88bd7ec1d68522b8621e5bad8f6d163b
BLAKE2b-256 60c339568141ddd0a900a8bf18639437f4a46db9d312e3c2fcad3d2a8d43df2d

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b39853d46954106d353449276c69d8d2c3f53025154d4a838dd993553fc7a4a2
MD5 ed6764fbe116b020feb68326654e9c0a
BLAKE2b-256 63cbec0a7de7ba4e7d29fba598a2f86ba91c551c1559c1da6a57addcd18449e8

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6cf8068675f849ad1bddfa24a3581e8b35f2bb79e74b37834e415f8a53b205c7
MD5 658a75b16250bf0801b961cf92795ac7
BLAKE2b-256 5b116a729966e7510508aa39804f6bf5c2790760ce78a3005f9c4a2ec49d374b

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 b4de5864b4ad2d6cb7436bfa1bb46e594efb251df8afaf426731e524dc390aeb
MD5 f06a0c916c679c740cfa41d3b656f09f
BLAKE2b-256 0ba23a7f5b4a82ff39b131e321ad9d2d1a24fe11eb11a7daf80656019b684be4

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4c2bb3b703899793d1fda1e69b46ce0aedf52891b8d8723d4eb3c41920683b1a
MD5 f0e5ced86e6a9bb6b7dd67d98987b6c5
BLAKE2b-256 594b4ae5f7f8073459d44fecdf39dd6943d571098037cfa063bc146b996606e7

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cc7edcc927c43d96e5a728daa30a22df15f50b9bcee2476574b7fca3296936fe
MD5 8290a7eecdb9f0f5f33134aced71039f
BLAKE2b-256 6162c6695c8c832fac3d22cbb5f8bea8712bed772361a367e40335aac662b5fc

See more details on using hashes here.

File details

Details for the file truss_transfer-0.0.23rc1-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for truss_transfer-0.0.23rc1-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 87f52b25cda01de0bf04dca46bea72edd586909f59342e6cd81cd01df54e049f
MD5 18b5d6e2c09ac85cab4739c79de96007
BLAKE2b-256 a0894292243c8166c710d039b0d7174b554a033b8fcd67a57495f22cff4d924b

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