1 unstable release
Uses new Rust 2024
| new 0.1.0 | Dec 9, 2025 |
|---|
#1655 in Algorithms
Used in 2 crates
33KB
581 lines
Stable Hash Library
This crate provides a stable hashing system that produces consistent hash values across different program runs and platforms. Unlike standard hash functions that may vary between runs for security reasons, stable hashes are designed to be reproducible and deterministic.
The main components of this library are:
StableHashtrait: Defines how types can be hashed in a stable mannerStableHashertrait: Defines the interface for stable hash functionsSip128Hasherstruct: A concrete implementation using theSipHashalgorithmValuetrait: Represents hash output values that can be combined
Example
use qbice_stable_hash::{StableHash, StableHasher, StableSipHasher};
let mut hasher = StableSipHasher::new();
"hello world".stable_hash(&mut hasher);
let hash = hasher.finish();
QBICE
Query-Based Incremental Computation Engine
QBICE is an asynchronous incremental computation framework for Rust. Define your computation as a graph of queries, and QBICE automatically determines what needs to be recomputed when inputs change—minimizing redundant work through intelligent caching and dependency tracking.
Features
- Incremental Computation — Only recomputes what's necessary when inputs change
- Async-First Design — Built on Tokio for efficient concurrent execution
- Cycle Detection — Automatically detects and handles cyclic dependencies
- Type-Safe — Strongly-typed queries with associated value types
- Thread-Safe — Safely share the engine across multiple threads
- Visualization — Generate interactive HTML dependency graphs
Installation
Add QBICE to your Cargo.toml:
[dependencies]
qbice = "0.1.0"
tokio = { version = "1", features = ["full"] }
Documentation
For detailed documentation, examples, and API reference, please visit:
- docs.rs/qbice — Full API documentation with examples
- crates.io/crates/qbice — Package information
Requirements
- Rust 1.88.0 or later (Edition 2024)
- Tokio runtime for async execution
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
QBICE is inspired by:
Dependencies
~1.5–2.2MB
~41K SLoC