* Update balance benchmarks
* Update weight functions
* Remove user component
* make componentless
* Add support for `#[extra]` tag on benchmarks
* Update balances completely
* Apply suggestions from code review
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
* Fix some tests
* Maybe fix to test. Need approval from @tomusdrw this is okay
* Make test better
* keep weights conservative
* Update macro for merge master
* Add headers
* Apply suggestions from code review
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
* BabeWorker -> BabeSlotWorker
* SlotWorker::notify_slot: similar to claim_slot, but called no matter authoring
* Wrap the future with a new struct BabeWorker
* Add type definition slot_notification_sinks
* Function slot_notification_streams for the receiver side
* Get a handle of slot_notification_sinks in BabeSlotWorker
* Implement notify_slot
* Switch to use bounded mpsc
* Do not drop the sink when channel is full
Only skip sending the message and emit a warning, because it is recoverable.
* Fix future type bounds
* Add must_use and sink type alias
* support custom ss58addressformat in from_ss58check_with_version
* fix str parse
1. if can parse with u8, use u8 into.
2. if u8 can't parse, convert to str then parse
* add a test
* typo
* add error description in test
* fix the `TryFrom<u8>` for `Ss58AddressFormat`
change check logic in TryFrom<u8> to replace modified code in `from_ss58check_with_version`
* use Ss58AddressFormat::default() replace DEFAULT_VERSION
* Apply suggestions from code review
* Update primitives/core/src/crypto.rs
* Update primitives/core/src/crypto.rs
* Update primitives/core/src/crypto.rs
* Update primitives/core/src/crypto.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* client/network/src/discovery: Adjust to Kademlia API changes
* client/network: Add peers to DHT only if protocols match
With https://github.com/libp2p/rust-libp2p/pull/1628 rust-libp2p allows
manually controlling which peers are inserted into the routing table.
Instead of adding each peer to the routing table automatically, insert
them only if they support the local nodes protocol id (e.g. `dot`)
retrieved via the `identify` behaviour.
For now this works around
https://github.com/libp2p/rust-libp2p/issues/1611. In the future one
might add more requirements. For example one might try to exclude
light-clients.
* Cargo.toml: Remove crates.io patch for libp2p
* client/network/src/behaviour: Adjust to PeerInfo name change
* client/network/src/discovery: Rework Kademlia event matching
* client/network/discovery: Add trace on adding peer to DHT
* client/network/discovery: Retrieve protocol name from kad behaviour
* client/network/discovery: Fix formatting
* client/network: Change DiscoveryBehaviour::add_self_reported signature
* client/network: Document manual insertion strategy
* client/network/discovery: Remove TODO for ignoring DHT address
Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
* Add NetworkService::send_notifications
* Doc
* Doc
* API adjustment
* Address concerns
* Make it compile
* Start implementation
* Progress in the implementation
* Change implementation strategy again
* More work before weekend
* Finish changes
* Minor doc fix
* Revert some minor changes
* Apply suggestions from code review
* GroupError -> NotifsHandlerError
* Apply suggestions from code review
Co-authored-by: Roman Borschel <romanb@users.noreply.github.com>
* state_transition_waker -> close_waker
* Apply suggestions from code review
Co-authored-by: Roman Borschel <romanb@users.noreply.github.com>
* Finish renames in service.rs
* More renames
* More review suggestsions applied
* More review addressing
* Final change
* 512 -> 2048
Co-authored-by: Roman Borschel <romanb@users.noreply.github.com>
* seal: Fix syntax that confuses rust-analyzer
* seal: Add benchmarks for Dispatchables
These are only the benchmarks for the dispatchables of
the pallet. Those are not listed in the Schedule because
we do not want to pull the Schedule from storage before
dispatching.
This OK because those costs are not related to actual contract
execution. Those costs (instruction costs, ext_* costs) will
be benchmarked seperatly and entered into the default Schedule.
* seal: Add a maximum code size
* Fix comments from review
* Removed SEED constant
* Remove service components and add build_network, build_offchain_workers etc
* Improve transaction pool api
* Remove commented out line
* Add PartialComponents
* Add BuildNetworkParams, documentation
* Remove unused imports in tests
* Apply suggestions from code review
Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
* Remove unused imports in node-bench
Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
* pallet-evm: add support for tuple-based precompile declarations
* Add missing license header
* Switch to use impl_for_tuples
* Remove unnecessary impl for ()
* seal: Fail instantiate if new contract is below subsistence threshold
We need each contract that exists to be above the subsistence threshold
in order to keep up the guarantuee that we always leave a tombstone behind
with the exception of a contract that called `ext_terminate`.
* Fixup executor test
* Bump runtime
* grandpa: remove unused methods to convert digest
* grandpa: add root extrinsic for scheduling forced change
* grandpa: add benchmark for schedule_forced_change
* grandpa: don't take authority weight in schedule_forced_change
* grandpa: add const for default forced change delay
* grandpa: adjust weights after benchmark on ref hardware
* grandpa: fix cleanup of forced changes on standard change application
* grandpa: replace schedule_forced_change with note_stalled
* grandpa: always trigger a session change when the set is stalled
* grandpa: fix bug on set id mutation after failed scheduled change
* grandpa: take delay as parameter in note_stalled
* grandpa: fix tests
* grandpa: fix cleanup of forced changes
* grandpa: add test for forced changes cleanup
* grandpa: add test for session rotation set id
* grandpa: add test for scheduling of forced changes on new session
* Initiate chaostest cli test suite: singlenodeheight on one dev node
Added chaostest stages in CI
Added new docker/k8s resources and environments to CI
Added new chaos-only tag to gitlab-ci.yml
* Update .maintain/chaostest/src/commands/singlenodeheight/index.js
Co-authored-by: Max Inden <mail@max-inden.de>
* change nameSpace to namespace(one word)
* update chaos ci job to match template
* rename build-pr ci stage to docker [chaos:basic]
* test gitlab-ci [chaos:basic]
* Update .gitlab-ci.yml
* add new build-chaos-only condition
* add *default-vars to singlenodeheight [chaos:basic]
* change build-only to build-rules on substrate jobs [chaos:basic]
* test and change when:on_success to when:always [chaos:basic]
* resolve conflicts and test [chaos:basic]
Co-authored-by: Max Inden <mail@max-inden.de>
Co-authored-by: Denis Pisarev <denis.pisarev@parity.io>
* Ensure we close old file handles hold by sysinfo
* Dropping is needed unfortunately
* enable process refreshing, ignore result from refresh_process
* jumping to proposed patch
* switch to latest sysinfo
* Switch to serde_json::Value for Visitor values
* add tests
* switch Visitor to use Map
* refactor change names
* \n
* update integration test
* use discrete maps for each type of recorded value
* update integration test
* add docs
* Update client/tracing/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
* add docs
Co-authored-by: Matt Rutherford <mattrutherford@users.noreply.github.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
* Initial commit
Forked at: 74655edebc
Parent branch: origin/master
* Move task_manager.rs to mod.rs
* Graceful shutdown for the task manager
* Await all background task JoinHandle at the same time
* Add tests
* Make future() wait also for exit signal + fix essential task failed
Probably related to https://github.com/paritytech/cumulus/issues/111
* add comments for non-obvious code
* Use clean_shutdown() in sc-cli
* Adapt code and upgrade tokio in sc-cli
* cleanup spacing in doc
* Add license
* I guess actually running the clean shutdown would be a good idea
* fix tests
* Update client/cli/src/runner.rs
Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>
* Improve error logging
* disable other tests (can't reproduce on my machine)
* Revert "disable other tests (can't reproduce on my machine)"
This reverts commit c133c590f33c253123ba0555ce719a71ededd60d.
* It is possible that the tasks are ended first
* Revert "It is possible that the tasks are ended first"
This reverts commit 502aba4a49fb5d892e704c412b8a81768a3f2c71.
* Use single threaded scheduler for more predictability
* enable_time
* Revert "enable_time"
This reverts commit 4e152140764a4bddeedff06a4e36ec701909e8c7.
* Revert "Use single threaded scheduler for more predictability"
This reverts commit ee5e13c5f13ff71e012dcda13579dffeb15f8ffc.
* Revert "Revert "It is possible that the tasks are ended first""
This reverts commit 1b91a8ca3eebbdc18be199c8ca188e88669ae649.
* This cannot be verified either with a threaded pool
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Benjamin Kampmann <ben@parity.io>
Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Instead of requiring `T: Trait` in `BalanceSwapAction`, we directly
depend on `AccountId`. This fixes a compilation error on wasm, where
`Runtime` does not implement `Debug`, but `BalanceSwapAction` required it.
* change (ci): 3 jobs in 1 decreases concurrency and is more effectiv; w/o release it's ~20% faster, but needs testing on prod; wasmtest tests are already running within cargo test --workspace
* fix (test): these ones were failing on nightly
* save: cargo profiles [skip ci]
* change (ci): one test to run them all
* change (ci): rebase
* Revert "change (ci): rebase"
This reverts commit 8a6b7ea043a460bf71526ccaa4c7a68899a3b2bc.
* fix (config): fix manifest
* change (ci): bench release