1. Jan 17, 2019
    • Sergei Pepyakin's avatar
      Contracts module rejig (#1358) · c88b44f6
      Sergei Pepyakin authored
      
      
      * Move prepare under code.
      
      * Schedule update
      
      * CodeHash
      
      * create takes code_hash
      
      * pass mem def and use code in vm::execute
      
      * Actually save and load code
      
      * Use T::Hash as CodeHash
      
      * Explicit entrypoint name
      
      * Return code_hash and deposit an Event
      
      * Charge for deployed code with gas.
      
      * ImportSatisfyCheck and FunctionImplProvider
      
      * Progress.
      
      * Use new infrastructure for checking imports
      
      * Rename entrypoint to entrypoint_name
      
      * Use strings instead of a Error enum
      
      * Clean
      
      * WIP
      
      * Fix macro_define_env test.
      
      * Fix vm code tests.
      
      * Remove tests for now.
      
      * Fix borked merge
      
      * Fix build for wasm
      
      * fmt
      
      * Scaffolding for abstracting vm.
      
      * Hook up execution to exec layer.
      
      * Fix vm tests.
      
      * Use schedule directly in WasmLoader
      
      * Implement test language.
      
      * Add input_data test.
      
      * Max depth test
      
      * ext_caller
      
      * Simplify test.
      
      * Add TODO
      
      * Some tests and todos.
      
      * top_level
      
      * Clean.
      
      * Restore a couple of integration tests.
      
      * Add a few comments.
      
      * Add ext_address runtime call.
      
      * Deduplicate caller/self_account
      
      * Add not_exists test.
      
      * Change bool to TransferCause.
      
      * Add address tests.
      
      * Remove output_buf from parameter.
      
      * return from start fn.
      
      * Smart gas meter
      
      * Tracing
      
      * Fix prepare tests.
      
      * Code moving
      
      * Add ExecFeeToken
      
      * Use tokens everywhere.
      
      * Make it compile in no_std.
      
      * Lift all test requirements to TestAuxiliaries
      
      * A minor clean
      
      * First create tests
      
      * Remove unneeded TODO
      
      * Docs.
      
      * Code shuffling
      
      * Rename create → instantiate
      
      * Add test address.
      
      * Code shuffling
      
      * Add base_fee tests.
      
      * rejig the code
      
      * Add some comments
      
      * on_finalise comment
      
      * Move event deposit further
      
      * Update Cargo.lock
      
      * Use crates.io version of pwasm-utils
      
      * Format todo comments
      
      * Fix formatting
      
      * Comments
      
      * EmptyOutputBuf and OutputBuf split.
      
      * Restore code_hash
      
      * Fix node-executor.
      
      * Fix typo
      
      * Fix fmt
      
      * Update srml/contract/src/account_db.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Update srml/contract/src/lib.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Line wraps
      
      * Wrapping macros
      
      * Add _ prefix
      
      * Grumbles
      
      * Doc updates.
      
      * Update srml/contract/src/wasm/mod.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Update srml/contract/src/lib.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Add comment
      
      * Use saturation to signal overflow
      
      * Add prepare_test! macro
      
      * Require deploy function.
      
      * Add entry point tests
      
      * Add comment.
      
      * Rename code → code_cache to better describe
      
      * Get rid of weird match!
      
      * Recompile binaries
      
      * Add comments
      
      * refuse_instantiate_with_value_below_existential_deposit
      
      * Little fix
      
      * Make test more complete
      
      * Clean
      
      * Add integration test for instantiation
      
      * Rebuild runtime.
      
      * Add some tests.
      
      * Attach an issue to a TODO
      
      * Attach another issue
      
      * Apply suggestions from code review
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Update srml/contract/src/exec.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Update srml/contract/src/exec.rs
      
      Co-Authored-By: default avatarpepyakin <[email protected]>
      
      * Recompile node_runtime
      c88b44f6