fetch_ml/native/rust/Cargo.toml
Jeremie Fraeys 7efefa1933
feat(native): implement Rust native layer as a test
- queue_index: mmap-based priority queue with safe storage wrapper
- dataset_hash: BLAKE3 parallel hashing with rayon
- common: FFI utilities with panic recovery
- Minimal deps: ~20 total (rayon, blake3, memmap2, walkdir, chrono)
- Drop crossbeam, prometheus - use stdlib + manual metrics
- Makefile: cargo build targets, help text updated
- Forgejo CI: clippy, tests, miri, cargo-deny
- C FFI compatible with existing Go bindings
2026-03-14 17:45:58 -04:00

43 lines
966 B
TOML

[workspace]
members = ["queue_index", "dataset_hash", "common"]
resolver = "2"
[workspace.package]
version = "0.1.0"
edition = "2021"
authors = ["FetchML Team"]
license = "MIT OR Apache-2.0"
rust-version = "1.85.0"
[workspace.dependencies]
# Core dependencies
libc = "0.2"
thiserror = "1.0"
anyhow = "1.0"
# Keep: Performance-critical dependencies
rayon = "1.8" # ~8 deps - work-stealing worth it
blake3 = { version = "1.5", features = ["rayon"] } # ~12 deps - SIMD dispatch
memmap2 = "0.9" # ~1 dep - thin mmap wrapper
# Serialization (lightweight)
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Testing
tempfile = "3.10"
# Dropped: crossbeam (~6) -> use std::sync::Mutex
# Dropped: prometheus (~20) -> implement metrics manually
# Dropped: tracing (~15) -> use eprintln! for now
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
panic = "abort"
strip = true
[profile.dev]
debug = true
opt-level = 0