* Limit the set of known extrinsics and blocks.
* Update Cargo.lock
* Always insert and pop oldest entry if needed.
Always inserting first ensures that the element's LRU position is
updated.
* core: implement logic for tracking dag of possible pending changes
* core: move pending justifications dag to its own crate
* core: remove unnecessary clone bounds on dag
* core: request justifications in-order from the dag
* core: dag: rename changes variables to node
* core: dag: allow finalizing blocks not part of dag
* core: dag: track best finalized number
* core: dag: add more tests
* core: sync: clean up pending justifications dag
* core: dag: derive codec decode encode
* core: dag: better error support
* core: dag: add finalization guarded by predicate
* core: grandpa: track multiple authority set changes in dag
* core: dag: add pre-order iterator
* core: grandpa: request justifications on startup
* core: dag: rearrange order of definitions
* core: rename util/dag to util/fork_tree
* core: fork_tree: add docs
* core: fork_tree: add more tests
* core: fork_tree: fix issues found in tests
* core: grandpa: fix authorities tests
* core: grandpa: add docs for is_descendent_of
* core: sync: add docs for PendingJustifications
* core: sync: add test for justification requests across forks
* core: sync: don't resend import or finality notifications in tests
* core: grandpa: add test for importing multiple change blocks
* core: grandpa: fix logic for checking if a block enacts a change
* core: grandpa: fix authorities tests
* use channels to implement basic import queue
* async justification import
* better conditional for is_done in tests
* reword the test for presence of link
* fix conditional
* trace instead of panic when no link present
* reword expectations when sending to importers
* fix
* debug justification import error
* update expectations
* use NumberFor
* nits
* add general description
* move error handling into closure
* first draft of ristretto crypto module #1685
* adds better comments and code-style
* remove the last evil unwrap
* remove a mistakenly committed lockfile
* add a fresh new lockfile --will probably need a manual merge later
* fix an invalid old test vector
* Wire in ristretto
* Update comment
* Fix use.
* new Signature type api alias to be compatible with substrate
* Add new keyring, fix node executor tests
* Bump version.
* Remove all hashes.
* Update core/primitives/src/sr25519.rs
Co-Authored-By: gavofyork <github@gavwood.com>
* Revert back to Ed25519 (until JS UI is ready)
* Fix test
* fix: adds new execution strategy nativeElseWasm and replace nativeWhenPossible with it
* feat: adds cmd line params for execution strategies
* fix: uses of cmd line execution strategies
* chore: remove white spaces
* chore: remove println
* chore: remove whitespace
* fix: generating functions with context
* feat: add function to generate with_context declarations
* fix: add implementation for with_context function calls
* fix: add execution context to call_api_at function
* fix: making use of context to select strategy for block_builder
* chore: cleaning up
* fix: merging issues
* fix tests
* add wasm files
* chore: small doc for context fields
* chore: delete redundant docs
* fix: use full path for ExecutionContext
* fix: add context functions from inside fold_item_impl
* chore: remove clone
* fix: moving generative function to utils, remove unused imports
* fix: add missing full path for ExecutionContext
* fix: merge issues
* update wasm files
* fix: update to keep up with changes in master
* chore: remove unused functions, clean up
* fix test
* fix grumbles
* fix: add more tests
* fix: some refactorings
* feat: add execution strategy to call
* chore: small improvements
* fix: add message to panic
* fix tests
Procedural do not support `$crate` to get access to the crate where the
macro is defined. We use a hack to re-export the crate under a known
name. With rust edition 2018, people started to rename their crates in
`Cargo.toml`, but that breaks the re-export. This commit introduces
`proc-maco-crate` that supports finding the requested crate name, even
if it was renamed.
* Avoid excessive hashing. Store extrinsic len.
* Implement pool limits.
* Fix issues.
* Make sure we return error in case it doesn't make into the pool.
* Pass parameters from CLI.
* Remove redundant todo.
* Fix tests.
* Make runtime macros work without required `macro_use`
* Adds node-template
* Adds node-template-release tool
* Fixes building `node-template` and improve the release
* Add `profile.release` by release script to remove warning
* Adds script for releasing the node template
* Fixes compilation after master merge
* Port node-template to edition 2018
* Remove license
* Fixes compilation after master merge
* Add `node-template-release.sh` into the CI
* WIP Ci integrate node template (#1701)
* copy artifacts to s3 bucket latest path
* typo
* bucket name
* Update wasm files
* Update libp2p
* Some more diagnostics
* 30 seconds back to 5 seconds
* Bump libp2p-core and improve test
* Fix runtime Cargo.lock
* More work
* Finish upgrade to libp2p 0.3
* Add a maximum of 60 seconds for the rounds
* Remove env_logger
* Update Cargo.lock
* Update Cargo.lock in test-runtime
* Fix test compilation
* Make the test pass
* Add identify addresses to Kademlia
* Don't connect to nodes we're already connected to
* Add warning for non-Substrate nodes
* Fix external address not added
* Start in Enabled mode
* rewrite network protocol/service to use channels
* remove use of unwrap
* re-introduce with_spec
* remove unnecessary mut
* remove unused param
* improve with_spec, add with_gossip
* rename job to task
* style: re-add comma
* remove extra string allocs
* rename use of channel
* turn TODO into FIXME
* remove mut in match
* remove Self in new
* pass headers by value to network service
* remove network sender from service
* remove TODO
* better expect
* rationalize use of network sender in ondemand
* Rework how a runtime api calls into the runtime
Now we generate a default implementation for each api call that calls
a generated method `method_runtime_api_impl`. This newly generated
method is the one that will be implemented by the `impl_runtime_apis`
macro in the runtime for the client side.
* Support `changed_in` to change runtime api function signatures
* Update documentation
* Fixes tests
* Implement checking the api version with a predicate
* Make the implementation backwards compatible with CC
* Update wasm files after merge
* Check for wasm runtime differences by building master and current branch
* Update spec_version and wasm files
* Fixes
* Revert my changes
* Remove `patch.crates-io` from test-runtime
* Temporarily pin trie to #2
* Use generic and delay trait object casting
Rust does not support super-trait upcasting
* Add PlainDB impl for Ephemeral
* Add PlainDB trait alias for completeness
* Use PlainDB for test TrieBackendStorage fetch
We always check overlay first for a storage fetch, which already checked null data. Using PlainDB here makes it work
nicer with other PlainDB overlays.
* Update trie reference
* Use HashDBRef in places when approriate
* Use PlainDBRef in places when approriate
* Update trie crate reference
* Remove unused HashDB::keys
* Patch dependencies
* Fix cargolock
* Update cargo lock again
* use local version of jsonrpc to test
* Convert rpcs to test out in progress jsonrpc-derive api
* Revert "Convert rpcs to test out in progress jsonrpc-derive api"
This reverts commit 69231784171180d9bdb1bde1fcfd20f233357b17.
* Convert to new jsonrpc-derive macro
* Add RPC trait Metadata comment
* Break up long pubsub attr lines
* Update to 10.0.1 jsonrpc-* from crates.io
* Remove typed::Subscriber prefixes
* Remove empty comment
* Link substrate issue tracker in panic
* Replace allocator with freeing-bump allocator
* Revert me: Panic on double allocate/free
* Revert me: Add shallow benchmark for a first impression
* Revert "Revert me: Add shallow benchmark for a first impression"
This reverts commit 5f0d4df39395eb55c9ec2d6fe1ed992533475fec.
* Revert "Revert me: Panic on double allocate/free"
This reverts commit a114df7d6cfc21d60af396ccca02e5c8205db6ce.
* Rename heap to FreeingBumpHeapAllocator
* Rename heap.rs to allocator.rs
* Use sandbox heap
* Move functions
* Move variables into constructor
* Revert "Move variables into constructor"
This reverts commit f46fa0d0cdf4ea97760ccce58003b0d33f433743.
* Remove unnecessary casts
* Add comment for new parameter
* Improve typing
* Move variables into constructor
* Avoid dynamic allocation
* Remove unused variables
* Revert "Link substrate issue tracker in panic"
This reverts commit 32dfa1d02bcf881d1d514a930fcc0fdf3c5f8e08.
In the meantime this was fixed in https://github.com/paritytech/substrate/pull/1667.
* Improve naming
* Only assert in debug mode
* Remove dynamic allocation
* core: fix predicate for dropping grandpa round messages
* core: grandpa: drop commits topic on authority set change
* core: gossip: only drop known messages based on expiration time
* core: grandpa: don't broadcast commit messages
* core: gossip: don't assume topics are header hashes
* core: gossip: expire messages more agressively
* core: grandpa: fix test environment
* core: gossip: fix tests
* core: gossip: track dead topics (and ignore messages)
* core: gossip: test dead topic pruning
* Limit block size in runtime,
* Add test for basic authorship.
* Store length of extrinsics instead of computing it.
* Don't rely on note_extrinsic
* Use hashed version of storage and write test.
* Recompile runtime.
* Rework cli handling
* Update readme
* Adds support for custom subcommands and extra run parameters
* Update readme
* Fixes compilation after master merge
* Make "Run" the default subcommand
Actually its hidden to the outside that is an subcommand.
* Rewrite CLI to work without breaking old CLI behavior
* Some cleanup
* Fix incorrect config setup
* Update README
* Fixes after merge
* Fixes incorrect README
* Implement new inherent data
* Fixes compilation on wasm
* Fixes after rebase
* Switch back to generate inherent stuff by macro
* Update after rebase
* Apply suggestions from code review
Co-Authored-By: bkchr <bkchr@users.noreply.github.com>
* Fix compilation after rebase
* Address grumbles
* Remove `InherentDataProviders` from `Client`
* Update wasm files after rebase
* Address grumbles
* Fixes compilation after latest merge
* Last fix