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.0rc1.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.0rc1-cp312-cp312-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.12Windows x86-64

streaming_crypto-0.1.0rc1-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.0rc1-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.0rc1-cp312-cp312-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

streaming_crypto-0.1.0rc1-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.0rc1.tar.gz.

File metadata

  • Download URL: streaming_crypto-0.1.0rc1.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.0rc1.tar.gz
Algorithm Hash digest
SHA256 b5af953b2d8cb1ed5f46ac362a6641e98d487636fa44b69014086c33c706301d
MD5 c5fd181e8cb760104edb71722c19928e
BLAKE2b-256 74c20010966eed6b5b5542fc89ab219ad53857d4ad343cf3e031ae5f1a67fc2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 887d37f4a70b24764c93dd74d722942ae9599b22ce8101e696cff5f4e600dbba
MD5 47f4b499475d9395ff1b26253ba09f06
BLAKE2b-256 53ac1313cb5dcb5d4973aca7707c0a6dc777267149d4fb8d96f4f9cdc690691f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9eb6b904ee2160ae42495396e0095323047c1b31ba66edc6da968a33c95d5e5b
MD5 27959d1fc9e5172381ff09fd74820232
BLAKE2b-256 c61bc5ac27b7cc9b19f2c3d870f15b6a90d715c5f19414e8bc5bca5a0866acc8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 81e0cc58e7dd9ed8451680f2a0e1154e2e3b028c90f53bb12eb28ea98a663686
MD5 00d412cdf7013a72bfb1f6037ec25266
BLAKE2b-256 b7827e32b4f8e49abc6ff04d18c431bd5b985e32ff26bb3efff6e70a9e24a298

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5bfc7052b8b9acd12219a834d036228962ce07951e5e92606f7ab9aa8d149699
MD5 ba49c88d570b1c479cf65ef8812df66d
BLAKE2b-256 329f77ec642bc23e5a9b2529160e315b11cf44706c233d4fa498c2c5a723592d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streaming_crypto-0.1.0rc1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e2a2e6ac8a10af444c0f2c30d05faf5110c2058e296339a933f91da7d723ab3b
MD5 8d6fd6197b35e120f19a03eab57324c7
BLAKE2b-256 f3664d70b53361713db3ef4e61918d4fbf3ef919343d11834af5c14fab4c8d41

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