• Sergey Pepyakin's avatar
    pallet-contracts: migrate to nested storage transaction mechanism (#6382) · f36b7857
    Sergey Pepyakin authored
    
    
    * Add a simple direct storage access module
    
    * WIP
    
    * Completely migrate to the transactional system.
    
    * Format
    
    * Fix wasm compilation
    
    * Get rid of account_db module
    
    * Make deposit event eager
    
    * Make restore_to eager
    
    * It almost compiles.
    
    * Make it compile.
    
    * Make the tests compile
    
    * Get rid of account_db
    
    * Drop the result.
    
    * Backport the book keeping.
    
    * Fix all remaining tests.
    
    * Make it compile for std
    
    * Remove a stale TODO marker
    
    * Remove another stale TODO
    
    * Add proof for `terminate`
    
    * Remove a stale comment.
    
    * Make restoration diverging.
    
    * Remove redudnant trait: `ComputeDispatchFee`
    
    * Update frame/contracts/src/exec.rs
    
    Co-authored-by: default avatarAlexander Theißen <[email protected]>
    
    * Introduce proper errors into the storage module.
    
    * Adds comments for contract storage module.
    
    * Inline `ExecutionContext::terminate`.
    
    * Restore_to should not let sacrifice itself if the contract present on the stack.
    
    * Inline `transfer` function
    
    * Update doc - add "if succeeded"
    
    * Adapt to TransactionOutcome changes
    
    * Updates the docs for `ext_restore_to`
    
    * Add a proper assert.
    
    * Update frame/contracts/src/wasm/runtime.rs
    
    Co-authored-by: default avatarAlexander Theißen <[email protected]>
    
    Co-authored-by: default avatarAlexander Theißen <[email protected]>
    Co-authored-by: default avatarAlexander Theißen <[email protected]>
    f36b7857