Convert repository into Cargo workspace with modular crates - Split code into workspace members: miner-cli, miner-service, pow-core, engine-cpu, engine-gpu-cuda, engine-gpu-opencl, metrics - Moved QPoW math logic into local pow-core crate with compatibility API and incremental helpers - Defined MinerEngine trait and baseline CPU engine in engine-cpu crate - Rewrote service layer in miner-service: job management, HTTP API, engine orchestration - Added CLI binary crate miner-cli with flags: --port, --num-cores, --metrics-port, --engine - Implemented runtime toggle for Prometheus metrics exporter enabled only when --metrics-port provided - Deprecated root src/lib.rs and src/main.rs with notices pointing to new CLI/workspace entrypoints
30 lines
740 B
TOML
30 lines
740 B
TOML
[package]
|
|
name = "engine-cpu"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
publish = false
|
|
description = "CPU mining engine implementation for the Quantus External Miner"
|
|
|
|
[lib]
|
|
path = "src/lib.rs"
|
|
crate-type = ["rlib"]
|
|
|
|
[features]
|
|
# Default to the baseline/reference implementation; enable others as needed.
|
|
default = ["baseline"]
|
|
|
|
# Map engine features to pow-core features so engine-cpu consumers can toggle them.
|
|
baseline = ["pow-core/baseline"]
|
|
montgomery = ["pow-core/montgomery"]
|
|
simd-sha3 = ["pow-core/simd-sha3"]
|
|
|
|
[dependencies]
|
|
pow-core = { path = "../pow-core" }
|
|
primitive-types = { workspace = true }
|
|
log = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
hex = { workspace = true }
|