thiolliere
bb9746c798
store contract keys with blake2_256 ( #2414 )
...
* store contract keys with blake2_256
* bump version
2019-04-29 16:13:45 +02:00
thiolliere
450c03d03e
Fix contract child usage ( #2299 )
...
* Fix contract child usage
* bump implementation version
2019-04-16 18:09:34 +02:00
Andrew Jones
4c115e3f2d
Replace Vec<u8> with [u8; 32] for contract storage key ( #2184 )
...
* Replace Vec<u8> with [u8; 32] for contract storage key
* Read storage keys from sandbox memory into fixed size buffer
* Increment `impl_version`
2019-04-03 10:12:54 +02:00
thiolliere
a0e6d96de0
keep track storage bytes ( #2154 )
...
* refactor
* fix accountinfo creation + impl mem_stored
* add comment
* improve syntax
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com >
* rename current_mem_stored -> storage_size
* more explaination + more readable code
* bump impl version of node + builds
* delete builds
2019-04-01 19:14:55 +02:00
thiolliere
29001cb469
Decouple contract from balances ( #2081 )
...
* decouple contract from balance
* update impls and builds
* set fees in contract module
* builds
2019-03-28 13:46:30 +01:00
Gav Wood
91c7c7188d
Rename ensure_free_balance_is to make_free_balance_be ( #2092 )
2019-03-23 11:18:14 +01:00
cheme
dd47be51c3
Switch contract storage to child trie ( #2002 )
2019-03-22 18:01:06 +01:00
Gav Wood
dcd77a147c
Introduce safe types for handling imbalances ( #2048 )
...
* Be a little safer with total issuance.
* PairT instead of _Pair
* Remove rev causing upset
* Remove fees stuff.
* Fix build (including tests)
* Update runtime, bump version
* Fix
* Handle gas refunds properly.
* Rename identifier
ala #2025
* Address grumbles
* New not-quite-linear-typing API
* Slimmer API
* More linear-type test fixes
* Fix tests
* Tidy
* Fix some grumbles
* Keep unchecked functions private
* Remove another less-than-safe currency function and ensure that
contracts module can never create cash.
* Address a few grumbles and fix tests
2019-03-20 14:07:28 +01:00
Bastian Köcher
7927054f86
Update copyrights to 2019 ( #1932 )
2019-03-06 15:04:28 +01:00
Jordan Beauchamp
f5ab24804f
Let StorageDoubleMap use borrowed key types ( #1804 )
...
* Let StorageDoubleMap use borrowed key types
* Bump impl version
2019-02-21 19:26:31 +01:00
Stanislav Tkach
ca69ad4c30
Migrate smrl-treasury and srml-upgrade-key to the 2018 edition ( #1725 )
2019-02-09 18:06:20 +01:00
thiolliere
e5dbcf6890
decouple balances from some modules ( #1641 )
...
* decouple balances from some module by creating a new traits in support/traits
* improve decl_event
2019-02-08 17:43:12 +01:00
Sergei Pepyakin
a5cafa68b1
Update srml-contract to Rust 2018. ( #1510 )
...
* Fix imports.
* Remove redundant binding
* Clean extern crates.
* Add comment
* Re-export macros from prelude
* Build fixes
* Update core/sr-std/src/lib.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
2019-01-24 16:26:53 +01:00
Sergei Pepyakin
c88b44f6db
Contracts module rejig ( #1358 )
...
* 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: pepyakin <s.pepyakin@gmail.com >
* Update srml/contract/src/lib.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
* Line wraps
* Wrapping macros
* Add _ prefix
* Grumbles
* Doc updates.
* Update srml/contract/src/wasm/mod.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
* Update srml/contract/src/lib.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
* 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: pepyakin <s.pepyakin@gmail.com >
* Update srml/contract/src/exec.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
* Update srml/contract/src/exec.rs
Co-Authored-By: pepyakin <s.pepyakin@gmail.com >
* Recompile node_runtime
2019-01-17 12:01:12 +01:00
Xiliang Chen
bf51b8a5ad
Move double map to support module and generalize it ( #1379 )
...
* Move double map to support and generalize it
* add docs back
* reduces the number of required allocations
2019-01-11 11:44:15 +01:00
Gav Wood
1e01162505
Phase 1 of repo reorg ( #719 )
...
* Remove unneeded script
* Rename Substrate Demo -> Substrate
* Rename demo -> node
* Build wasm from last rename.
* Merge ed25519 into substrate-primitives
* Minor tweak
* Rename substrate -> core
* Move substrate-runtime-support to core/runtime/support
* Rename/move substrate-runtime-version
* Move codec up a level
* Rename substrate-codec -> parity-codec
* Move environmental up a level
* Move pwasm-* up to top, ready for removal
* Remove requirement of s-r-support from s-r-primitives
* Move core/runtime/primitives into core/runtime-primitives
* Remove s-r-support dep from s-r-version
* Remove dep of s-r-support from bft
* Remove dep of s-r-support from node/consensus
* Sever all other core deps from s-r-support
* Forgot the no_std directive
* Rename non-SRML modules to sr-* to avoid match clashes
* Move runtime/* to srml/*
* Rename substrate-runtime-* -> srml-*
* Move srml to top-level
2018-09-12 11:13:31 +02:00