* update to latest substrate
* update WASM and runtime
* Rename Id to ParaId in decl_{module,storage} (exported metadata type) (#58)
* Rename Id to ParaId in decla_module (exported type)
* AccountParaId -> AccountId
* provide through inherent-data when authoring
* remove unneeded codec round-trip in proposer
* refactor polkadot-consensus service architecture
* integrate block authorship into polkadot service
* remove unused extern substrate-network crate in service
* write wrapper for unifying errors in consensus proposer
* extend wrapper further
* switch temporarily to macro-changing branch
* runtime compiles
* implement `inherent_extrinsics` for runtime
* block authorship works
* add GRANDPA to polkadot runtime
* get everything compiling
* use substrate master branch again
* remove some unneeded params
* update WASM
* parse only extrinsics when pruning availability store
* update recent deps
* runtime almost compiles
* need to expose trait type in build : I had to put phantomdata manually.
* finish updating authorship to latest GRANDPA and Aura
* fix tests
* update wasm
* statement table yields fully-attested candidates
* attestation types in polkadot-primitives
* propose block with fully-attested candidates in consensus
* some signature-checking logic in the runtime
* fix runtime compilation
* ensure attestations are full and without duplicate when checking
* fix consensus-service compilation
* add some tests
* use bitvec from crates.io now that it's published
* sign statements based on primitive statement's encoding
* remove some serialize bounds
* Fix error message with duplicate availability attestations
Co-Authored-By: rphmeier <rphmeier@gmail.com>
* Fix up wasm runtime build
* Fixes for runtime
* Fix.
* More fixes
* Runtime builds on native.
* Native and wasm both build without warnings.
* Fix runtime tests.
* Merge #20
* Final fix for native runtime.
* Compile polkadot wo consensus
* Reverted changes to polkadot-consensus
* reintroduce minimal subset of consensus
* reintroduce checked_block to runtime for std
* polkadot_consensus compiles without most of the code
* remove checked_block again and do more checks in parachains for runtime
* uncomment proposer
* remove offline tracker
* extract out parachain-attestation logic from proposal directly
* reintroduce transaction_pool
* write some custom aura verification logic for the block verifier
* use transaction pool in more generic way
* service compiles again
* polkadot-network and tests pass
* remove unused session_key function from router
* everything but CLI compiles due to service hell
* Fixes compilation of `polkadot_cli`
* everything compiles
* update adder wasm
* Genric over hasher
* WIP start adding NodeCodec
* Add codec to TrieBackend
* Typechecks
* Fix error type
* Cleanup
* Tests build (and fail)
* Fix tests: don't use MemoryDB::default()
* Lockfile
* Address grumbles
* Teach environmental! about generics
* Add Finder artifacts
* whitespace
* Add a toy impl of Hasher and plug it in to Externalities
* Use `uint` and `fixed-hash` from `parity-common`
Remove unused U512
Add test to ensure H256 impls heapsizeof
* lock file updates
* Make hashes Encodable/Decodable
* lock file updates
* Impl FromIterator for TestExternalities so we can collect() and use map!
* Use rustc-hex from crates
Use rlp from master so dependencies do not mess up the scope
* Fix tests in runtime-io
* lockfile shenanigans
* Add a BlakeHasher impl
* Use BlakeHasher in runtime-io
* lockfile updates
* ws
* Add a Blake2/RLP-flavoured NodeCodec
* Use Blake-flavoured Hasher and NodeCodec
* lockfile
* Implement PartialEq and Default for TestExternalities
* Add note about limitations of environmental!
* Make it compile, but this is probably broken
* Derive Debug so tests in executor can work
* Make executor use BlakeHasher
* ws
* WIP make client generic
* typechecks
* cleanup
* client tests pass
* Fix client/db
* cleanup
* Fix network
* Fix rpc
* Fix service
* Make TestExternalities work better au lieu d'un HashMap
* Fix tests in council
* Fix tests in contract
* Fix tests in council
* Fix democracy
* Add comment about odd-looking reexports in tests
* Don't need to load branch
* Fix staking
* Fix session
* Some polkadot fixes and lockfile
* Fix executive
* fixup lockfile
* Fix polkadot/api
* Fix polkadot/service
* Fix polkadot/runtime tests
* Fix tests in test-runtime
* Test fixes
* Fix missing component in the `std` feature
* Use PhantomData and Result from core
* Fix paths
Use core
* load heapsize on wasm
* implement `HeapSizeOf` for wasm
* Add toy impl of `blake2_256` for no_std
* lockfile
* Use kvdb* from parity-common and fix errors
* rebuilt lockfile
* Add dummy impl of `on_advance_round` for rhododendron::Context
* Fix build after merge
* Add HeapSizeOf bound where needed
* Sort out dependencies for no_std
* Add HeapSizeOf bound where needed
* use temp branch pending PR merges
* Remove unneeded tests
* Lock file and wasm artifacts
* lockfile
* Use magic commit for libp2p
* Cleanup
* Implement blake2_256 for no_std
* Back on parity-common master
* missing type params
* Update Cargo.lock
* whitespace
* Rename concrete Rlp node codec "RlpCodec" and use everywhere
Implement a Keccak-flavoured Rlp NodeCodec and use everywhere
Add a KeccakHasher
* Switch to use KeccakHasher
* Lock file and runtimes
* fixup lockfile
* Fix outstanding issue using concrete types (thanks @gnunicorn)
* Cleanup
* More cleanup
* Comment out Blake2 Hasher
* implement ext_keccak256
* Address todo: FetchChecker is generic
* all tests passing
* notify when an authority appears to have missed their block
* Runtime API
* offline tracker
* Move to consensus
* generating reports of offline indices
* stubbed-out evaluation logic
* Slashing data pathwat
* usize -> u32
* Slash bad validators.
* update to rhododendron 0.3
* fix compilation of polkadot-consensus
* Support offline noting in checked_block
* include offline reports in block authorship voting
* do not vote validators offline after some time
* add test for offline-tracker
* fix test build
* bump spec version
* update wasm
* Only allow validators that are possible to slash
* Fix grumble
* More idiomatic
* New Wasm.
* update rhododendron
* improve logging and reduce round time exponent
* format offline validators in ss58
* update basic_add wasm
* wasm feature and collator feature
* move test parachains around a little
* fix wasm build for basic_add
* move basic_add to adder, introduce README
* minimal basic_add collator
* ensure collator messages are sent in the right order
* more logging
* route consensus statements to all peers
* minor bugfixes for parachains
* genesis builder accounts for parachain heads
* fix parachains tests
* targets for txpool
* tweak runtime + collator
* fix version in adder-collator
* consistency for overflowing
* adjust comment
* fix stable test run
* remove dummy registration test
* final grumbles
* Fix up session phase.
* Version bump.
* Version fix
* Fix session rotation properly and add test
* Make contract a separate runtime module (#345)
* decl_module and extract runtime mod
* Invert dependency staking←→contract
* Remove CodeOf
* Remove StorageOf and move double_map
* Comment staking test
* Clean
* Add gas_price and gas_limit
* Commit.
* Renames
* Params
* WIP
* Rename transfer to call
* WIP
* Rebuild binaries.
* WIP
* Backport ctro changes
* Call wiring
* Commit overlay.
* Rename merge → commit, into_state → ..._change_set
* WIP
* Contract creation routines
* Set code of the created account.
* Fix the ID of `create` Call
* Fix most of the warning.
* Add the simplest test in the contract crate
* Transfers work!
* Add contract_create test.
* Clean
* Add top-level create test
* Clean a bit.
* Pass gas_limit and data via create.
* Introduce OnAccountKill callback in staking
* Hook up OnAccountKill
* Comments
* Pay for gas.
* Refund unused gas in call
* Tests for zero call and zero endownment.
* Add todo about rewriting docs
* Pay for gas in create transactions
* Fix refunds
* Clean unrelevant comments
* fixup! Fix refunds
* fixup! Clean unrelevant comments
* Move DetermineContractAddress to contract
Also restore account removal test
* fixup! Clean unrelevant comments
* Inline effect_transfer, remove effect_create
Remove account_db!
* Use own new_test_ext.
* Don't account for liability
* Add some docs
* Move contract_fee into contract module
* Take GasMeter in vm::execute
* Use GasMeter throughout contract module for meter
* gas module refactoring
* Clean
* Add base call fee
* note about gas price should be taken from storage
* Add base fee for create
* Rename send → call
* Clean
* Take fee expressed in dots in gas
* Add Checked{Add,Sub,Mul,Div} to SimpleArithmetic
* Make Gas generic
* Store {call,create}_base_fee in storage
* Clean
* Rename buy_gas
* Store gas_price in the storage
* Remove unneeded comment.
* Bail out if contract already has code.
* Todos
* Refund even if top-level contract fails.
* Fix error msg
* Fix caller issue
* Extract tests module
* Add max_depth var in storage
* Remove left over gas_left
* Refactor exec
* Add test oog test.
* set_free_balance_creating
* Docs and comments.
* Update storage roots because of ContractFee move
* Rebuild binaries.
* Simplify vm code.
* Wrapping.
* Refactor a bit.
* Typo
* UpdateBalanceOutcome enum
* Style grumbles.
* Rebuild binaries.
* Always consume the given amount of gas.
* [skip ci] endownment → endowment
* Rename `AccountId` generic in on_account_kill
* Fix Cargo.lock
* Refine docs for gas meter.
* [skip ci] Add comments for gas module
* Directly assign to `return_data` at declaration
* Use slices instead of vecs to pass the input data
* Add todo about passing return data without copy
* Use checked_add instead of add with overflow
* Use return_data directly.
* Rebuild binaries.
* Rebuild binaries.
* Docs
* decl_module and extract runtime mod
* Invert dependency staking←→contract
* Remove CodeOf
* Remove StorageOf and move double_map
* Comment staking test
* Clean
* Add gas_price and gas_limit
* Commit.
* Renames
* Params
* WIP
* Rename transfer to call
* WIP
* Rebuild binaries.
* WIP
* Backport ctro changes
* Call wiring
* Commit overlay.
* Rename merge → commit, into_state → ..._change_set
* WIP
* Contract creation routines
* Set code of the created account.
* Fix the ID of `create` Call
* Fix most of the warning.
* Add the simplest test in the contract crate
* Transfers work!
* Add contract_create test.
* Clean
* Add top-level create test
* Clean a bit.
* Pass gas_limit and data via create.
* Introduce OnAccountKill callback in staking
* Hook up OnAccountKill
* Comments
* Pay for gas.
* Refund unused gas in call
* Tests for zero call and zero endownment.
* Add todo about rewriting docs
* Pay for gas in create transactions
* Fix refunds
* Clean unrelevant comments
* fixup! Fix refunds
* fixup! Clean unrelevant comments
* Move DetermineContractAddress to contract
Also restore account removal test
* fixup! Clean unrelevant comments
* Inline effect_transfer, remove effect_create
Remove account_db!
* Use own new_test_ext.
* Don't account for liability
* Add some docs
* Move contract_fee into contract module
* Take GasMeter in vm::execute
* Use GasMeter throughout contract module for meter
* gas module refactoring
* Clean
* Add base call fee
* note about gas price should be taken from storage
* Add base fee for create
* Rename send → call
* Clean
* Take fee expressed in dots in gas
* Add Checked{Add,Sub,Mul,Div} to SimpleArithmetic
* Make Gas generic
* Store {call,create}_base_fee in storage
* Clean
* Rename buy_gas
* Store gas_price in the storage
* Remove unneeded comment.
* Bail out if contract already has code.
* Todos
* Refund even if top-level contract fails.
* Fix error msg
* Fix caller issue
* Extract tests module
* Add max_depth var in storage
* Remove left over gas_left
* Refactor exec
* Add test oog test.
* set_free_balance_creating
* Docs and comments.
* Update storage roots because of ContractFee move
* Rebuild binaries.
* Simplify vm code.
* Wrapping.
* Refactor a bit.
* Typo
* UpdateBalanceOutcome enum
* Style grumbles.
* Rebuild binaries.
* Always consume the given amount of gas.
* [skip ci] endownment → endowment
* Rename `AccountId` generic in on_account_kill
* Fix Cargo.lock
* Refine docs for gas meter.
* [skip ci] Add comments for gas module
* Directly assign to `return_data` at declaration
* Use slices instead of vecs to pass the input data
* Add todo about passing return data without copy
* Use checked_add instead of add with overflow
* Use return_data directly.
* Rebuild binaries.
* Rebuild binaries.
* 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