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.0rc2.tar.gz (3.5 MB view details)

Uploaded Source

Built Distributions

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

streaming_crypto-0.1.0rc2-cp312-cp312-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.12Windows x86-64

streaming_crypto-0.1.0rc2-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

streaming_crypto-0.1.0rc2-cp312-cp312-manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

streaming_crypto-0.1.0rc2-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

streaming_crypto-0.1.0rc2-cp312-cp312-macosx_10_13_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

File details

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

File metadata

  • Download URL: streaming_crypto-0.1.0rc2.tar.gz
  • Upload date:
  • Size: 3.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for streaming_crypto-0.1.0rc2.tar.gz
Algorithm Hash digest
SHA256 e4c3c2a5f4115f120e071515fa2bbd5cbb1ea043317ba105e30f03c980a815a5
MD5 1e40afc9979560adb6f40312e347c548
BLAKE2b-256 530823614c4df945008f4385b550071d8ae66f946fc1376dc9d2bbc69dfaa928

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0rc2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 42aaa97565861bafdd29c74732a3cf616699f50ee1b32730d851516710d29308
MD5 851182274748560ec65c8a890d87f794
BLAKE2b-256 5ccb448302b03b97f6c982cbb93db9223f8b26491505e005781f3c0e76809b8f

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0rc2-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9bb14bb8bd1754695157deefbf5ffe5bf5d76877b9557c2074adc500ff04eb86
MD5 8e16ef48407512571c2fa409aa5c052f
BLAKE2b-256 78e9163e056eb594fd8959ec092add723eab935e6b3e24fd5d96f4aaa9b3e311

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0rc2-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc2-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 072b2d9ceac4d0e2df5785147e1ef635387ad5ceedc6b8f69444e6b87d143a70
MD5 809e707ce4cc98386ec264df480afc3c
BLAKE2b-256 9e964e03110b37a7cc7b95c46c3a976923a2f305b32ed1c942639a5086c99ae6

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0rc2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d60bc887ca01323ea8173fc40e68331d32e470fdbe96aad46f9b9905da5d48de
MD5 152baba14bbcb3c4480aa1d6f4f4ad8c
BLAKE2b-256 6b7842ada591487c72ecbf63d1ea7c49d41f696dbc248f39a320b4cc2a4001b8

See more details on using hashes here.

File details

Details for the file streaming_crypto-0.1.0rc2-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc2-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 aa215322143dffbf4a5d63a4ff9cad34758553e2b830248d49b44b7e06aedd9e
MD5 173f622f656009e14bdc8058ede4b8d7
BLAKE2b-256 2ec0bfd5f810df031e18f7aa4c818d83b2c2d1f1c2bc3ff7fd906e8c48a2e257

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