* Final tweaks for PoC-2 runtime upgrade
* Address grumble
* Avoid slow wasm
* New poc-2-era bootnodes
* Fix warning
* Typo
* Fix for allocation in wasm
* Fix & runtimes.
* PoC-1 should be default.
* Name testnet Krumme Lanke, update README
* YML update
* Use the right port
* Fix warnings in libp2p
* Force a reason when you use the fatalist disable_peer
* Print more information
* Slightly more concise ref-fu
* Tracing for figuring out what's going into genesis
* Merge
* Fxi test
* make spec.name() part of database_path preventing collisions
resolves#279
* add `id` field to `ChainSpec`
* add blank line for readability
* dot/cli: use spec_id in db_path
* dot/cli: make spec_id part of keystore_path
* dot/cli: make spec_id part of network_path
* add id field to poc-1.json chain spec
* dot/cli: spec_id -> chain_id
* Switch from devp2p to libp2p
* Move the keys in the network state
* Properly load, store or generate private key
* Some robustness
* Update for latest libp2p
* Allow secio
* Don't open a new Kademlia connec all the time
* Handle Kademlia disconnection
* Set correct permissions on key file
* Improvements to secret key storage
* Flush the peer store at Kademlia requests
* Use RAII guards for disconnection
* Some misc work
* Set informations about peers
* Fix tests and external URL
* Fix some style
* Split obtain_private_key into multiple function
* More style fixes
* More style fixes
* Fix some concerns
* Turn // into ///
* More style fixes
* More style fixes
* Add annotations to unreachable!
* Fix style again
* Remove commented out code
* Fix test year
* More concerns
* Substrate service
* Splitting polkadot service
* Specialised components
* Specialised components
* Docs and style
* Docs and style
* Final touches
* Added db key assertion
* skeleton of collators object
* awaiting and handling collations. rename `collators` to CollationPool
* add some tests
* add tests
* implement Collators trait for ConsensusNetwork
* plug collators into main polkadot-network
* ignore collator role message
* add a couple more tests
* garbage collection for collations
* ensure disconnected backup collator is removed from pool
* address other grumbles
* runtime: refactor Checkable and BlindCheckable traits
* fix impl BlindCheckable for Extrinsic
* fix impl Checkable for TestXt
* fix impl Checkable for UncheckedExtrinsic
* fix tabs
* add ::Address to system::Trait since its no longer in Checkable trait
* replace tab by space in comment
* replace occurences of Checkable::check with ::check_with
* tx-pool: replace CheckedIntrinsic type alias since it now would require type param
* make more uses of Checkable compile
* adapt Executive impl to new Checkable trait
* fix that CheckedExtrinsic takes AccountId not Address as first type param
* Checkable trait: return error again since it's required in some cases
* Checkable: improve docstrings
* consistent punctuation and capitalization in docstrings
* Ctx -> Context
addresses https://github.com/paritytech/polkadot/pull/287#discussion_r200956240
* reduce trait bounds for impl Checkable for TestXt
addresses https://github.com/paritytech/polkadot/pull/287#discussion_r200839303
* use <UncheckedExtrinsic as Checkable>::Checked
addresses https://github.com/paritytech/polkadot/pull/287#discussion_r200955165
* Revert "add ::Address to system::Trait since its no longer in Checkable trait"
This reverts commit 02eb103015b833c995c9f9067aac2542bb7ce5ea.
* runtime/executive: properly fix that Address no longer in Checkable
* return `Result<Self::Checked, &'static str>` from `Checkable::check`
* arbitrary application logic in CLI
* collation work
* split up exit and work futures in application
* collation node workflow
* typo
* indentation fix
* doc grumbles
* rename Application to Worker
* refactor Worker::exit to exit_only
* dynamic inclusion threshold calculator
* collators interface
* collation helpers
* initial proposal-creation future
* create proposer when asked to propose
* remove local_availability duty
* statement table tracks includable parachain count
* beginnings of timing future
* finish proposal logic
* remove stray println
* extract shared table to separate module
* change ordering
* includability tracking
* fix doc
* initial changes to parachains module
* initialise dummy block before API calls
* give polkadot control over round proposer based on random seed
* propose only after enough candidates
* flesh out parachains module a bit more
* set_heads
* actually introduce set_heads to runtime
* update block_builder to accept parachains
* split block validity errors from real errors in evaluation
* update WASM runtimes
* polkadot-api methods for parachains additions
* delay evaluation until candidates are ready
* comments
* fix dynamic inclusion with zero initial
* test for includability tracker
* wasm validation of parachain candidates
* move primitives to primitives crate
* remove runtime-std dependency from codec
* adjust doc
* polkadot-parachain-primitives
* kill legacy polkadot-validator crate
* basic-add test chain
* test for basic_add parachain
* move to test-chains dir
* use wasm-build
* new wasm directory layout
* reorganize a bit more
* Fix for rh-minimal-parachain (#141)
* Remove extern "C"
We already encountered such behavior (bug?) in pwasm-std, I believe.
* Fix `panic_fmt` signature by adding `_col`
Wrong `panic_fmt` signature can inhibit some optimizations in LTO mode.
* Add linker flags and use wasm-gc in build script
Pass --import-memory to LLD to emit wasm binary with imported memory.
Also use wasm-gc instead of wasm-build.
* Fix effective_max.
I'm not sure why it was the way it was actually.
* Recompile wasm.
* Fix indent
* more basic_add tests
* validate parachain WASM
* produce statements on receiving statements
* tests for reactive statement production
* fix build
* add OOM lang item to runtime-io
* use dynamic_inclusion when evaluating as well
* fix update_includable_count
* remove dead code
* grumbles
* actually defer round_proposer logic
* update wasm
* address a few more grumbles
* schedule collation work as soon as BFT is started
* impl future in collator
* fix comment
* governance proposals for adding and removing parachains
* bump protocol version
* tear out polkadot-specific pieces of substrate-network
* extract out polkadot-specific stuff from substrate-network
* begin polkadot network subsystem
* grumbles
* update WASM checkins
* parse status from polkadot peer
* allow invoke of network specialization
* begin statement router implementation
* remove dependency on tokio-timer
* fix sanity check and have proposer factory create communication streams
* pull out statement routing from consensus library
* fix comments
* adjust typedefs
* extract consensus_gossip out of main network protocol handler
* port substrate-bft to new tokio
* port polkadot-consensus to new tokio
* fix typo
* start message processing task
* initial consensus network implementation
* remove known tracking from statement-table crate
* extract router into separate module
* defer statements until later
* double signature is invalid
* propagating statements
* grumbles
* request block data
* fix compilation
* embed new consensus network into service
* port demo CLI to tokio
* all test crates compile
* some tests for fetching block data
* whitespace
* adjusting some tokio stuff
* update exit-future
* remove overly noisy warning
* clean up collation work a bit
* address review grumbles
* fix lock order in protocol handler
* rebuild wasm artifacts
* tag AuthorityId::from_slice for std only
* address formatting grumbles
* rename event_loop to executor
* some more docs for polkadot-network crate
* Refactor to provide performance improvements for RuntimeVersion lookup, too.
Provides a new runtime_version function which, given a specific , returns
the runtime version for that block, either cached or by executing the block
and caching the result. Exposes that function through all clients to make
most use of that performance improvements.
* Improve Runtime execution by caching runtime lookup
Cache whether the native or wasm runtime should be used for a given
code and if the latter, keep around the parsed wasmi::Module for faster
execution.
* Additional comment and code style fixes
* Fallback to WASM runtime if we can't call the version function
* The previous assumption that the wasm-code was compiled with rustc might be wrong now, that the code comes from the blockchain. Added Notes about that.