synor/Cargo.toml
Gulshan Yadav d9fd97bb96
Some checks failed
CI / Check (push) Failing after 2s
CI / Test (push) Failing after 2s
CI / Build (Linux x86_64) (push) Has been skipped
Security Audit / Vulnerability Scan (push) Failing after 2s
Security Audit / License & Security Policy (push) Failing after 2s
Security Audit / Static Analysis (Clippy) (push) Failing after 2s
Security Audit / Secret Detection (push) Failing after 2s
Security Audit / Check Outdated Dependencies (push) Failing after 2s
Security Audit / Unsafe Code Audit (push) Failing after 2s
Security Audit / Property-Based Testing (push) Failing after 2s
Security Audit / WASM Module Security (push) Failing after 2s
CI / Benchmarks (push) Has been skipped
CI / CI Success (push) Failing after 1s
chore: migrate from GitHub to Forgejo (git.misar.io)
- Move .github/workflows/ to .forgejo/workflows/ (identical YAML, runner labels changed to self-hosted)
- Drop macOS/Windows CI matrix legs (no macOS/Windows runners on self-hosted act_runner)
- Update Cargo.toml repository URL to git.misar.io/misaradmin/synor
- Remove .github/dependabot.yml (not applicable on Forgejo)
2026-03-30 08:20:39 +05:30

191 lines
5.1 KiB
TOML

[package]
name = "synor"
version = "0.1.0"
edition = "2021"
description = "Synor Blockchain - Quantum-secure decentralized cloud computing platform"
license = "MIT OR Apache-2.0"
repository = "https://git.misar.io/misaradmin/synor"
[workspace]
resolver = "2"
members = [
"crates/synor-types",
"crates/synor-crypto",
"crates/synor-dag",
"crates/synor-consensus",
"crates/synor-network",
"crates/synor-storage",
"crates/synor-hosting",
"crates/synor-database",
"crates/synor-compute",
"crates/synor-governance",
"crates/synor-rpc",
"crates/synor-vm",
"crates/synor-mining",
"crates/synor-zk",
"crates/synor-ibc",
"crates/synor-bridge",
"crates/synor-privacy",
"crates/synor-sharding",
"crates/synor-verifier",
"crates/synor-economics",
"crates/synor-sdk",
"crates/synor-contract-test",
"crates/synor-compiler",
"crates/synor-gateway",
"apps/synord",
"apps/cli",
"apps/faucet",
"apps/explorer",
]
exclude = [
"contracts/token",
"contracts/nft",
"contracts/dex",
"contracts/staking",
"contracts/confidential-token",
"contracts/perps",
"contracts/oracle",
"contracts/aggregator",
"contracts/ibc-bridge",
"crates/synor-crypto-wasm",
"apps/desktop-wallet/src-tauri",
]
# WASM modules are not part of workspace as they target wasm32
# Build crypto-wasm with: cd crates/synor-crypto-wasm && wasm-pack build --target web
# Contract examples are not part of workspace as they target wasm32
# Build them separately with:
# cargo build --manifest-path contracts/token/Cargo.toml --target wasm32-unknown-unknown --release
# cargo build --manifest-path contracts/nft/Cargo.toml --target wasm32-unknown-unknown --release
# Root package dependencies for integration tests
# Note: Some crates excluded due to external dependencies (rocksdb, etc.)
[dependencies]
synor-types = { path = "crates/synor-types" }
synor-mining = { path = "crates/synor-mining" }
synor-bridge = { path = "crates/synor-bridge" }
synor-crypto = { path = "crates/synor-crypto" }
synor-consensus = { path = "crates/synor-consensus" }
synor-dag = { path = "crates/synor-dag" }
synor-rpc = { path = "crates/synor-rpc" }
synor-vm = { path = "crates/synor-vm" }
synor-zk = { path = "crates/synor-zk" }
synor-storage = { path = "crates/synor-storage" }
serde = { version = "1.0", features = ["derive"] }
[dev-dependencies]
serde_json = "1.0"
reqwest = { version = "0.11", features = ["blocking", "json"] }
[workspace.package]
version = "0.1.0"
edition = "2021"
authors = ["Synor Team <team@synor.cc>"]
license = "MIT OR Apache-2.0"
repository = "https://git.misar.io/misaradmin/synor"
homepage = "https://synor.cc"
description = "Quantum-secure decentralized cloud computing platform"
rust-version = "1.75"
[workspace.dependencies]
# Async runtime
tokio = { version = "1.35", features = ["full"] }
async-trait = "0.1"
futures = "0.3"
# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
bincode = "1.3"
borsh = { version = "1.3", features = ["derive"] }
# Cryptography - Classical
ed25519-dalek = { version = "2.1", features = ["serde", "rand_core"] }
x25519-dalek = { version = "2.0", features = ["serde"] }
curve25519-dalek = { version = "4.1", features = ["alloc", "zeroize", "precomputed-tables"] }
sha3 = "0.10"
sha2 = "0.10"
blake3 = "1.5"
rand = "0.8"
rand_core = "0.6"
zeroize = { version = "1.7", features = ["derive"] }
# Privacy - Fiat-Shamir transcript
merlin = "3.0"
# Cryptography - Post-Quantum (NIST standards)
pqcrypto-dilithium = "0.5" # FIPS 204 (ML-DSA) - primary signatures
pqcrypto-kyber = "0.8" # FIPS 203 (ML-KEM) - key encapsulation
pqcrypto-sphincsplus = "0.7" # FIPS 205 (SLH-DSA) - hash-based backup
pqcrypto-falcon = "0.3" # FIPS 206 (FN-DSA) - compact lattice
pqcrypto-traits = "0.3"
# Hashing
tiny-keccak = { version = "2.0", features = ["sha3"] }
# Networking
libp2p = { version = "0.53", features = ["tokio", "gossipsub", "kad", "identify", "noise", "yamux", "tcp", "dns", "websocket", "macros"] }
# Storage
rocksdb = "0.22"
# CLI
clap = { version = "4.4", features = ["derive"] }
# Logging
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Error handling
thiserror = "1.0"
anyhow = "1.0"
# Utilities
hex = "0.4"
bs58 = "0.5"
bech32 = "0.11"
parking_lot = "0.12"
dashmap = "5.5"
once_cell = "1.19"
derive_more = "0.99"
smallvec = "1.13"
hashbrown = "0.14"
chrono = { version = "0.4", features = ["serde"] }
# WASM runtime (for smart contracts)
wasmtime = "17.0"
# RPC
jsonrpsee = { version = "0.21", features = ["server", "client", "macros"] }
tower = "0.4"
axum = "0.7"
# Testing
criterion = "0.5"
lru = "0.12"
proptest = "1.4"
tempfile = "3.9"
[profile.release]
lto = "thin"
codegen-units = 1
opt-level = 3
[profile.dev]
opt-level = 1
[profile.dev.package."*"]
opt-level = 3
# Profiling profile - optimized but with debug symbols for flamegraphs
[profile.profiling]
inherits = "release"
debug = true
strip = false
# Benchmark profile - maximum optimization
[profile.bench]
lto = "thin"
codegen-units = 1
opt-level = 3