Skip to content
  1. May 15, 2020
  2. May 13, 2020
  3. May 12, 2020
    • André Silva's avatar
      grandpa: missing equivocation reporting nits (#5953) · b85fc50a
      André Silva authored
      * primitives: move reporting key type to common key types
      
      * session: remove useless methods on MembershipProof
      
      * grandpa: remove std special-casing when checking signatures
      
      * grandpa: add some more docs
      
      * grandpa: use proper error types rather than strings
      b85fc50a
  4. May 06, 2020
  5. Apr 23, 2020
  6. Apr 20, 2020
  7. Apr 03, 2020
  8. Mar 30, 2020
    • Rakan Alhneiti's avatar
      Introduce `sign_with` method in keystore (#4925) · 7e7d3e0f
      Rakan Alhneiti authored
      
      
      * Add KEY_KIND_ID to the public trait
      
      This change is being introduced for the purpose of identifying a public
      key with it's identifier and algorithm "kind".
      
      * Use `sign_with` as implemented in BareCryptoStore
      
      * Implement `sign_with` in sc_keystore
      
      * Fix inconsistencies, use *_KIND_ID in sp_core testing
      
      * Rename KeyKindId to CryptoTypeId
      
      * Remove pair-returning functions from BareCryptoStore trait
      
      * Define CryptoTypeId in app-crypto macros
      
      * Add functions to get keys supported by keystore
      
      * Fix sign_with signature to include CryptoTypePublicPair
      
      * Add `sign_with_any` and `sign_with_all`
      
      * Use keystore.sign_with in auth_discovery
      
      * Rename get_supported_keys -> supported_keys
      
      * Added headers to function docstrings
      
      * Use chain instead of extending a temp vector
      
      * Fixed some code formatting
      
      * Restrict size of CryptoTypeId
      
      This is to be able to use Encode/Decode derives and the overcome having
      the size being unknown at compile-time.
      
      * Implement sign_with in the trait itself
      
      * Remove whitespace
      
      * Use key_type also as a CryptoTypeId in app_crypto macros
      
      * Rename `get_keys` to `keys` in BareCryptoStore
      
      * Remove usage of key_pair funcs in tests
      
      * Adjust docstring for *_CYPTO_ID constants
      
      * Fix failures
      
      * Simplify mapping on keys
      
      * Remove one let
      
      * Fixed typo
      
      * PR feedback
      
      * remove whitespace
      
      * Zip keys and signatures
      
      * Use into_iter & remove cloned
      
      * Pass index to MissingSignature
      
      * Use typed errors instead of strings for BareCryptoStore
      
      * Implement Debug for trait error
      
      * Use hashsets for better performance for supported_keys
      
      * Make sure keys are inserted into the keystore
      
      * Make sign_with_all return type consistent with `sign_with`
      
      * Rename Error to BareCryptoStoreError
      
      * Rename CRYPT_TYPE_ID -> CRYPTO_ID
      
      * Remove unnecessary CRYPTO_ID declaration in Public trait
      
      * Convert pub key to CryptoTypePublicPair
      
      * Fix use
      
      * Fix code style
      
      * Implement From on CryptoTypePublicPair in app_crypto macros
      
      * Change CryptoTypePublicPair to a struct
      
      * Implement Display on CryptoTypePublicPair
      
      * Pass CryptoTypePublicPair to MissingSignature error
      
      * Adjust docs according to function signature
      
      * Unify keys implementation
      
      * Fix RPC author tests
      
      * Fix stackoverflow
      
      * Tabify spaces
      
      * Pass KeyTypeId to error for easier debugging
      
      * Fix asserts
      
      * Use ToHex to format public key
      
      * Use constants from sp_core
      
      * Rename testing KeyTypeId constants
      
      * Please compiler
      
      * Restore KeyTypeId names
      
      apparently, they're not only used in tests
      
      * Use BareCryptoStoreError instead of String
      
      * Document return value
      
      * Fix borrow check
      
      * Convert to hashset internally
      
      * WIP - iter_keys
      
      * Return raw_public_keys
      
      * Address PR feedback
      
      * Address PR Feedback
      
      * Fix hexdisplay import error
      
      * Update primitives/core/src/traits.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      7e7d3e0f
  9. Mar 27, 2020
  10. Mar 26, 2020
    • Kian Paimani's avatar
      Offchain Phragmén BREAKING. (#4517) · d1238423
      Kian Paimani authored
      * Initial skeleton for offchain phragmen
      
      * Basic compact encoding decoding for results
      
      * add compact files
      
      * Bring back Self::ensure_storage_upgraded();
      
      * Make staking use compact stuff.
      
      * First seemingly working version of reduce, full of todos
      
      * Everything phragmen related works again.
      
      * Signing made easier, still issues.
      
      * Signing from offchain compile fine 😎
      
      * make compact work with staked asssignment
      
      * Evaluation basics are in place.
      
      * Move reduce into crate. Document stuff
      
      * move reduce into no_std
      
      * Add files
      
      * Remove other std deps. Runtime compiles
      
      * Seemingly it is al stable; cycle implemented but not integrated.
      
      * Add fuzzing code.
      
      * Cleanup reduce a bit more.
      
      * a metric ton of tests for staking; wip 🔨
      
      * Implement a lot more of the tests.
      
      * wip getting the unsigned stuff to work
      
      * A bit gleanup for unsigned debug
      
      * Clean and finalize compact code.
      
      * Document reduce.
      
      * Still problems with signing
      
      * We officaly duct taped the transaction submission stuff. 🤓
      
      * Deadlock with keys again
      
      * Runtime builds
      
      * Unsigned test works 🙌
      
      * Some cleanups
      
      * Make all the tests compile and stuff
      
      * Minor cleanup
      
      * fix more merge stuff
      
      * Most tests work again.
      
      * a very nasty bug in reduce
      
      * Fix all integrations
      
      * Fix more todos
      
      * Revamp everything and everything
      
      * Remove bogus test
      
      * Some review grumbles.
      
      * Some fixes
      
      * Fix doc test
      
      * loop for submission
      
      * Fix cli, keyring etc.
      
      * some cleanup
      
      * Fix staking tests again
      
      * fix per-things; bring patches from benchmarking
      
      * better score prediction
      
      * Add fuzzer, more patches.
      
      * Some fixes
      
      * More docs
      
      * Remove unused generics
      
      * Remove max-nominator footgun
      
      * Better fuzzer
      
      * Disable it 
      
      
      
      * Bump.
      
      * Another round of self-review
      
      * Refactor a lot
      
      * More major fixes in perThing
      
      * Add new fuzz file
      
      * Update lock
      
      * fix fuzzing code.
      
      * Fix nominator retain test
      
      * Add slashing check
      
      * Update frame/staking/src/tests.rs
      
      Co-Authored-By: default avatarJoshy Orndorff <[email protected]>
      
      * Some formatting nits
      
      * Review comments.
      
      * Fix cargo file
      
      * Almost all tests work again
      
      * Update frame/staking/src/tests.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Fix review comments
      
      * More review stuff
      
      * Some nits
      
      * Fix new staking / session / babe relation
      
      * Update primitives/phragmen/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Update primitives/phragmen/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Update primitives/phragmen/compact/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Some doc updates to slashing
      
      * Fix derive
      
      * Remove imports
      
      * Remove unimplemented tests
      
      * nits
      
      * Remove dbg
      
      * Better fuzzing params
      
      * Remove unused pref map
      
      * Deferred Slashing/Offence for offchain Phragmen  (#5151)
      
      * Some boilerplate
      
      * Add test
      
      * One more test
      
      * Review comments
      
      * Fix build
      
      * review comments
      
      * fix more
      
      * fix build
      
      * Some cleanups and self-reviews
      
      * More minor self reviews
      
      * Final nits
      
      * Some merge fixes.
      
      * opt comment
      
      * Fix build
      
      * Fix build again.
      
      * Update frame/staking/fuzz/fuzz_targets/submit_solution.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update frame/staking/src/slashing.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Update frame/staking/src/offchain_election.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      * Fix review comments
      
      * fix test
      
      * === 🔑
      
       Revamp without staking key.
      
      * final round of changes.
      
      * Fix cargo-deny
      
      * Update frame/staking/src/lib.rs
      
      Co-Authored-By: default avatarGavin Wood <[email protected]>
      
      Co-authored-by: default avatarJoshy Orndorff <[email protected]>
      Co-authored-by: default avatarthiolliere <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      d1238423
    • Spencer Judge's avatar
      Make AccountId32 hashable (#5405) · 4e196982
      Spencer Judge authored
      
      
      * Make AccountId32 hashable
      
      * Only implement Hash in std
      
      Co-Authored-By: default avatarNikolay Volf <[email protected]>
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      4e196982
  11. Mar 10, 2020
  12. Mar 09, 2020
  13. Mar 06, 2020
  14. Mar 05, 2020
  15. Mar 04, 2020
  16. Feb 17, 2020
    • Shawn Tabrizi's avatar
      Fix various spelling errors (#4940) · db1ab7d1
      Shawn Tabrizi authored
      
      
      * meaningfull -> meaningful
      
      * initialise -> initialize
      
      * tokans -> tokens
      
      * incentivise -> incentivize
      
      * lenght -> length
      
      * incentivisation -> incentivization
      
      * doesnt't -> doesn't
      
      * overwriten -> overwritten
      
      * lifecycle -> life cycle
      
      * lifecycle -> life cycle
      
      * usefull -> useful
      
      * noone -> no one
      
      * spaming -> spamming
      
      * defered -> deferred
      
      * hieght -> height
      
      * sumation -> summation
      
      * ingore -> ignore
      
      * registed -> registered
      
      * Auxialary -> Auxiliary
      
      * loggin -> logging
      
      * independance -> independence
      
      * trailling -> trailing
      
      * responsability -> responsibility
      
      * trunkated -> truncated
      
      * Weither -> Whether
      
      * informations -> information
      
      * Runtume -> Runtime
      
      * choosen -> chosen
      
      * delcataion -> declaration
      
      * Unchekced -> Unchecked
      
      * defintion -> definition
      
      * scrach -> scratch
      
      * imput -> input
      
      * transfered -> transferred
      
      * endownment -> endowment
      
      * Determinator -> Determiner
      
      * relevent -> relevant
      
      * emited -> emitted
      
      * acocunt -> account
      
      * proprotional -> proportional
      
      * instantiaion -> instantiation
      
      * commited -> committed
      
      * tombstonedead -> tombstone
      
      * uwnrap -> unwrap
      
      * acount -> account
      
      * specialised -> specialized
      
      * existant -> existent
      
      * requried -> required
      
      * Anull -> Annul
      
      * AUTHORITES -> AUTHORITIES
      
      * underyling -> underlying
      
      * recognisable -> recognizable
      
      * Capitalise -> Capitalize
      
      * reportfor -> report for
      
      * hearbeat -> heartbeat
      
      * onlineness -> being online
      
      * creater -> creator
      
      * Bytearray -> Byte array
      
      * Despoit -> Deposit
      
      * substratced -> subtracted
      
      * Curent -> Current
      
      * imbalanes -> imbalances
      
      * countfown -> countdown
      
      * inexisting -> inexistent
      
      * additionaly -> additionally
      
      * substracted -> subtracted
      
      * auxilary -> auxiliary
      
      * parital -> partial
      
      * in't -> isn't
      
      * compatability -> compatibility
      
      * infomation -> information
      
      * etected -> detected
      
      * extrinsiscs -> extrinsics
      
      * reprensentation -> representation
      
      * coonfiguration -> configuration
      
      * primtives -> primitives
      
      * miscelanious -> miscellaneous
      
      * VERISON -> VERSION
      
      * endcoded -> encoded
      
      * Genrates -> Generates
      
      * miliseconds -> milliseconds
      
      * occured -> occurred
      
      * trully -> truely
      
      * truely -> truly
      
      * conjuction -> conjunction
      
      * encouters -> encounters
      
      * customised -> customized
      
      * deterministicly -> deterministically
      
      * finalisation -> finalization
      
      * pluggable -> plugable
      
      * wakeup -> wake-up
      
      * interemdiate -> intermediate
      
      * intepreting -> interpreting
      
      * finalzied -> finalized
      
      * throgh -> through
      
      * extinsic -> extrinsic
      
      * convient -> convenient
      
      * allocater -> allocator
      
      * propagateable -> propagatable
      
      * succesfuly -> successfully
      
      * finalising -> finalizing
      
      * publically -> publicly
      
      * phrasee -> phrase
      
      * substration -> substractions
      
      * substractions -> subtractions
      
      * neccessarily -> necessarily
      
      * Inlucde -> Include
      
      * unefficient -> inefficient
      
      * thay -> they
      
      * funtion -> function
      
      * datastructures -> data structures
      
      * infromation -> information
      
      * propagatable -> propagable
      
      * ecountered -> encountered
      
      * recognise -> recognize
      
      * intergration -> integration
      
      * lastet -> latest
      
      * datatypes -> data types
      
      * datatype -> data type
      
      * Strongarming -> Strong Arming
      
      * avaible -> available
      
      * Commiting -> Committing
      
      * Retreiving -> Retrieving
      
      * shoud -> should
      
      * canonicaliziation -> canonicalization
      
      * comitted -> committed
      
      * clonable -> cloneable
      
      * Uknown -> Unknown
      
      * reponse -> response
      
      * arbitary -> arbitrary
      
      * Capapbilities -> Capabilities
      
      * responsbile -> responsible
      
      * initialisation -> initialization
      
      * cames -> came
      
      * intemediate -> intermediate
      
      * reqeust -> request
      
      * intance -> instance
      
      * explcitly -> explicitly
      
      * neighor -> neighbor
      
      * reolving -> resolving
      
      * untill -> until
      
      * Validte -> Validate
      
      * deserailize -> deserialize
      
      * literaly -> literally
      
      * preceeding -> preceding
      
      * abpve -> above
      
      * chcecked -> checked
      
      * numbet -> number
      
      * Unknow -> Unknown
      
      * halfs -> halves
      
      * gossup -> gossip
      
      * givent -> given
      
      * immediatelly -> immediately
      
      * slicable -> sliceable
      
      * conensus -> consensus
      
      * Mimicks -> Mimics
      
      * acccept -> accept
      
      * serialise -> serialize
      
      * exstrinsics -> extrinsics
      
      * panicks -> panics
      
      * maintaince -> maintenance
      
      * repeatidely -> repeatedly
      
      * anecstor -> ancestor
      
      * becasue -> because
      
      * processer -> processor
      
      * Prunning -> Pruning
      
      * insterested -> interested
      
      * unuseful -> not useful
      
      * yeided -> yielded
      
      * descendfing -> descending
      
      * corresponts -> corresponds
      
      * survivew -> survive
      
      * keps -> keeps
      
      * ligh -> light
      
      * prerequisities -> prerequisites
      
      * positiion -> position
      
      * depedency -> dependency
      
      * extrinisic -> extrinsic
      
      * atomicaly -> atomically
      
      * staticly -> statically
      
      * resul -> result
      
      * timestamb -> timestamp
      
      * Utilites -> Utilities
      
      * ammount -> amount
      
      * pocess -> process
      
      * exteral -> external
      
      * Update client/finality-grandpa/src/tests.rs
      
      * Update primitives/io/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update primitives/blockchain/src/lib.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/weights.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update bin/node/cli/tests/common.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/api/src/execution_extensions.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/cli/src/params.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/executor/common/src/sandbox.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/api/src/execution_extensions.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/finality-grandpa/src/communication/mod.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/state-db/src/pruning.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update frame/contracts/src/tests.rs
      
      Co-Authored-By: default avatarjoe petrowski <[email protected]>
      
      * Update client/api/src/execution_extensions.rs
      
      * bump impl
      
      * timestamb -> timestamp
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      db1ab7d1
  17. Jan 29, 2020
  18. Jan 28, 2020
  19. Jan 24, 2020
    • Bastian Köcher's avatar
      Introduces `author_hasKey` and `author_hasSessionKeys` rpc endpoints (#4720) · 82428e08
      Bastian Köcher authored
      
      
      * Introduces `author_hasKey` and `author_hasSessionKeys` rpc endpoints
      
      Both endpoints can be used to check if a key is present in the keystore.
      
      - `hasKey` works on with an individual public key and key type. It
      checks if a private key for the given combination exists in the
      keystore.
      - `hasSessionKeys` works with the full encoded session key blob stored
      on-chain in `nextKeys`. This requires that the given blob can be decoded
      by the runtime. It will return `true`, iff all public keys of the
      session key exist in the storage.
      
      Fixes: https://github.com/paritytech/substrate/issues/4696
      
      * Update client/rpc-api/src/author/error.rs
      
      Co-Authored-By: default avatarNikolay Volf <[email protected]>
      
      * Indentation
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      82428e08
  20. Jan 05, 2020
  21. Dec 21, 2019
  22. Dec 18, 2019
  23. Dec 16, 2019
    • Tomasz Drwięga's avatar
      [big refactor] Remove crate aliasing. (#4395) · 40a16efe
      Tomasz Drwięga authored
      * Rename: Phase 1.
      
      * Unify codec.
      
      * Fixing: Phase 2
      
      * Fixing: Phase 3.
      
      * Fixing: Phase 4.
      
      * Fixing: Phase 5.
      
      * Fixing: Phase 6.
      
      * Fixing: Phase 7.
      
      * Fixing: Phase 8. Tests
      
      * Fixing: Phase 9. Tests!!!
      
      * Fixing: Phase 10. Moar tests!
      
      * Finally done!
      
      * More fixes.
      
      * Rename primitives:: to sp_core::
      
      * Apply renames in finality-grandpa.
      
      * Fix benches.
      
      * Fix benches 2.
      
      * Revert node-template.
      
      * Fix frame-system in our modules.
      40a16efe
  24. Dec 15, 2019
  25. Dec 10, 2019
  26. Nov 14, 2019
    • Benjamin Kampmann's avatar
      Reorganising the repository - external renames and moves (#4074) · f44873dc
      Benjamin Kampmann authored
      * Adding first rough ouline of the repository structure
      
      * Remove old CI stuff
      
      * add title
      
      * formatting fixes
      
      * move node-exits job's script to scripts dir
      
      * Move docs into subdir
      
      * move to bin
      
      * move maintainence scripts, configs and helpers into its own dir
      
      * add .local to ignore
      
      * move core->client
      
      * start up 'test' area
      
      * move test client
      
      * move test runtime
      
      * make test move compile
      
      * Add dependencies rule enforcement.
      
      * Fix indexing.
      
      * Update docs to reflect latest changes
      
      * Moving /srml->/paint
      
      * update docs
      
      * move client/sr-* -> primitives/
      
      * clean old readme
      
      * remove old broken code in rhd
      
      * update lock
      
      * Step 1.
      
      * starting to untangle client
      
      * Fix after merge.
      
      * start splitting out client interfaces
      
      * move children and blockchain interfaces
      
      * Move trie and state-machine to primitives.
      
      * Fix WASM builds.
      
      * fixing broken imports
      
      * more interface moves
      
      * move backend and light to interfaces
      
      * move CallExecutor
      
      * move cli off client
      
      * moving around more interfaces
      
      * re-add consensus crates into the mix
      
      * fix subkey path
      
      * relieve client from executor
      
      * starting to pull out client from grandpa
      
      * move is_decendent_of out of client
      
      * grandpa still depends on client directly
      
      * lemme tests pass
      
      * rename srml->paint
      
      * Make it compile.
      
      * rename interfaces->client-api
      
      * Move keyring to primitives.
      
      * fixup libp2p dep
      
      * fix broken use
      
      * allow dependency enforcement to fail
      
      * move fork-tree
      
      * Moving wasm-builder
      
      * make env
      
      * move build-script-utils
      
      * fixup broken crate depdencies and names
      
      * fix imports for authority discovery
      
      * fix typo
      
      * update cargo.lock
      
      * fixing imports
      
      * Fix paths and add missing crates
      
      * re-add missing crates
      f44873dc
    • Max Inden's avatar
      *: Refactor authority discovery (key mngmt, runtime API) (#3955) · 6ae3b6c4
      Max Inden authored
      * {core,srml}/authority-discovery: Move generic to specific session keys
      
      * {srml,core}/authority-discovery: Verify signature outside of runtime
      
      Given that the `core/authority-discovery` uses concrete authority
      identifiers and signatures, one can verify a signature with the
      authority discovery within `core`. Given the above, the `verify` runtime
      api is obsolete and thus removed.
      
      * *: Add authority discovery to the set of session keys
      
      * *: Sign authority discovery DHT payload with keystore instead of runtime
      
      Instead of calling a runtime function to sign a dht payload, which then
      invokes the keystore, pass the keystore to the authority discovery
      module and use it directly.
      
      * core/authority-discovery: Give libp2p Kademlia time to start up
      
      * core/authority-discovery: Move authorities priority group name to const
      
      * node/runtime/src/lib.rs: Bump runtime spec version
      
      * *: Fix lints and node/testing test failures
      
      * *: Fix formatting
      
      * core/authority-discovery: Box dht event channel in unit tests
      
      * node/cli/src/service.rs: Fix future import
      
      * node/cli/src/service.rs: Replace unwrap by expect with proof
      
      * node/cli/src/chain_spec: Remove TODO for testnet key generation
      
      * core/authority-discovery/src/lib: Remove scale encoding TODOs
      
      * srml/authority-discovery: Make comment a doc comment
      
      * core/authority-discovery: Remove unused StreamExt import
      
      * node/runtime: Bump impl version to debug CI
      
      * Test ci.
      
      * Change the line width to 100.
      
      * Revert "Change the line width to 100."
      
      This reverts commit edff1f85.
      
      * Fix a check for polkadot to work on forked repos.
      
      * Revert "node/runtime: Bump impl version to debug CI"
      
      This reverts commit 1a90903b.
      
      * Revert "Test ci."
      
      This reverts commit a2c9df57.
      
      * Cargo.lock: Fix wrong lock file merge
      
      * srml/authority-discovery: Keep track of new validator set not upcoming
      
      * core/authority-discovery: Document key retrieval functions
      6ae3b6c4
  27. Nov 10, 2019
    • Bastian Köcher's avatar
      Substrate runtime interface 2.0 (#4057) · a86bb37b
      Bastian Köcher authored
      * Adds first version of traits for generating the host functions
      
      * First steps of the procedural macro
      
      * Implements generation of the host extern functions
      
      * Prefix ext host function with snake case trait name
      
      * Implement host functions implementation on the host
      
      * Change `HostFunctions` interface
      
      * Implement `HostFunctions` for tuples
      
      * Make `WasmExecutor` generic over the host functions
      
      * Begin to add a test and make it compile
      
      * Make the test succeed
      
      * Add test to ensure that host functions are not found
      
      * It's alive! Make the `set_storage` test work
      
      * Add test for mutable references
      
      * Code cleanup and documentation etc
      
      * Add marker trait for types that should be passed as SCALE encoded
      
      * Inherit the visibility from the trait and more improvements
      
      * More impls and move them into their own file
      
      * Code simplification by dropping one trait
      
      * Give it a better name
      
      * Implement traits for arrays
      
      * Refactor code to support pass by codec/inner
      
      * Docs
      
      * Implement pass by inner for some crypto types and add a test
      
      * Implement exchangeable function support
      
      * Rewrite sr-io with as runtime interface
      
      * Start reworking after master merge
      
      * Adds `PassByCodec` derive
      
      * Adds `PassByInner` derive
      
      * Fix compilation errors
      
      * More implementations
      
      * Implement runtime interface traits for `str`
      
      * Make `sr-io` compile again
      
      * Fix more compilation errors
      
      * More progress on getting stuff back to compile
      
      * More compilation fixes
      
      * Fix warnings
      
      * Remove le conversions
      
      * Add support for `wasm_only` interfaces
      
      * Implement `Allocator` interface
      
      * Improve error message
      
      * Move `WasmAllocator` to `sr-io` and more clean ups
      
      * Use correct function signature for wasm functions
      
      * Store the host functions with the Wasm runtime
      
      * Docs update
      
      * Fix compilation after master merge
      
      * Remove `sr-io/without_std`
      
      * Make `srml-support` tests run again
      
      * More compilation error fixes
      
      * Use correct doc syntax
      
      * Fix test-runtime
      
      * Fix compilation
      
      * Catch native panics when executing the wasm runtime
      
      As with the native runtime, we now catch all native panics when we
      execute the wasm runtime. The panics inside the wasm runtime were
      already catched before by the wasm executor automatically, but any panic
      in the host functions could bring down the node. The recent switch to
      execute the native counterpart of the host function in `sr-io`, makes
      this change required. The native `sr-io` functions just `panic` when
      something is not provided or any other error occured.
      
      * Fix compilation
      
      * Don't panic in a panic
      
      * Move `sr-sandbox` to new runtime interface
      
      * Fixes tests after sandbox changes
      
      * Make sure we detect invalid utf8
      
      * Fixes after master merge
      
      * Adds pass by enum strategy
      
      * Fix wasmtime integration
      
      * Some macro structure clean up
      
      * Rework and test exchangebale host functions
      
      * PassBy derive macros documentation
      
      * Docs for `runtime_interface` macro
      
      * Support wild card argument names
      
      * Adds ui tests
      
      * Make sure that we are backwards compatible to the old runtime interfaces
      
      * Documentation
      
      * Fixes after latest master merge
      
      * Make `wasmtime` happy
      
      * Make `full_crypto` work
      
      * Make the new interface versionable
      
      * Rename `Sanboxing` to `Sandbox`
      
      * Don't finalize in test while importing
      
      * Fix Performance regression
      
      * Fix test
      a86bb37b
  28. Nov 04, 2019
    • brenzi's avatar
      support crypto primitives for no_std introducing `full_crypto` feature (#3778) · cefe4dc2
      brenzi authored
      * introduced "with_crypto" feature and applied switches like in substrate-api-client fork
      
      * introduced "with_crypto" feature and applied switches like in substraTEE-worker fork
      
      * distinguishing core::hash vs std::hash
      
      * @bkchr's review requests fulfilled
      
      * fixes
      
      * revert dependency upgrade ed25519-dalek
      
      * added full_crypto features to all crates using app_crypto! macro
      
      * fixing CI complaints.
      
      * fix again
      
      * adding CI test for with_crypto feature
      
      * added full_crypto for ecdsa. now builds wit h--no-deafault-features --features with_crypto
      
      * remove --release from CI test
      
      * @bkchr
      
       requested changes. moved full_crypto CI test to build stage
      
      * fixing no_std issue
      
      * CI fresh copy from srml-staking
      
      * gitlab CI with +nightly
      
      * solved no-feature-in-macro dilemma
      
      * cosmetics
      
      * Update core/application-crypto/src/sr25519.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update core/application-crypto/src/ed25519.rs
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * even more simple
      
      * undo line delete
      
      * refactoring app_crypto macro. splitting functionalities based on full_crypto feature
      
      * whitespace cosmetics
      cefe4dc2
  29. Oct 29, 2019
  30. Oct 25, 2019
  31. Oct 24, 2019
    • Gavin Wood's avatar
      Add SECP256k1/ECDSA support for transaction signing (#3861) · cc0b1d08
      Gavin Wood authored
      
      
      * Add SECP256k1/ECDSA support for transaction signing.
      
      * Refactoring and fixes
      
      * Fix for contracts
      
      * Avoid breaking runtime host function
      
      * Build fixes, make subkey work more generaically.
      
      * Fix tests
      
      * Dedpulicate a bit of code, remove unneeded code, docs
      
      * Bump runtime version
      
      * Fix a test and clean up some code.
      
      * Derivation can derive seed.
      
      * Whitespace
      
      * Bump runtime again.
      
      * Update core/primitives/src/crypto.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Update core/primitives/src/ecdsa.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Fix AppVerify
      cc0b1d08
  32. Oct 22, 2019
    • Tomasz Drwięga's avatar
      Runtime logging. (#3821) · a31c01b3
      Tomasz Drwięga authored
      * Implement Printable for tuples.
      
      * Add debugging function.
      
      * Add debug 1.
      
      * Implement  for everything.
      
      * RuntimeDebug derive.
      
      * Introduce RuntimeDebug.
      
      * Add some dummy logging.
      
      * Replace RuntimeDebug with Debug.
      
      * Revert "Replace RuntimeDebug with Debug."
      
      This reverts commit bc47070a.
      
      * Working on Debug for all.
      
      * Fix bounds.
      
      * Add debug utils.
      
      * Implement runtime logging.
      
      * Add some docs and clean up.
      
      * Clean up derives.
      
      * Fix custom derive impl.
      
      * Bump runtime.
      
      * Fix long lines.
      
      * Fix doc test.
      
      * Use CARGO_CFG_STD.
      
      * Revert "Use CARGO_CFG_STD."
      
      This reverts commit ea429566.
      
      * Use parse_macro_input
      
      * Update lockfile.
      
      * Apply review suggestions.
      
      * Remove stray re-export.
      
      * Add no-std impl.
      
      * Update lockfile.
      a31c01b3
  33. Oct 02, 2019
    • DemiMarie-parity's avatar
      Upgrade dependencies whenever “easy” (#3556) · 0cfe7438
      DemiMarie-parity authored
      * Update all dependencies
      
      * Upgrade dependencies whenever “easy”
      
      “easy” means that there are no major changes required.
      
      * Fix build and bump paste dependency to 0.1.6
      
      * Remove dead code
      
      * Re-add = dependency for futures-preview
      
      * Add missing std features for runtime-io
      
      * Remove git dependencies
      
      as updated versions have been published to crates.io
      
      * try to debug bug
      
      * For sr-io, "std" should imply "no_oom" and "no_panic_handler".
      
      Otherwise, rustc complains (correctly) about duplicate lang items.
      
      * Add missing "runtime-io/std" features
      
      * Fix compilation errors
      
      * Prevent duplicate lang items
      
      Rust does not allow duplicate lang items.  When compiled without the
      `std` feature, `sr-io` defines two lang items.  Therefore, `sr-io`
      compiled without `feature = "std"` must not be linked with `std`.
      
      However, `pwasm-utils` and `wasmi-validation` both bring in `std` unless
      compiled with `default-features = "false"`.  This caused a duplicate
      lang item error.  Building both with `default-features = "false"`
      prevents this error.  When building with `feature = "std"`, they should
      both be built with the `std` feature, so this feature needs to be
      explicitly depended on.
      
      * Bump `impl_version`
      
      * Make tests pass
      
      Three tests used 1 less gas than they had previously.
      
      * Try to un-break build
      
      * Add a Cargo.lock file
      
      * Revert offchain code
      
      * Revert "Revert offchain code"
      
      This reverts commit d216d08c
      
      .
      
      * Don’t try to send a body with a GET request
      
      without adding a Transfer-Encoding or Content-Length header.
      
      This has always been wrong, but hyperium/hyper#1925 hid the bug until
      hyper was upgraded to 0.12.35.
      
      * Change some more GET requests to POST requests
      
      * Fix excess line width and remove an `extern crate`
      
      * Delete commented-out extern crate
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      
      * Fix regression in Cargo.toml files
      
      dev-dependencies need `default-features = false`, too.
      
      * Bump parity-wasm dependency
      
      * Bump `futures-preview`
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update Cargo.lock files
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBastian Köcher <[email protected]>
      
      * Update core/service/src/chain_ops.rs
      
      Co-Authored-By: default avatarSergei Pepyakin <[email protected]>
      0cfe7438
  34. Sep 21, 2019
    • Joshy Orndorff's avatar
      Remove unused key types sr25 and ed25 (#3659) · a2df8002
      Joshy Orndorff authored
      * Remove unused key types sr25 and ed25.
      
      * Restore in specific files to fix build.
      
      * Fix runtime tests
      
      * Fix keystore test
      
      * Revert typo
      
      * Move keytypes to primitives/src/testing.rs
      
      * More missed items.
      
      * Getting close now.
      
      * Fix example in documentation.
      
      * Update core/application-crypto/src/ed25519.rs
      
      * Update core/application-crypto/src/sr25519.rs
      
      * Bump impl version.
      a2df8002
  35. Sep 19, 2019
    • Talha Cross's avatar
      core, subkey: allow to read Polkadot, Kusama, and Dothereum address types (#3643) · 5a2be8bd
      Talha Cross authored
      * core/primitives: set dothereum address type to 4
      
      * subkey: add dothereum to network prefix
      
      * core/primitives: set dothereum address type to 20
      
      * core/primitives: update comment
      
      * core/primitives: set default address to Dothereum
      
      * Revert "core/primitives: set default address to Dothereum"
      
      This reverts commit 2fc95490.
      
      * core/primitives: allow to parse different default address types
      5a2be8bd
  36. Aug 08, 2019
    • Bastian Köcher's avatar
      Adds `author_rotateKeys` RPC (#3337) · 8155ea35
      Bastian Köcher authored
      * Adds `author_rotateKeys` RPC
      
      `author_rotateKeys` will rotate all session keys, store them into the
      keystore and returns their encoded public keys as result. These encoded
      public keys can be used directly to send the transaction to the chain.
      
      * Review comments
      8155ea35
  37. Aug 07, 2019
    • Gavin Wood's avatar
      Refactor key management (#3296) · ed61b1fd
      Gavin Wood authored
      
      
      * Add Call type to extensible transactions.
      
      Cleanup some naming
      
      * Merge Resource and BlockExhausted into just Exhausted
      
      * Fix
      
      * Another fix
      
      * Call
      
      * Some fixes
      
      * Fix srml tests.
      
      * Fix all tests.
      
      * Refactor crypto so each application of it has its own type.
      
      * Introduce new AuthorityProvider API into Aura
      
      This will eventually allow for dynamic determination of authority
      keys and avoid having to set them directly on CLI.
      
      * Introduce authority determinator for Babe.
      
      Experiment with modular consensus API.
      
      * Work in progress to introduce KeyTypeId and avoid polluting API
      with validator IDs
      
      * Finish up drafting imonline
      
      * Rework offchain workers API.
      
      * Rework API implementation.
      
      * Make it compile for wasm, simplify app_crypto.
      
      * Fix compilation of im-online.
      
      * Fix compilation of im-online.
      
      * Fix more compilation errors.
      
      * Make it compile.
      
      * Fixing tests.
      
      * Rewrite `keystore`
      
      * Fix session tests
      
      * Bring back `TryFrom`'s'
      
      * Fix `srml-grandpa`
      
      * Fix `srml-aura`
      
      * Fix consensus babe
      
      * More fixes
      
      * Make service generate keys from dev_seed
      
      * Build fixes
      
      * Remove offchain tests
      
      * More fixes and cleanups
      
      * Fixes finality grandpa
      
      * Fix `consensus-aura`
      
      * Fix cli
      
      * Fix `node-cli`
      
      * Fix chain_spec builder
      
      * Fix doc tests
      
      * Add authority getter for grandpa.
      
      * Test fix
      
      * Fixes
      
      * Make keystore accessible from the runtime
      
      * Move app crypto to its own crate
      
      * Update `Cargo.lock`
      
      * Make the crypto stuff usable from the runtime
      
      * Adds some runtime crypto tests
      
      * Use last finalized block for grandpa authority
      
      * Fix warning
      
      * Adds `SessionKeys` runtime api
      
      * Remove `FinalityPair` and `ConsensusPair`
      
      * Minor governance tweaks to get it inline with docs.
      
      * Make the governance be up to date with the docs.
      
      * Build fixes.
      
      * Generate the inital session keys
      
      * Failing keystore is a hard error
      
      * Make babe work again
      
      * Fix grandpa
      
      * Fix tests
      
      * Disable `keystore` in consensus critical stuff
      
      * Build fix.
      
      * ImOnline supports multiple authorities at once.
      
      * Update core/application-crypto/src/ed25519.rs
      
      * Merge branch 'master' into gav-in-progress
      
      * Remove unneeded code for now.
      
      * Some `session` testing
      
      * Support querying the public keys
      
      * Cleanup offchain
      
      * Remove warnings
      
      * More cleanup
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * More cleanups
      
      * JSONRPC API for setting keys.
      
      Also, rename traits::KeyStore* -> traits::BareCryptoStore*
      
      * Bad merge
      
      * Fix integration tests
      
      * Fix test build
      
      * Test fix
      
      * Fixes
      
      * Warnings
      
      * Another warning
      
      * Bump version.
      ed61b1fd