mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 21:37:56 +00:00
800cc1d4be
* setting flag * flag in storage struct * fix flagging to access and insert. * added todo to fix * also missing serialize meta to storage proof * extract meta. * Isolate old trie layout. * failing test that requires storing in meta when old hash scheme is used. * old hash compatibility * Db migrate. * runing tests with both states when interesting. * fix chain spec test with serde default. * export state (missing trie function). * Pending using new branch, lacking genericity on layout resolution. * extract and set global meta * Update to branch 4 * fix iterator with root flag (no longer insert node). * fix trie root hashing of root * complete basic backend. * Remove old_hash meta from proof that do not use inner_hashing. * fix trie test for empty (force layout on empty deltas). * Root update fix. * debug on meta * Use trie key iteration that do not include value in proofs. * switch default test ext to use inner hash. * small integration test, and fix tx cache mgmt in ext. test failing * Proof scenario at state-machine level. * trace for db upgrade * try different param * act more like iter_from. * Bigger batches. * Update trie dependency. * drafting codec changes and refact * before removing unused branch no value alt hashing. more work todo rename all flag var to alt_hash, and remove extrinsic replace by storage query at every storage_root call. * alt hashing only for branch with value. * fix trie tests * Hash of value include the encoded size. * removing fields(broken) * fix trie_stream to also include value length in inner hash. * triedbmut only using alt type if inner hashing. * trie_stream to also only use alt hashing type when actually alt hashing. * Refactor meta state, logic should work with change of trie treshold. * Remove NoMeta variant. * Remove state_hashed trigger specific functions. * pending switching to using threshold, new storage root api does not make much sense. * refactoring to use state from backend (not possible payload changes). * Applying from previous state * Remove default from storage, genesis need a special build. * rem empty space * Catch problem: when using triedb with default: we should not revert nodes: otherwhise thing as trie codec cannot decode-encode without changing state. * fix compilation * Right logic to avoid switch on reencode when default layout. * Clean up some todos * remove trie meta from root upstream * update upstream and fix benches. * split some long lines. * UPdate trie crate to work with new design. * Finish update to refactored upstream. * update to latest triedb changes. * Clean up. * fix executor test. * rust fmt from master. * rust format. * rustfmt * fix * start host function driven versioning * update state-machine part * still need access to state version from runtime * state hash in mem: wrong * direction likely correct, but passing call to code exec for genesis init seem awkward. * state version serialize in runtime, wrong approach, just initialize it with no threshold for core api < 4 seems more proper. * stateversion from runtime version (core api >= 4). * update trie, fix tests * unused import * clean some TODOs * Require RuntimeVersionOf for executor * use RuntimeVersionOf to resolve genesis state version. * update runtime version test * fix state-machine tests * TODO * Use runtime version from storage wasm with fast sync. * rustfmt * fmt * fix test * revert useless changes. * clean some unused changes * fmt * removing useless trait function. * remove remaining reference to state_hash * fix some imports * Follow chain state version management. * trie update, fix and constant threshold for trie layouts. * update deps * Update to latest trie pr changes. * fix benches * Verify proof requires right layout. * update trie_root * Update trie deps to latest * Update to latest trie versioning * Removing patch * update lock * extrinsic for sc-service-test using layout v0. * Adding RuntimeVersionOf to CallExecutor works. * fmt * error when resolving version and no wasm in storage. * use existing utils to instantiate runtime code. * migration pallet * Patch to delay runtime switch. * Revert "Patch to delay runtime switch." This reverts commit 67e55fee468f1a0cda853f5362b22e0d775786da. * fix test * fix child migration calls. * useless closure * remove remaining state_hash variables. * Fix and add more tests * Remove outdated comment * useless inner hash * fmt * remote tests * finally ksm works * batches are broken * clean the benchmarks * Apply suggestions from code review Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> * Apply suggestions from code review Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> * Update frame/state-trie-migration/src/lib.rs Co-authored-by: Joshy Orndorff <JoshOrndorff@users.noreply.github.com> * Update frame/state-trie-migration/src/lib.rs * brand new version * fix build * Update frame/state-trie-migration/src/lib.rs Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> * Update frame/state-trie-migration/src/lib.rs Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> * Update primitives/storage/src/lib.rs Co-authored-by: cheme <emericchevalier.pro@gmail.com> * Update frame/state-trie-migration/src/lib.rs Co-authored-by: cheme <emericchevalier.pro@gmail.com> * Update frame/state-trie-migration/src/lib.rs Co-authored-by: cheme <emericchevalier.pro@gmail.com> * fmt and opt-in feature to apply state change. * feature gate core version, use new test feature for node and test node * Use a 'State' api version instead of Core one. * fix merge of test function * use blake macro. * Fix state api (require declaring the api in runtime). * Opt out feature, fix macro for io to select a given version instead of latest. * run test nodes on new state. * fix * new test structure * new testing stuff from emeric * Add commit_all, still not working * Fix all tests * add comment * we have PoV tracking baby * document stuff, but proof size is still wrong * FUCK YEAH * a big batch of review comments * add more tests * tweak test * update config * some remote-ext stuff * delete some of the old stuff * sync more files with master to minimize the diff * Fix all tests * make signed migration a bit more relaxed * add witness check to signed submissions * allow custom migration to also go above limit * Fix these pesky tests * ==== removal of the unsigned stuff ==== * Make all tests work again * separate the tests from the logic so it can be reused easier * fix overall build * Update frame/state-trie-migration/src/lib.rs Co-authored-by: cheme <emericchevalier.pro@gmail.com> * Update frame/state-trie-migration/src/lib.rs Co-authored-by: cheme <emericchevalier.pro@gmail.com> * Slightly better termination * some final tweaks * Fix tests * Restrict access to signed migrations * mig rpc * fix * better rpc name * Make rpc unsafe * address most of the review comments * fix defensive * New simplified code * Fix weights * fmt * Update frame/state-trie-migration/src/lib.rs Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * make the tests correctly fail * Fix build * Fix build * try and fix the benchmarks * fix build * Fix cargo file * Fix runtime deposit * make rustdoc happy * cargo run --quiet --profile=production --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_state_trie_migration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/state-trie-migration/src/weights.rs --template=./.maintain/frame-weight-template.hbs * update rpc deps, try to process empty keys. * move rpc crate * move check backend out of state machine * Add primitive crate. * module code * fix runtime test * StateMigrationStatusProvider * Pass backend to rpc. * fmt * review changes * move rpc crate * try remove primitive crate * Update utils/frame/rpc/state-trie-migration-rpc/Cargo.toml Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * review changes. Co-authored-by: kianenigma <kian@parity.io> Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> Co-authored-by: Joshy Orndorff <JoshOrndorff@users.noreply.github.com> Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> Co-authored-by: Parity Bot <admin@parity.io>
297 lines
8.2 KiB
TOML
297 lines
8.2 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
|
|
members = [
|
|
"bin/node-template/node",
|
|
"bin/node-template/pallets/template",
|
|
"bin/node-template/runtime",
|
|
"bin/node/bench",
|
|
"bin/node/cli",
|
|
"bin/node/executor",
|
|
"bin/node/primitives",
|
|
"bin/node/rpc",
|
|
"bin/node/runtime",
|
|
"bin/node/testing",
|
|
"bin/utils/chain-spec-builder",
|
|
"bin/utils/subkey",
|
|
"client/api",
|
|
"client/authority-discovery",
|
|
"client/basic-authorship",
|
|
"client/beefy",
|
|
"client/beefy/rpc",
|
|
"client/block-builder",
|
|
"client/chain-spec",
|
|
"client/chain-spec/derive",
|
|
"client/cli",
|
|
"client/consensus/aura",
|
|
"client/consensus/babe",
|
|
"client/consensus/babe/rpc",
|
|
"client/consensus/common",
|
|
"client/consensus/epochs",
|
|
"client/consensus/manual-seal",
|
|
"client/consensus/pow",
|
|
"client/consensus/slots",
|
|
"client/consensus/uncles",
|
|
"client/db",
|
|
"client/executor",
|
|
"client/executor/common",
|
|
"client/executor/runtime-test",
|
|
"client/executor/wasmi",
|
|
"client/executor/wasmtime",
|
|
"client/finality-grandpa",
|
|
"client/informant",
|
|
"client/keystore",
|
|
"client/network",
|
|
"client/network-gossip",
|
|
"client/network/test",
|
|
"client/offchain",
|
|
"client/peerset",
|
|
"client/allocator",
|
|
"client/proposer-metrics",
|
|
"client/rpc",
|
|
"client/rpc-api",
|
|
"client/rpc-servers",
|
|
"client/service",
|
|
"client/service/test",
|
|
"client/state-db",
|
|
"client/sync-state-rpc",
|
|
"client/telemetry",
|
|
"client/tracing",
|
|
"client/tracing/proc-macro",
|
|
"client/transaction-pool",
|
|
"client/transaction-pool/api",
|
|
"client/utils",
|
|
"frame/assets",
|
|
"frame/atomic-swap",
|
|
"frame/aura",
|
|
"frame/authority-discovery",
|
|
"frame/authorship",
|
|
"frame/babe",
|
|
"frame/bags-list",
|
|
"frame/bags-list/fuzzer",
|
|
"frame/bags-list/remote-tests",
|
|
"frame/balances",
|
|
"frame/beefy",
|
|
"frame/beefy-mmr",
|
|
"frame/beefy-mmr/primitives",
|
|
"frame/benchmarking",
|
|
"frame/bounties",
|
|
"frame/child-bounties",
|
|
"frame/collective",
|
|
"frame/contracts",
|
|
"frame/contracts/rpc",
|
|
"frame/contracts/rpc/runtime-api",
|
|
"frame/conviction-voting",
|
|
"frame/democracy",
|
|
"frame/try-runtime",
|
|
"frame/election-provider-multi-phase",
|
|
"frame/election-provider-support",
|
|
"frame/election-provider-support/solution-type",
|
|
"frame/election-provider-support/solution-type/fuzzer",
|
|
"frame/examples/basic",
|
|
"frame/examples/offchain-worker",
|
|
"frame/examples/parallel",
|
|
"frame/executive",
|
|
"frame/gilt",
|
|
"frame/grandpa",
|
|
"frame/identity",
|
|
"frame/im-online",
|
|
"frame/indices",
|
|
"frame/lottery",
|
|
"frame/membership",
|
|
"frame/merkle-mountain-range",
|
|
"frame/merkle-mountain-range/primitives",
|
|
"frame/merkle-mountain-range/rpc",
|
|
"frame/multisig",
|
|
"frame/nicks",
|
|
"frame/node-authorization",
|
|
"frame/offences",
|
|
"frame/preimage",
|
|
"frame/proxy",
|
|
"frame/randomness-collective-flip",
|
|
"frame/recovery",
|
|
"frame/referenda",
|
|
"frame/scheduler",
|
|
"frame/scored-pool",
|
|
"frame/session",
|
|
"frame/session/benchmarking",
|
|
"frame/society",
|
|
"frame/staking",
|
|
"frame/staking/reward-curve",
|
|
"frame/staking/reward-fn",
|
|
"frame/state-trie-migration",
|
|
"frame/sudo",
|
|
"frame/support",
|
|
"frame/support/procedural",
|
|
"frame/support/procedural/tools",
|
|
"frame/support/procedural/tools/derive",
|
|
"frame/support/test",
|
|
"frame/support/test/compile_pass",
|
|
"frame/system",
|
|
"frame/system/benchmarking",
|
|
"frame/system/rpc/runtime-api",
|
|
"frame/timestamp",
|
|
"frame/transaction-payment",
|
|
"frame/transaction-payment/asset-tx-payment",
|
|
"frame/transaction-payment/rpc",
|
|
"frame/transaction-payment/rpc/runtime-api",
|
|
"frame/transaction-storage",
|
|
"frame/treasury",
|
|
"frame/tips",
|
|
"frame/uniques",
|
|
"frame/utility",
|
|
"frame/vesting",
|
|
"frame/whitelist",
|
|
"primitives/api",
|
|
"primitives/api/proc-macro",
|
|
"primitives/api/test",
|
|
"primitives/application-crypto",
|
|
"primitives/application-crypto/test",
|
|
"primitives/arithmetic",
|
|
"primitives/arithmetic/fuzzer",
|
|
"primitives/authority-discovery",
|
|
"primitives/authorship",
|
|
"primitives/beefy",
|
|
"primitives/block-builder",
|
|
"primitives/blockchain",
|
|
"primitives/consensus/aura",
|
|
"primitives/consensus/babe",
|
|
"primitives/consensus/common",
|
|
"primitives/consensus/pow",
|
|
"primitives/consensus/vrf",
|
|
"primitives/core",
|
|
"primitives/core/hashing",
|
|
"primitives/core/hashing/proc-macro",
|
|
"primitives/database",
|
|
"primitives/debug-derive",
|
|
"primitives/externalities",
|
|
"primitives/finality-grandpa",
|
|
"primitives/inherents",
|
|
"primitives/io",
|
|
"primitives/keyring",
|
|
"primitives/keystore",
|
|
"primitives/maybe-compressed-blob",
|
|
"primitives/npos-elections",
|
|
"primitives/npos-elections/fuzzer",
|
|
"primitives/offchain",
|
|
"primitives/panic-handler",
|
|
"primitives/rpc",
|
|
"primitives/runtime",
|
|
"primitives/runtime-interface",
|
|
"primitives/runtime-interface/proc-macro",
|
|
"primitives/runtime-interface/test",
|
|
"primitives/runtime-interface/test-wasm",
|
|
"primitives/runtime-interface/test-wasm-deprecated",
|
|
"primitives/sandbox",
|
|
"primitives/serializer",
|
|
"primitives/session",
|
|
"primitives/staking",
|
|
"primitives/state-machine",
|
|
"primitives/std",
|
|
"primitives/storage",
|
|
"primitives/tasks",
|
|
"primitives/test-primitives",
|
|
"primitives/timestamp",
|
|
"primitives/tracing",
|
|
"primitives/transaction-pool",
|
|
"primitives/transaction-storage-proof",
|
|
"primitives/trie",
|
|
"primitives/version",
|
|
"primitives/version/proc-macro",
|
|
"primitives/wasm-interface",
|
|
"test-utils/client",
|
|
"test-utils/derive",
|
|
"test-utils/runtime",
|
|
"test-utils/runtime/client",
|
|
"test-utils/runtime/transaction-pool",
|
|
"test-utils/test-crate",
|
|
"utils/build-script-utils",
|
|
"utils/fork-tree",
|
|
"utils/frame/benchmarking-cli",
|
|
"utils/frame/remote-externalities",
|
|
"utils/frame/frame-utilities-cli",
|
|
"utils/frame/try-runtime/cli",
|
|
"utils/frame/rpc/state-trie-migration-rpc",
|
|
"utils/frame/rpc/support",
|
|
"utils/frame/rpc/system",
|
|
"utils/frame/generate-bags",
|
|
"utils/frame/generate-bags/node-runtime",
|
|
"utils/prometheus",
|
|
"utils/wasm-builder",
|
|
]
|
|
|
|
# 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.
|
|
#
|
|
# Note that this does **not** affect crates that depend on Substrate. In other words, if you add
|
|
# a dependency on Substrate, you have to copy-paste this list in your own `Cargo.toml` (assuming
|
|
# that you want the same list). This list is only relevant when running `cargo build` from within
|
|
# the Substrate 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 }
|
|
k256 = { opt-level = 3 }
|
|
keccak = { opt-level = 3 }
|
|
libm = { opt-level = 3 }
|
|
librocksdb-sys = { 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 }
|
|
secp256k1 = { 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]
|
|
# Substrate runtime requires unwinding.
|
|
panic = "unwind"
|
|
|
|
[profile.production]
|
|
inherits = "release"
|
|
|
|
# Sacrifice compile speed for execution speed by using optimization flags:
|
|
|
|
# https://doc.rust-lang.org/rustc/linker-plugin-lto.html
|
|
lto = "fat"
|
|
# https://doc.rust-lang.org/rustc/codegen-options/index.html#codegen-units
|
|
codegen-units = 1
|