-
Hugo Trentesaux authored
* implement quotas implement weights "à l'arrache" benchmarks duniter-account "à l'arrache" implement benchmark logic (not proper benchmarks) fix live tests
and clippy replace quotas by quota everywhere comment unused sections of template remove quota treasury dependency give treasury address as argument typo review tuxmain doc readme rename error DistanceKO to DistanceNotOK merge new owner key and revocation signature merge signature error types rename NewOwnerKeyPayload fix comment make eligibility more explicit implement quotas implement weights "à l'arrache" benchmarks duniter-account "à l'arrache" implement benchmark logic (not proper benchmarks) fix live tests and clippy replace quotas by quota everywhere comment unused sections of template remove quota treasury dependency give treasury address as argument typo review tuxmain doc readme rename error DistanceKO to DistanceNotOK merge new owner key and revocation signature merge signature error types rename NewOwnerKeyPayload fix comment make eligibility more explicit update metadata fix fix fee multiplier update prevent network discovery + connecting other nodesHugo Trentesaux authored* implement quotas implement weights "à l'arrache" benchmarks duniter-account "à l'arrache" implement benchmark logic (not proper benchmarks) fix live tests
and clippy replace quotas by quota everywhere comment unused sections of template remove quota treasury dependency give treasury address as argument typo review tuxmain doc readme rename error DistanceKO to DistanceNotOK merge new owner key and revocation signature merge signature error types rename NewOwnerKeyPayload fix comment make eligibility more explicit implement quotas implement weights "à l'arrache" benchmarks duniter-account "à l'arrache" implement benchmark logic (not proper benchmarks) fix live tests and clippy replace quotas by quota everywhere comment unused sections of template remove quota treasury dependency give treasury address as argument typo review tuxmain doc readme rename error DistanceKO to DistanceNotOK merge new owner key and revocation signature merge signature error types rename NewOwnerKeyPayload fix comment make eligibility more explicit update metadata fix fix fee multiplier update prevent network discovery + connecting other nodes
This project manages its dependencies using Cargo.
Learn more
Cargo.toml 17.12 KiB
[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"]
gdev = ["gdev-runtime"] # gdev feature enables gdev runtime and gdev command line options
g1 = ["g1-runtime"]
gtest = ["gtest-runtime"]
embed = [] # embed feature enables embedding raw chainspecs that must be in ./specs/gdev-raw.json
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.42' }
[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.42", default-features = false }
sc-service = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-trie = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42" }
[dependencies]
# local dependencies
common-runtime = { path = 'runtime/common' }
dc-distance = { path = 'client/distance' }
distance-oracle = { path = 'distance-oracle', optional = true }
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-distance = { path = 'primitives/distance' }
sp-membership = { path = 'primitives/membership' }
# crates.io dependencies
async-io = { version = "1.6.0", default-features = false }
bs58 = "0.5.0"
clap = { version = "4.0.9", default-features = false, features = ["derive"] }
clap_complete = { version = "4", default-features = false }
futures = { version = "0.3.28", default-features = false, features = ["compat"] }
hex = { version = "0.4.3", default-features = false }
jsonrpsee = { version = "0.16.2", default-features = false, features = ["server"] }
lazy_static = { version = "1.4.0", default-features = false }
log = { version = "0.4", default-features = false }
maplit = { version = '1.0.2', default-features = false }
memmap2 = { version = "0.5.10", default-features = false }
serde = { version = "1.0", default-features = false }
serde_json = { version = "1.0.64", default-features = false }
tracing-core = { version = "0.1.28", default-features = false }
enum-as-inner = { version = "=0.5.1", default-features = false } #https://github.com/bluejekyll/trust-dns/issues/1946
num-format = "0.4.4"
# substrate dependencies
frame-benchmarking = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
frame-benchmarking-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
frame-system = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
pallet-grandpa = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
pallet-im-online = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
pallet-transaction-payment = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
pallet-transaction-payment-rpc = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-basic-authorship = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-chain-spec = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-client-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-consensus = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-consensus-babe = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-consensus-babe-rpc = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-consensus-manual-seal = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-client-db = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-executor = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-keystore = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-network = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-network-common = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-rpc-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-service = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-telemetry = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-transaction-pool = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sc-transaction-pool-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-api = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-authority-discovery = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-transaction-storage-proof = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-block-builder = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-blockchain = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-consensus = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-consensus-babe = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-consensus-grandpa = { git = 'https://github.com/duniter/substrate', branch = 'duniter-substrate-v0.9.42', default-features = false }
sc-consensus-grandpa = { git = 'https://github.com/duniter/substrate', branch = 'duniter-substrate-v0.9.42', default-features = false }
sp-core = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-inherents = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-io = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-offchain = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-keyring = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-keystore = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-runtime = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-session = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-storage = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-timestamp = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-transaction-pool = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
sp-trie = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
substrate-frame-rpc-system = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", default-features = false }
try-runtime-cli = { git = "https://github.com/duniter/substrate", branch = "duniter-substrate-v0.9.42", optional = true, default-features = false }
[workspace]
resolver = "2"
members = [
'client/distance',
'distance-oracle',
'end2end-tests',
'live-tests',
'pallets/certification',
'pallets/quota',
'pallets/distance',
'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',
'primitives/distance',
'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 }
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]
# # the following patch can be useful to debug substrate dependency
# # added by tuxmain on 0.9.32 update
# # updated by hugo on 0.9.42 update (benjamin)
# [patch.'https://github.com/duniter/substrate']
# pallet-balances = {path = '../substrate/frame/balances'}
# 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-network-common = { path = "../substrate/client/network/common" }
# 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-babe-rpc = { path = "../substrate/client/consensus/babe/rpc" }
# sc-consensus-manual-seal = { path = "../substrate/client/consensus/manual-seal" }
# sc-consensus-slots = { path = "../substrate/client/consensus/slots" }
# 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-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-utils = { path = "../substrate/client/utils" }
# sc-telemetry = { path = "../substrate/client/telemetry" }
# sc-transaction-pool = { path = "../substrate/client/transaction-pool" }
# sc-transaction-pool-api = { path = "../substrate/client/transaction-pool/api" }
# sc-peerset = { path = "../substrate/client/peerset" }
# 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-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-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-consensus-grandpa = { path = "../substrate/primitives/consensus/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-transaction-storage-proof = { path = "../substrate/primitives/transaction-storage-proof" }
# 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" }