Skip to main content

High-performance streaming encryption library powered by Rust

Project description

Streaming Crypto

CI core CI ffi CI pyo3 Docs.rs Crates.io PyPI License: MIT

A Rust cryptographic library with optional FFI and Python bindings.


Features

  • Rust API (default): Pure Rust functions.
  • FFI API: C ABI functions for integration with C/C++ and other languages.
  • PyO3 API: Python bindings, installable via pip.

Usage

Rust API

cargo add streaming-crypto

FFI API

cargo build --features ffi-api

Python API

pip install streaming-crypto

Documentation


✅ Badge Breakdown

  • CI badge → shows GitHub Actions build/test status.
  • Crates.io badge → shows latest published version on crates.io.
  • Docs.rs badge → links to auto‑generated Rust documentation.
  • PyPI badge → shows latest published version on PyPI.
  • License badge → signals open‑source license clearly.

Set environment python for test

  1. Before: PyO3 was trying to link against Python 3.13 because either a cached build or environment variable made it think our Python was 3.13.

  2. Action: We forced PyO3 to use Python 3.12 or current version of pyenv explicitly:

    export PYTHON_SYS_EXECUTABLE="$(pyenv which python3)"
    export PYO3_PYTHON="$(pyenv which python3)"
    export PYO3_NO_PYTHON_LINK=1
    
    cargo clean
    cargo test -p streaming-crypto --no-default-features --features pyo3-api
    
  3. Result: Cargo rebuilds PyO3 and all dependent crates from scratch. Now cargo run --bin check_python correctly detects Python 3.12.12 and does not crash on missing libpython3.13.dylib.

  4. cargo test will work now

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

streaming_crypto-0.1.0b0.tar.gz (184.0 kB view details)

Uploaded Source

Built Distribution

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

streaming_crypto-0.1.0b0-cp312-cp312-manylinux_2_34_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

File details

Details for the file streaming_crypto-0.1.0b0.tar.gz.

File metadata

  • Download URL: streaming_crypto-0.1.0b0.tar.gz
  • Upload date:
  • Size: 184.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for streaming_crypto-0.1.0b0.tar.gz
Algorithm Hash digest
SHA256 ff691f3f41dc70346d101d928ee058b6bc7a20d9845927a03059c373f42a4e31
MD5 a6ec20c052c68016f9617ab25cd69f2c
BLAKE2b-256 cc4f8c632a397f9acaa0416c7d07c17de2ec9b0192cd523820cbd92245cc3d7b

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0b0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0b0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f6441d36a256bc251b0ac96ae624e3837cba16af42265f4506d0b1ceccc1328b
MD5 80de9b4e0613593bf5755b2d4f038c68
BLAKE2b-256 9c26ea6b778b0b06100015a977b28f357dc5ef9c9bea81722514b1e8d938bdae

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