Skip to content
  1. Feb 19, 2020
    • Max Inden's avatar
      Introduce Prometheus metric endpoint replacing Grafana endpoint (#4981) · ebd42434
      Max Inden authored
      
      
      * Refactor rebase master prometheus_v0.3
      
      * Milestone1: Final Version of v0.3
      
      * no-std or warm compatibility issues, grapana-data -source code reference and correction,applicable
      
      * Cargo.lock paritytech/master rebase
      
      * prometheus networking.rs del, grafana-data-source networking.rs pub edit and note
      
      * chore: reflect various feedback
      
      * Spaces to tabs.
      
      * Replace grafana and tidy
      
      * Add generics
      
      * Add photo back
      
      * Re-fix spaces in primitives/consensus/babe/src/inherents.rs
      
      * Refactor rebase master prometheus_v0.3
      
      * Milestone1: Final Version of v0.3
      
      * no-std or warm compatibility issues, grapana-data -source code reference and correction,applicable
      
      * prometheus networking.rs del, grafana-data-source networking.rs pub edit and note
      
      * chore: reflect various feedback
      
      * Replace grafana and tidy
      
      * Add generics
      
      * Add photo back
      
      * Re-fix spaces in primitives/consensus/babe/src/inherents.rs
      
      * chore: revert this file back to paritytech/master inherents.rs.
      
      * Add newline at EOF
      
      * Tidy
      
      * Use local registry
      
      * fix typo
      
      Co-Authored-By: default avatarMax Inden <[email protected]>
      
      * chore:  Apply review feedback
      
      * endpoint -> exporter
      
      * fix readme
      
      * Remove lazy_static, use ServiceMetrics struct instead
      
      * Switch to using GaugeVecs
      
      * chore: without nightly , edit README
      
      * block_height -> block_height_number
      
      * Switch to a ready_transactions_number gauge
      
      * Update utils/prometheus/src/lib.rs
      
      Co-Authored-By: default avatarMax Inden <[email protected]>
      
      * no-prometheus flag add
      
      * /metrics url Input check
      
      * remove prometheus in Tracing
      
      * remove prometheus in Tracing
      
      * chore: master code rebase edit
      
      * gitlab-check-web-wasm edit code
      
      * From:from and cargo.lock update
      
      * with_prometheus_registry add background_tasks
      
      * utils/prometheus/src/lib.rs: Restructure #[cfg] for wasm without hyper
      
      Given that Hyper is not compatible with WASM targets it needs to be
      excluded from WASM builds. Instead of introducing #[cfg] lines
      throughout the crate, this patch splits the crate into two: known_os and
      unknown_os (WASM).
      
      * utils/prometheus/src/lib.rs: Feature gate known_os module
      
      * client/cli/src/lib.rs: Re-add newline at end of file
      
      Co-authored-by: default avatarJeseonLEE <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      Co-authored-by: default avatarAshley <[email protected]>
      Co-authored-by: default avatarHyungsuk Kang <[email protected]>
      ebd42434
    • Bastian Köcher's avatar
      Consolidate frame benchmarking into a frame crate (#4977) · c077a2b5
      Bastian Köcher authored
      This prs cleans up some of the frame benchmarking stuff:
      - Move CLI into `frame-benchmarking-cli`. No frame related CLI should
      exists in the default Substrate CLI.
      - Move all traits and types related to frame benchmarking into the
      `frame-benchmarking` trait. Frame types should be isolated in Frame.
      c077a2b5
  2. Feb 17, 2020
  3. Feb 10, 2020
    • Ashley's avatar
      Fix timer panics in the wasm light client (#4561) · ae03ee91
      Ashley authored
      * Make WASM browser thing compile
      
      * Fix
      
      * updated exit-future (github repo)
      
      * Switch to broadcast crate
      
      * Migrate client/cli
      
      * Switch exit-future to modernize branch
      
      * Small changes
      
      * Switch to cargo version and fix fg tests
      
      * fix basic-authorship
      
      * Fix crash on grafana macro
      
      * Fix grafana macro
      
      * Switch node python version
      
      * Disable record_metrics_slice in grafana macro on wasm
      
      * Update client/grafana-data-source/src/lib.rs
      
      * Revert "Update client/grafana-data-source/src/lib.rs"
      
      This reverts commit 888009a8.
      
      * Add wasm support for state machine
      
      * Switch to my own libp2p version
      
      * Revert "Switch to my own libp2p version"
      
      This reverts commit ce613871.
      
      * Revert "Add wasm support for state machine"
      
      This reverts commit de7eaa06
      
      .
      
      * Add sc-browser
      
      * Squash
      
      * remove sc-browser
      
      * Fix keystore on wasm
      
      * stubs for removed functions to make env compatible with old runtimes
      
      * Add test (that doesn't work)
      
      * Fix build scripts
      
      * Revert basic-authorship due to no panics
      
      * Revert cli/informant
      
      * Revert consensus
      
      * revert offchain
      
      * Update utils/browser/Cargo.toml
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * export console functions
      
      * Add new chainspec
      
      * Fix ws in chain spec
      
      * revert chainspec
      
      * Fix chainspec
      
      * Use an Option<PathBuf> in keystore instead of cfg flags
      
      * Remove crud
      
      * Only use wasm-timer for instant and systemtime
      
      * Remove telemetry changes
      
      * Assuming this is ok
      
      * Add a KeystoreConfig
      
      * Add stubs back in
      
      * Update libp2p
      
      * Revert "Add stubs back in"
      
      This reverts commit 4690cf18.
      
      * Remove commented js again
      
      * Bump kvdb-web version
      
      * Fix cli
      
      * Switch branch on futures-timer
      
      * Fix tests
      
      * Remove sc-client test build in check-web-wasm because there isn't a good way to build futures-timer with wasm-bindgen support in the build
      
      * Remove more things ^^
      
      * Switch branch on futures-timer back
      
      * Put DB io stats behind a cfg flag
      
      * Fix things
      
      * Don't timeout transports on wasm
      
      * Update branch of futures-timer and fix bad merge
      
      * Spawn informant
      
      * Fix network test
      
      * Fix delay resets
      
      * Changes
      
      * Fix tests
      
      * use wasm_timer for transaction pool
      
      * Fixes
      
      * Switch futures-timer to crates
      
      * Only diagnose futures on native
      
      * Fix sc-network-test tests
      
      * Select log level in js
      
      * Fix syncing ;^)
      
      * Allow disabling colours in the informant
      
      * Use OutputFormat enum for informant
      
      * MallocSizeOf impl on transaction pool broke stuff because wasm_timer::Instant doesnt impl it so just revert the transaction pool to master
      
      * Update futures-diagnose
      
      * Revert "MallocSizeOf impl on transaction pool broke stuff because wasm_timer::Instant doesnt impl it so just revert the transaction pool to master"
      
      This reverts commit baa4ffc9
      
      .
      
      * Pass whole chain spec in start_client
      
      * Get Instant::now to work in transaction pool again
      
      * Informant dep reordering
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      Co-authored-by: default avatarBenjamin Kampmann <[email protected]>
      Co-authored-by: default avatarDemi Obenour <[email protected]>
      ae03ee91
  4. Feb 06, 2020
    • Wei Tang's avatar
      Refactor epoch changes to a separate crate (#4785) · 8d7bf667
      Wei Tang authored
      * Init epoch changes module
      
      * Initial integration of new epoch changes module for BABE
      
      * Fix all initial compile errors
      
      * rename: digest -> digests
      
      * Fix babe tests
      
      * Bump impl_version
      
      * Fix more test issues
      
      * Remove test flag for tree
      
      It unfortunately won't work for multiple crates.
      
      * Update cargo lock
      
      * Fix duplicate parking_lot version
      
      * Add missing license header
      8d7bf667
    • Jimmy Chu's avatar
      Node template folders restructuring (#4811) · 3fc91c76
      Jimmy Chu authored
      * Restructure node-template so it is clear that node, runtime, and pallets are separated
      * Separating to mock and tests
      * restructuring runtime to top-level
      * updated release script
      * updated Cargo.lock
      3fc91c76
  5. Feb 01, 2020
    • Gavin Wood's avatar
      Refactor the balances module (#4649) · 3c80891f
      Gavin Wood authored
      
      
      * Initially scoping out of the problem
      
      * Remove need for exiry in balance locks.
      
      * Remove expiry from locks.
      
      * Remove supefluous balance test
      
      * Amalgamate pieces of balance module
      
      * Split out vesting
      
      * Fix tests
      
      * Fixes for vesting.
      
      * Docs.
      
      * Weight docs.
      
      * Refactor things in terms of set_balances.
      
      * Switch out ED to be free + reserved.
      
      * Remove on_free_balance_zero and some docs.
      
      * Build fixes
      
      * Update frame/vesting/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <[email protected]>
      
      * Update frame/vesting/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <[email protected]>
      
      * Migration
      
      * Remove superfluous code.
      
      * Test fixes
      
      * Fix some tests
      
      * Fix repatriate reserve
      
      * Fixes
      
      * Add test for migration
      
      * Final cleanups
      
      * Fix
      
      * Indentation.
      
      * Undo unneeded referencing
      
      * Bump runtime version
      
      * Fixes
      
      Co-authored-by: default avatarXiliang Chen <[email protected]>
      3c80891f
  6. Jan 31, 2020
  7. Jan 27, 2020
    • Web3 Philosopher's avatar
      Manual Seal (#4143) · 03ffa5a5
      Web3 Philosopher authored
      
      
      * instant/manual seal
      
      unbounded queues are evil
      
      Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      add fork tests, docs, remove todos
      
      moar docs
      
      Update client/consensus/manual-seal/src/rpc.rs
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      remove unbound generic, parameter, docs, deps, code style changes
      
      Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      code style chnges
      
      remove unused deps, remove dep renames, check if block is empty before importing, use ? for error propagation
      
      fix tests
      
      log errors for instant seal
      
      use debug
      
      code style changes, updated copyright dates
      
      use txpool::Pool instead of BasicPool, code style changes
      
      fixed tests
      
      * fix tests
      
      * requested changes from review
      
      * check inherents len
      
      * rebase
      03ffa5a5
  8. Jan 22, 2020
    • Bastian Köcher's avatar
      Move "wasm" allocator into its own crate (#4716) · 22887d5e
      Bastian Köcher authored and Sergey Pepyakin's avatar Sergey Pepyakin committed
      This moves the wasm-allocator (`FreeingBumpHeapAllocator`) into its own
      crate `sp-allocator`. This new crate can theoretically provide multiple
      different allocators. Besides moving the allocator, this pr also makes
      `FreeingBumpHeapAllocator` compile on `no_std`.
      22887d5e
  9. Jan 13, 2020
    • Shawn Tabrizi's avatar
      A Social Account Recovery Pallet (#4531) · 3ed7c8b3
      Shawn Tabrizi authored
      * Initial sketch of social recovery pallet
      
      * Fix compilation issues
      
      * Use a single total delay, rename stuff
      
      * Check possible overflow
      
      * Copyright bump
      
      * Add mock for tests
      
      * Add basic end to end test
      
      * Add `create_recovery` tests
      
      * Add malicious recovery lifecycle test
      
      * Make clear we check for sorted and unique friends
      
      * Work on some tests, clean up imports
      
      * Change `if let Some(_)` to `ok_or()`
      
      * More tests
      
      * Finish tests, except issue with `on_free_balance_zero`
      
      * Fix `on_free_balance_zero`
      
      * Pallet docs
      
      * Add function/weight docs
      
      * Fix merge master
      
      * OnReapAccount for System too
      
      * Update weight docs
      
      * Allow passthrough to support fee-less extrinsics
      3ed7c8b3
  10. Jan 10, 2020
    • Gavin Wood's avatar
      Society pallet (#4170) · cdceee24
      Gavin Wood authored
      
      
      * Introduce efficient Hash-based RNG streamer
      
      * Initial draft of the society module
      
      * Introduce a test
      
      * Dual-pot logic
      
      * Vouching
      
      * Use chacha
      
      * Half way through moving to cliff payout.
      
      * Fixes
      
      * Add some tests
      
      * Remove printlns
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Merge remote-tracking branch 'origin/gav-verified-id' into gav-verified-id
      
      # Conflicts:
      #	frame/identity/src/lib.rs
      
      * Fix `slash_payout`, add test
      
      * Test for multi-slash_payout
      
      * Add docs to `put_bid` function and `bidding_works` test
      
      * Add strikes to test
      
      * Add comments to `rotate_period`
      
      * Implement `suspend_member`
      
      * Off chain iteration of suspended members using linked_map
      
      * Half of suspended candidate
      
      * Finish suspend_candidate, need tests
      
      * Resolve mistakes and feedback, add `suspended_candidate_rejected` test
      
      * Remove logic which increases payout time after un-suspension
      
      * Fix error in `slash_suspended_candidates`, add member check to `vote`
      
      * Fix vouch rewards, dont create zero payouts, add tests for vouch
      
      * Test unvouch
      
      * Unbid tests
      
      * Add lifecycle events, fix `add_member` to update `MembershipChanged`
      
      * Head cannot be removed from society
      
      * Use `add_member` in `found` to ensure `MembershipChanged` is triggered
      
      * Use `Judgement` enum for suspended candidate judgement
      
      * Make society instantiable
      
      * Implement challenges
      
      * Remove extra text in test
      
      * Remove `BlockNumber` return from `slash_payout`
      
      * Add bad vote causes slash test
      
      * Update frame/society/src/lib.rs
      
      Co-Authored-By: default avatarthiolliere <[email protected]>
      
      * Add consts to module metadata
      
      * Check `suspended_member` cant bid
      
      * Increase strength of payout check, **must** be a member.
      
      * Start pallet documentation
      
      * Finish docs
      
      * Update library names, use decl_error
      
      * Prevent double bids, add test
      
      * Use `map` for vouching member, and introduce banned vouchers
      
      * Remove leftover docs
      
      * Vouching handles removed member lifecycles w/ tests
      
      * `take` the votes when tallying, add comprehensive checks before vouch or bid
      
      * Check votes are cleaned up
      
      * Check vote is for a valid candidate, add vote event
      
      * Defender vote event
      
      * Fix `judge_suspended_candidate`, add weight docs
      
      * First pass fixes (blank lines, formatting, no operational)
      
      * Bump copyright year
      
      * Make `add_member` infallible
      
      * More feedback updates
      
      * Add storage access complexity
      
      * Fix logic for AutoUnbid
      
      * Complete weight documentation
      
      * Optimize logic which used to result in double storage read.
      
      * Use Bid struct rather than tuple
      
      * Introduce `MaxMembers` configuration constant
      
      * Add comment about fringe scenario where `MaxMembers` could go over, NBD
      
      * Change MaxMembership to configurable storage item with ability for root to update
      
      * Make membership challenges skew toward failure.
      
      If no one at all votes, or the vote is tied, the user will be suspended from society. This means, that the user simply needs to vote for themselves to stay in society assuming no one else participates.
      
      * Refactor `is_candidate`as to avoid possible double storage reads in the future.
      
      * Blank lines
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarthiolliere <[email protected]>
      cdceee24
  11. Jan 07, 2020
  12. Dec 24, 2019
    • Sergey Pepyakin's avatar
      Extract execution engines definitions into their own crates (#4489) · 963b7be0
      Sergey Pepyakin authored
      * Clean imports in wasmi_execution
      
      * Replace `interpret_runtime_api_result` with `pointer_and_len_from_u64`.
      
      * Extract sc-executor-common crate
      
      * Extract `sc-executor-wasmi` into its own crate
      
      * Extract `sc-executor-wasmtime` into its own crate.
      
      * Add missing headers.
      
      * Clean and docs
      
      * Docs for sc-executor-wasmi
      
      * Expand a comment about sandboxing
      
      * Fix assert_matches
      
      * Rename (un)pack_ptr_and_len and move them into util module
      
      * Remove wasmtime errors in sc-executor-common
      963b7be0
  13. Dec 13, 2019
    • Pierre Krieger's avatar
      Extract consensus_gossip.rs and put it in its own crate (#4284) · 723148f1
      Pierre Krieger authored
      
      
      * Extract gossiping system from network
      
      * Finish porting GRANDPA tests
      
      * Try put correct engine ID
      
      * Fix messages encoding
      
      * Fix communication tests
      
      * Use a threads pool to spawn stuff
      
      * Fix compilation everywhere
      
      * Fix bad merge conflict
      
      * Remove dependency on async-std
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarRobert Habermeier <[email protected]>
      
      * More suggestions
      
      * Remove network startup GP future
      
      * Update to futures_timer
      
      * adjust wait_when_behind test
      
      * Pass correct Roles after handshake
      
      * Revert "adjust wait_when_behind test"
      
      This reverts commit 9e310244.
      
      * Crate root documentation
      
      * Remove MessageRecipient
      
      * Address concerns
      
      * Fix more concerns
      
      * Forgot Cargo.lock
      723148f1
  14. Dec 11, 2019
    • Benjamin Kampmann's avatar
      Fix folder names in client and test (#4360) · b5414b65
      Benjamin Kampmann authored
      * client/rpc/api -> client/rpc-api
      
      * client/util/wasm-builder-runner -> utils/wasm-builder-runner
      
      * client/grafana-data-source -> utils/grafana-data-source
      
      * test/utils -> test-utils
      
      * fix moved path
      
      * Update Cargo.lock
      
      * Update Cargo.lock
      b5414b65
    • Benjamin Kampmann's avatar
      Clean up crate names and locations (#4361) · 9ce7e1f7
      Benjamin Kampmann authored
      * rename crate: sp-transaction-pool-api -> sp-transaction-pool
      
      * move primitives/core/derive-debug -> primitives/derive-debug; primitives/core/storage -> primitives/storage
      
      * rename crate sp-core-storage -> sp-storage
      
      * rename and move: test/utils/transaction-factory -> client/transaction-factory
      
      * move transaction-factory -> node/transaction-factory
      
      * fix missing rename
      
      * Move chain-spec-builder into bin/utils
      
      * move subkey into bin/utils
      
      * Update new subkey location
      
      * Update docs to reflect new location for utils
      
      * fixing import name
      9ce7e1f7
    • Benjamin Kampmann's avatar
      Fix folder names in primitives (#4358) · 824009b4
      Benjamin Kampmann authored
      * sr-arithmetic -> arithmetic
      
      * sr-sandbox -> sandbox
      
      * primitives/sr-staking-primitives -> primitives/staking
      
      * primitives/sr-version -> primitives/version
      
      * primitives/block-builder/runtime-api -> primitives/block-builder
      824009b4
    • Benjamin Kampmann's avatar
      Fix a bunch of low work dependency cycles (#4354) · 19835b41
      Benjamin Kampmann authored
      * take test-client off sp-consensus
      
      * use test primitives rather than test client in authority discovery tests
      
      * move runtime-interface tests
      
      * don't forget to remove the dev-dependency
      
      * remove more unneeded dev deps
      
      * add changes_trie_config to test prrimitives
      
      * Separate network crates from its integration tests
      
      * Fix up consensus crates for networking test changes
      
      * remove unnecessary dependencies
      
      * remove unused addition
      
      * remove unnecessary dev-dependencies
      
      * fixing finality grandpa tests
      
      * removing unnecessary executor dependencies
      19835b41
  15. Dec 10, 2019
  16. Dec 09, 2019
  17. Dec 06, 2019
  18. Nov 28, 2019
    • Svyatoslav Nikolsky's avatar
      Recover transaction pool on light client (#3833) · 2ffaf054
      Svyatoslav Nikolsky authored
      
      
      * recover tx pool on light client
      
      * revert local tests fix
      
      * removed import renamings
      
      * futures03::Future -> std::future::Future
      
      * Update core/transaction-pool/graph/src/error.rs
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * replace remove_from_ready with remove_invalid
      
      * avoid excess hashing
      
      * debug -> warn
      
      * TransactionPool + BasicTransactionPool
      
      * pause future tx reject when resubmitting
      
      * bump impl_version to make CI happy
      
      * and revert back local test fixes
      
      * alter doc to restart CI
      
      * Transaction::clone() -> Transaction::duplicate()
      
      * transactions -> updated_tranasctions
      
      * remove explicit consensus-common ref
      
      * ::std:: -> std::
      
      * manual set/unset flag -> calling clusore with given flag value
      
      * removed comments
      
      * removed force argument
      
      * BestIterator -> Box<Iterator>
      
      * separate crate for TxPool + Maintainer trait
      
      * long line fix
      
      * pos-merge fix
      
      * fix benches compilation
      
      * Rename txpoolapi to txpool_api
      
      * Clean up.
      
      * Finalize merge.
      
      * post-merge fix
      
      * Move transaction pool api to primitives directly.
      
      * Consistent naming for txpool-runtime-api
      
      * Warn about missing docs.
      
      * Move  abstraction for offchain calls to tx-pool-api.
      
      * Merge RPC instantiation.
      
      * Update cargo.lock
      
      * Post merge fixes.
      
      * Avoid depending on client.
      
      * Fix build
      2ffaf054
  19. Nov 26, 2019
    • Benjamin Kampmann's avatar
      Remove all (non-dev) `client` references from `frame`, activate dependency enforcer (#4184) · b3a7c8e4
      Benjamin Kampmann authored
      * Move transaction pool to primitives
      
      * move backend, errors into primitives
      
      * remove unused client depencies
      
      * Move rpc-api into primitives
      
      * Move peerset back to client
      
      * Move rpc/api back to client, move palette/support/rpc into utils
      
      * move support-rpc into subfolder
      
      * move system-rpc into utils
      
      * move transaction-pool  and -graph back into client
      
      * fix broken imports
      
      * Clean up test primitives
      
      * Make support test utils independent of frame
      
      * remove unnecessary node dependencies from service
      
      * Reactivate dependency script:
       - only enforce the now achieved status quo will remain
       - allow for primitives to depend on /client for now without failing
       - more discriptive error message so people understand, what it wants
       - minor fix to differentiative between ../client and /client (which may be a subfolder)
       - don't allow this to fail anylonger.
      
      * fix doc comment
      
      * 'Should not' rather than 'must not'.
      
      * Revert unwanted dependency changes
      
      * fix faulty import
      
      * fixup derive_more version
      
      * fix wrong import path
      b3a7c8e4
  20. Nov 22, 2019
    • Shawn Tabrizi's avatar
      Rename Palette to FRAME (#4182) · 1f26179a
      Shawn Tabrizi authored
      
      
      * palette -> frame
      
      * PALETTE, Palette -> FRAME
      
      * Move folder pallete -> frame
      
      * Update docs/Structure.adoc
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * Update docs/README.adoc
      
      Co-Authored-By: default avatarBenjamin Kampmann <[email protected]>
      
      * Update README.adoc
      1f26179a
    • Ashley's avatar
      Grafana integration (#3913) · d9ca9750
      Ashley authored
      
      
      * Very WIP
      
      * record_metrics macro works
      
      * Integrate into service
      
      * Licenses and documentation
      
      * Remove unused Debugs, make respond function clearer
      
      * Conform to line widths, fix service test
      
      * Switch to storing the timestamps as millis instead
      
      * Update core/grafana-data-source/src/lib.rs
      
      Co-Authored-By: default avatarKian Paimani <[email protected]>
      
      * Transform timestamps to i64 in serialization
      
      * Fix license date
      
      * Binary sort to find selection range for metrics
      
      * Obey maxDataPoints
      
      * Run a cleaning future
      
      * Newlines at EOF
      
      * Update core/service/Cargo.toml
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Update core/grafana-data-source/src/lib.rs
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Fix indentation
      
      * Improve select_points
      
      * Made test more accurate
      
      * Inprogress
      
      * Use the same futures version as hyper for now
      
      * Error handling
      
      * Remove dependence on hyper's tokio feature
      
      * Added target_os flag
      
      * Update Cargo.toml
      
      Co-Authored-By: default avatarPierre Krieger <[email protected]>
      
      * Simplify example
      
      * Remove compat wildcard
      
      * Updated lock file
      
      * Fix indentation 😉
      d9ca9750
    • mattrutherford's avatar
      Add instrumentation, with performance profiling capability (#4132) · 3402cc88
      mattrutherford authored
      * Implement instrumentation for performance profiling
      
      * Add profiling to runtime functions declared in `decl_module` inc.
      `on_initialize` and `on_finalize`
      
      * Remove changes
      
      * add docs, tidy up
      
      * fix versions
      
      * fix copyright date
      
      * switch to hashmap and instant
      
      * update example
      
      * update example
      
      * implement receiver for logger and make default
      
      * fix comment
      
      * use `if_std!` macro
      
      * remove whitespace
      
      * fix whitespace
      
      * fix nits
      3402cc88
  21. Nov 21, 2019
  22. Nov 20, 2019
    • Benjamin Kampmann's avatar
      Move inherents to primitives (#4126) · 904acd5a
      Benjamin Kampmann authored
      * Split Aura and Timestamp inherents out of paint
      
      * fixup node depedencies
      
      * move babe inherents to primitives
      
      * move authorship inherents into primitives
      
      * Move finalty tracker inherents into primitives
      
      * fix aura primitives import
      904acd5a
  23. 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
  24. Nov 11, 2019
    • Bastian Köcher's avatar
      Refactor sr-api to not depend on client anymore (#4086) · d2c4b0db
      Bastian Köcher authored
      
      
      * Refactor sr-api to not depend on client anymore
      
      * Fix benches
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarTomasz Drwięga <[email protected]>
      
      * Apply suggestions from code review
      d2c4b0db
    • Tomasz Drwięga's avatar
      Typed chain state queries over rpc. (#4079) · 50c1cf5e
      Tomasz Drwięga authored
      * Create typed client helpers for querying chain state storage items declared by
      'decl_storage!'.
      
      * Update substrate-rpc-custom functions to use async await syntax.
      
      * The implementation of substrate-rpc-custom was a bit verbose and repetitive.
      This commit makes the implementation simpler by intruducing a struct which
      represents query for a typed value in storage. The new struct is called
      StorageQuery. A StorageQuery wraps a raw StorageKey but is not directy
      constructable. To construct a StorageQuery, the user must supply an
      implementation of a srml_support::storage::generator trait such as
      StorageValue or StorageMap.
      
      A type implementing one of the generator traits can be aquired by:
      A) marking a storage item as pub within a call to decl_storage (recommended)
      or B) implementing one of the generator types manually.
      
      While option B may sometimes me necessary, it's not recommended because
      separate manual implementaions may lose sync with the original definition.
      
      * drop unused dependency
      
      * fmt
      
      * Remove unnecessary pub from Authorities field in test-runtime storage
      declaration.
      
      This field was added to support a test in an earlier commit. The
      test no longer relies on test-runtime so the change can be reverted.
      
      * Move it to srml as support extension.
      
      * Fix long lines.
      
      * Fix.
      50c1cf5e
  25. 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
  26. Nov 03, 2019
    • Wei Tang's avatar
      Substrate EVM (#3927) · 1d5cae9a
      Wei Tang authored
      
      
      * srml-evm: init the basic structures
      
      * srml-evm: finish executor implementation
      
      * srml-evm: implement balance deposit and withdraw
      
      * srml-evm: implement the actuall call/create
      
      * srml-evm: use crates.io version of evm
      
      * srml-evm: fix no-std compile
      
      * Remove dependency patch
      
      * Update to evm 0.14
      
      * Use double map for account storage
      
      * Add precompiles support
      
      * Add some basic docs
      
      * Use runtime_io::chain_id()
      
      * Update srml/evm/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <[email protected]>
      
      * Update srml/evm/src/lib.rs
      
      Co-Authored-By: default avatarXiliang Chen <[email protected]>
      
      * Fix WithdrawReason
      
      * Unique saturate balance to u128
      
      * Unique saturate withdraw to u128
      
      * Remove extern crate alloc
      
      * Move account code to a separate storage and use ref for convert_account_id
      
      * More match cause for error message
      
      * Fix potential interger overflow
      
      * Use decode_len for fetching code length
      1d5cae9a
  27. Nov 01, 2019
    • Jim Posen's avatar
      Integrate Wasmtime for runtime execution (#3869) · c2975363
      Jim Posen authored
      * executor: Use non wasmi-specific execution in tests.
      
      * executor: Move all runtime execution tests into tests file.
      
      * executor: Use test_case macro to easily execute tests with different
      Wasm execution methods.
      
      * executor: Convert errors to strings with Display, not Debug.
      
      * node-executor: Rewrite benchmarks with criterion.
      
      They were not passing compilation before and criterion seems to be more
      widely used in Substrate.
      
      * executor: Begin implementation of Wasm runtime.
      
      The implementation demonstrates the outline of the execution, but does
      not link against the external host functions.
      
      * executor: Define and implement basic FunctionExecutor.
      
      The SandboxCapabilities::invoke is still left unimplemented.
      
      * executor: Implement host function trampoline generation.
      
      * executor: Instantiate and link runtime module to env module.
      
      * executor: Provide input data during wasmtime execution.
      
      * executor: Implement SandboxCapabilites::invoke for wasmtime executor.
      
      * executor: Integrate and test wasmtime execution method.
      
      * executor: Improve FunctionExecution error messages.
      
      * Scope the unsafe blocks to be smaller.
      
      * Rename TrampolineState to EnvState.
      
      * Let EnvState own its own compiler instead of unsafe lifetime cast.
      
      * Refactor out some common wasmi/wasmtime logic.
      
      * Typos and cosmetic changes.
      
      * More trampoline comments.
      
      * Cargo.lock update.
      
      * cli: CLI option for running Substrate with compiled Wasm execution.
      
      * executor: Switch dependency from fork to official wasmtime repo.
      
      * Quiet down cranelift logs.
      
      * Explicitly catch panics during host calls.
      
      We do this to ensure that panics do not cross language boundaries.
      
      * Additional checks and clarifications in make_trampoline.
      
      * Fixes after merge from master and panic safety for wasmtime
      instantiation.
      c2975363
  28. Oct 30, 2019