Rust workspace implementing the OmnisStream core formats plus storage primitives.
The canonical specification is vendored as a git submodule at spec/omnisstream-spec.
Performance benchmarks live in the OmnisStream Service repo: https://github.com/OmnisGenomics/omnisstream-service#benchmarks
- Core data model and hashing
- Manifest and payload verification
- Storage primitives used by higher level services
- CLI for inspecting and validating spec vectors
spec/omnisstream-specSpec submodule plus test vectorscrates/Workspace cratesomnisstream_cliCLI crate (invoked via Cargo during development)
- Rust toolchain (stable)
- Git with submodules enabled
Start with docs/first-run.md for the supported clone, submodule, validation, CLI, and troubleshooting path.
For the short path:
git submodule update --init --recursive
cargo build
cargo check
cargo test
cd spec/omnisstream-spec
python3 -m venv .venv
. .venv/bin/activate
pip install -e tools/validator
python -m unittest discover -s tools/validator/testsIf the validator package is installed from spec/omnisstream-spec, the
omnisstream-validate command can be used directly for manifest checks.
Run bash scripts/check-first-run-docs.sh to verify the first-run documentation
still references supported commands.
git submodule update --init --recursivecargo buildcargo testDownload the zip for your platform from GitHub Releases:
Linux x86_64: omnisstream-vX.Y.Z-x86_64-unknown-linux-gnu.zip
Windows x86_64: omnisstream-vX.Y.Z-x86_64-pc-windows-msvc.zip
Unzip and run:
./omnisstream version
./omnisstream --helpVerify the downloaded zips against the published SHA256SUMS, then after unzip verify the package contents SHA256SUMS:
# In the directory containing the downloaded release assets:
sha256sum -c SHA256SUMS
# After unzip:
sha256sum -c SHA256SUMSRun the workspace CLI crate:
cargo run -p omnisstream_cli -- --helpInspect a manifest:
cargo run -p omnisstream_cli -- inspect spec/omnisstream-spec/test-vectors/vector-minimal/manifest.pbVerify stored payload bytes against the manifest hashes:
cargo run -p omnisstream_cli -- verify spec/omnisstream-spec/test-vectors/vector-minimal/manifest.pbReconstruct object bytes (writes raw bytes to stdout):
cargo run -p omnisstream_cli -- cat spec/omnisstream-spec/test-vectors/vector-minimal/manifest.pb > /tmp/vector-minimal.outRead an arbitrary byte range:
cargo run -p omnisstream_cli -- range spec/omnisstream-spec/test-vectors/vector-minimal/manifest.pb 4 5Optional but recommended:
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-featuresThis repository is licensed under the Apache License, Version 2.0. See LICENSE.
The specification is vendored as a git submodule at spec/omnisstream-spec and is licensed separately. See spec/omnisstream-spec/LICENSE.