[package] authors = ['Axiom-Team Developers <https://axiom-team.fr>'] build = 'node/build.rs' description = 'Crypto-currency software (based on Substrate framework) to operate Ğ1 libre currency' edition = "2021" homepage = 'https://duniter.org' license = 'AGPL-3.0' name = 'duniter' repository = 'https://git.duniter.org/nodes/rust/duniter-v2s' version = '0.3.0' [package.metadata.docs.rs] targets = ['x86_64-unknown-linux-gnu'] [[bin]] bench = false name = 'duniter' path = "node/src/main.rs" [features] default = ["gdev"] g1 = ["g1-runtime"] gdev = ["gdev-runtime"] gtest = ["gtest-runtime"] runtime-benchmarks = [ #'g1-runtime', #'g1-runtime/runtime-benchmarks', 'gdev-runtime', 'gdev-runtime/runtime-benchmarks', #'gtest-runtime', #'gtest-runtime/runtime-benchmarks', 'sc-client-db/runtime-benchmarks', ] try-runtime = [ #"g1-runtime/try-runtime", "gdev-runtime/try-runtime", #"gtest-runtime/try-runtime", "try-runtime-cli" ] [build-dependencies] clap = { version = "4.0" } #clap_complete = { version = "4.0" } substrate-build-script-utils = { git = 'https://github.com/duniter/substrate', branch = 'duniter-substrate-v0.9.32' } [dev-dependencies] rusty-hook = "^0.11.2" # Dependencies for specific targets [target.'cfg(any(target_arch="x86_64", target_arch="aarch64"))'.dependencies] sc-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false, features = ["wasmtime"] } sc-service = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false, features = ["wasmtime"] } sp-trie = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", features = ["memory-tracker"] } [dependencies] # local dependencies common-runtime = { path = 'runtime/common' } g1-runtime = { path = 'runtime/g1', optional = true } gdev-runtime = { path = 'runtime/gdev', optional = true } gtest-runtime = { path = 'runtime/gtest', optional = true } pallet-certification = { path = 'pallets/certification' } pallet-oneshot-account = { path = 'pallets/oneshot-account' } sp-membership = { path = 'primitives/membership' } # crates.io dependencies async-io = "1.3" clap = { version = "4.0", features = ["derive"] } clap_complete = { version = "4" } futures = { version = "0.3.1", features = ["compat"] } hex = "0.4.3" jsonrpsee = { version = "0.15.1", features = ["server"] } lazy_static = "1.4.0" log = "0.4" maplit = '1.0.2' memmap2 = "0.5.0" serde = "1.0" serde_json = "1.0.64" tracing-core = "0.1.28" # substrate dependencies frame-benchmarking = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } frame-benchmarking-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } frame-system = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false } pallet-grandpa = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } pallet-transaction-payment = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false } pallet-transaction-payment-rpc = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-basic-authorship = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-chain-spec = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false } sc-client-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-consensus = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } babe = { package = "sc-consensus-babe", git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } manual-seal = { package = "sc-consensus-manual-seal", git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-client-db = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false } sc-consensus-uncles = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-executor = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-finality-grandpa = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-keystore = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-network = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-network-common = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-rpc-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-service = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", default-features = false } sc-telemetry = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-transaction-pool = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sc-transaction-pool-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-authority-discovery = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-block-builder = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-blockchain = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-consensus = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-consensus-babe = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-core = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-finality-grandpa = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-inherents = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-io = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-offchain = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-keyring = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-keystore = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-runtime = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-session = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-storage = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-timestamp = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-transaction-pool = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } sp-trie = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } substrate-frame-rpc-system = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32" } try-runtime-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.32", optional = true } [workspace] resolver = "2" members = [ 'end2end-tests', 'live-tests', 'pallets/certification', 'pallets/duniter-test-parameters', 'pallets/duniter-test-parameters/macro', 'pallets/duniter-wot', 'pallets/identity', 'pallets/membership', 'pallets/oneshot-account', 'pallets/authority-members', 'pallets/universal-dividend', 'pallets/upgrade-origin', 'primitives/membership', 'runtime/common', 'runtime/gdev', 'xtask', ] # The list of dependencies below (which can be both direct and indirect dependencies) are crates # that are suspected to be CPU-intensive, and that are unlikely to require debugging (as some of # their debug info might be missing) or to require to be frequently recompiled. We compile these # dependencies with `opt-level=3` even in "dev" mode in order to make "dev" mode more usable. # The majority of these crates are cryptographic libraries. # # This list is only relevant when running `cargo build` from within # the Duniter-v2s workspace. # # If you see an error mentioning "profile package spec ... did not match any packages", it # probably concerns this list. # # This list is ordered alphabetically. [profile.dev.package] blake2 = { opt-level = 3 } blake2-rfc = { opt-level = 3 } blake2b_simd = { opt-level = 3 } chacha20poly1305 = { opt-level = 3 } cranelift-codegen = { opt-level = 3 } cranelift-wasm = { opt-level = 3 } crc32fast = { opt-level = 3 } crossbeam-deque = { opt-level = 3 } crypto-mac = { opt-level = 3 } curve25519-dalek = { opt-level = 3 } ed25519-dalek = { opt-level = 3 } flate2 = { opt-level = 3 } futures-channel = { opt-level = 3 } hashbrown = { opt-level = 3 } hash-db = { opt-level = 3 } hmac = { opt-level = 3 } httparse = { opt-level = 3 } integer-sqrt = { opt-level = 3 } keccak = { opt-level = 3 } libm = { opt-level = 3 } libsecp256k1 = { opt-level = 3 } libz-sys = { opt-level = 3 } mio = { opt-level = 3 } nalgebra = { opt-level = 3 } num-bigint = { opt-level = 3 } parking_lot = { opt-level = 3 } parking_lot_core = { opt-level = 3 } percent-encoding = { opt-level = 3 } primitive-types = { opt-level = 3 } ring = { opt-level = 3 } rustls = { opt-level = 3 } sha2 = { opt-level = 3 } sha3 = { opt-level = 3 } smallvec = { opt-level = 3 } snow = { opt-level = 3 } twox-hash = { opt-level = 3 } uint = { opt-level = 3 } wasmi = { opt-level = 3 } x25519-dalek = { opt-level = 3 } yamux = { opt-level = 3 } zeroize = { opt-level = 3 } [profile.release] lto = "thin" # Substrate runtime requires unwinding. panic = "unwind" [patch.crates-io] #[patch."https://github.com/duniter/substrate"] #fork-tree = { path = "../substrate/utils/fork-tree" } #frame-support = { path = "../substrate/frame/support" } #frame-support-procedural = { path = "../substrate/frame/support/procedural" } #frame-support-procedural-tools = { path = "../substrate/frame/support/procedural/tools" } #frame-system = { path = "../substrate/frame/system" } #frame-benchmarking = { path = "../substrate/frame/benchmarking" } #frame-benchmarking-cli = { path = "../substrate/utils/frame/benchmarking-cli" } #sc-basic-authorship = { path = "../substrate/client/basic-authorship" } #sc-block-builder = { path = "../substrate/client/block-builder" } #sc-chain-spec = { path = "../substrate/client/chain-spec" } #sc-cli = { path = "../substrate/client/cli" } #sc-client-api = { path = "../substrate/client/api" } #sc-client-db = { path = "../substrate/client/db" } #sc-consensus = { path = "../substrate/client/consensus/common" } #sc-consensus-aura = { path = "../substrate/client/consensus/aura" } #sc-consensus-babe = { path = "../substrate/client/consensus/babe" } #sc-consensus-manual-seal = { path = "../substrate/client/consensus/manual-seal" } #sc-consensus-slots = { path = "../substrate/client/consensus/slots" } #sc-consensus-uncles = { path = "../substrate/client/consensus/uncles" } #sc-executor = { path = "../substrate/client/executor" } #sc-executor-common = { path = "../substrate/client/executor/common" } #sc-executor-wasmi = { path = "../substrate/client/executor/wasmi" } #sc-executor-wasmtime = { path = "../substrate/client/executor/wasmtime" } #sc-finality-grandpa = { path = "../substrate/client/finality-grandpa" } #sc-keystore = { path = "../substrate/client/keystore" } #sc-network = { path = "../substrate/client/network" } #sc-rpc-api = { path = "../substrate/client/rpc-api" } #sc-service = { path = "../substrate/client/service" } #sc-telemetry = { path = "../substrate/client/telemetry" } #sc-transaction-pool = { path = "../substrate/client/transaction-pool" } #sc-transaction-pool-api = { path = "../substrate/client/transaction-pool/api" } #sp-api = { path = "../substrate/primitives/api" } #sp-application-crypto = { path = "../substrate/primitives/application-crypto" } #sp-arithmetic = { path = "../substrate/primitives/arithmetic" } #sp-authority-discovery = { path = "../substrate/primitives/authority-discovery" } #sp-authorship = { path = "../substrate/primitives/authorship" } #sp-block-builder = { path = "../substrate/primitives/block-builder" } #sp-blockchain = { path = "../substrate/primitives/blockchain" } #sp-consensus = { path = "../substrate/primitives/consensus/common" } #sp-consensus-babe = { path = "../substrate/primitives/consensus/babe" } #sp-consensus-slots = { path = "../substrate/primitives/consensus/slots" } #sp-consensus-vrf = { path = "../substrate/primitives/consensus/vrf" } #sp-core = { path = "../substrate/primitives/core" } #sp-core-hashing = { path = "../substrate/primitives/core/hashing" } #sp-core-hashing-proc-macro = { path = "../substrate/primitives/core/hashing/proc-macro" } #sp-debug-derive = { path = "../substrate/primitives/debug-derive" } #sp-externalities = { path = "../substrate/primitives/externalities" } #sp-finality-grandpa = { path = "../substrate/primitives/finality-grandpa" } #sp-inherents = { path = "../substrate/primitives/inherents" } #sp-io = { path = "../substrate/primitives/io" } #sp-keyring = { path = "../substrate/primitives/keyring" } #sp-keystore = { path = "../substrate/primitives/keystore" } #sp-maybe-compressed-blob = { path = "../substrate/primitives/maybe-compressed-blob" } #sp-offchain = { path = "../substrate/primitives/offchain" } #sp-panic-handler = { path = "../substrate/primitives/panic-handler" } #sp-rpc = { path = "../substrate/primitives/rpc" } #sp-runtime = { path = "../substrate/primitives/runtime" } #sp-session = { path = "../substrate/primitives/session" } #sp-staking = { path = "../substrate/primitives/staking" } #sp-state-machine = { path = "../substrate/primitives/state-machine" } #sp-std = { path = "../substrate/primitives/std" } #sp-storage = { path = "../substrate/primitives/storage" } #sp-timestamp = { path = "../substrate/primitives/timestamp" } #sp-tracing = { path = "../substrate/primitives/tracing" } #sp-transaction-pool = { path = "../substrate/primitives/transaction-pool" } #sp-trie = { path = "../substrate/primitives/trie" } #sp-version = { path = "../substrate/primitives/version" } #sp-weights = { path = "../substrate/primitives/weights" } #substrate-prometheus-endpoint = { path = "../substrate/utils/prometheus" }