Commit Graph

813 Commits

Author SHA1 Message Date
Gav 74d5be0e80 use externalities for chain_id 2018-01-16 19:04:13 +01:00
Gav dc6ebf71cf Fix up wasm runtime. 2018-01-16 18:56:57 +01:00
Gav b62a8f9587 Hide away support modules. 2018-01-16 18:03:13 +01:00
Gav e410a3a665 Split out joiner. 2018-01-16 17:57:42 +01:00
Gav caff772b83 Big refactor. 2018-01-16 17:55:07 +01:00
Robert Habermeier 76fafcb39f initial test harness 2018-01-16 17:47:09 +01:00
Gav 571ad85cfe Introduce block decoding/execution framework (p2) 2018-01-16 16:33:05 +01:00
Gav c382125de5 Introduce basic block decoding/execution framework. 2018-01-16 16:32:22 +01:00
Gav 108b86a56d Add tests for header ser/de 2018-01-16 15:56:05 +01:00
Gav 88f867e053 Add ser/de for header. 2018-01-15 23:03:38 +01:00
Gav 6d3cb82820 Add test for ser/de transaction. 2018-01-15 18:30:04 +01:00
Gav 8869741166 Minor fix. 2018-01-15 12:01:05 +01:00
Gav 209542581a Transaction dispatch test. 2018-01-15 11:59:54 +01:00
Gav 2e6300cad7 Add marshaller for xfer function 2018-01-15 00:01:25 +01:00
Robert Habermeier f87893cd87 test context for full agreement protocol 2018-01-14 23:44:19 +01:00
Gav adbeecbdcf Rejig tests and ensure authorities are addressed consistently. 2018-01-14 23:41:32 +01:00
Gav bd8f67a20d Balance transfers + util methods. 2018-01-14 20:51:46 +01:00
Robert Habermeier 5a369064a4 import a local candidate when it is available 2018-01-13 19:19:41 +01:00
Robert Habermeier 379bcb46c0 add test for batch filling 2018-01-12 16:22:09 +01:00
Robert Habermeier 0e8458491f fill batch statements from table 2018-01-12 14:50:28 +01:00
Gav 6146779e6e Remove TODOs. 2018-01-11 18:29:08 +01:00
Gav 2b05b8ff5e Tweak docs 2018-01-11 18:28:29 +01:00
Gav e11f701c09 Documentation 2018-01-11 18:23:06 +01:00
Robert Habermeier 89d344fb3f update parking_lot 2018-01-10 22:03:34 +01:00
Robert Habermeier 649fbf2938 Merge branch 'master' into rh-candidate-agreement-glue 2018-01-10 22:02:57 +01:00
Robert Habermeier 00c4ee2d81 create the overarching agreement and IO futures 2018-01-10 21:58:56 +01:00
Robert Habermeier 3d9cc2697c incoming message handler 2018-01-10 21:20:53 +01:00
Gav 2d1f1a8933 Remove unneeded function. 2018-01-10 18:59:49 +01:00
Gav 8d1825fb0d Add some docs and a test. 2018-01-10 18:58:49 +01:00
Gav fd65f3380a Avoid using reentrancy issues. 2018-01-10 15:08:41 +01:00
Gav b48003b69a Finish up & polish environment stuff. 2018-01-10 14:53:03 +01:00
Gav ad9037df2d Add native environment to make native source-code compatible with wasm.
Also tests.
2018-01-10 14:39:56 +01:00
Gav 5f86160320 Add environmental module 2018-01-10 14:12:14 +01:00
Robert Habermeier 7b67bc63da round-robin message handler 2018-01-09 21:03:06 +01:00
Gav adc2e52aa3 Native storage support API. 2018-01-09 19:28:22 +01:00
Gav 391fb19143 Fix test. 2018-01-09 17:50:35 +01:00
Gav 6a69b71f46 Add wasm binaries. 2018-01-09 16:01:46 +01:00
Gav 5db5d2d98a Remove accidentally committed files. 2018-01-09 16:00:39 +01:00
Gav 55418c7ed8 Fix path. 2018-01-09 15:59:05 +01:00
Gav 06791fa07f Update path. 2018-01-09 15:58:45 +01:00
Gav 6e2fbb8e84 Update gitignore 2018-01-09 15:58:17 +01:00
Gav f3dd41efd6 Fix warning. 2018-01-09 15:50:48 +01:00
Gav 2489b3a9aa Update native support. 2018-01-09 15:07:55 +01:00
Gav 88d66681f6 More fleshing out on runtime. 2018-01-09 15:05:41 +01:00
Gav b104f5e6e4 Compile polkadot-runtime both for Wasm ad native, allowing for testing and direct usage. 2018-01-09 13:47:28 +01:00
Gav 5ab59bb171 Make initial runtime skeleton compile. 2018-01-08 19:32:46 +01:00
Gav a9fe12eb69 Clean up the runtime skeleton. 2018-01-08 17:56:16 +01:00
Gav 1f183d688a Introduce basic skeleton for Polkador runtime. 2018-01-08 17:13:44 +01:00
Gav Wood a670208a33 Introduce first groundwork for Wasm executor (#27)
* Introduce first groundwork for Wasm executor.

* Remove old Rust-runtime code.

* Avoid commiting compled files.

* Add runtime precompile.

* Rename so module makes more sense.

* Further renaming.

* Ensure tests work.

* Allow bringing in of externalities.

- Add util functions/macros.
- Add uncompacted runtime.
- Add some external crates from pwasm-std for managing allocs/memory
stuff.

* Nice macros for imports.

* Allow passing in of data through allocators.

Make memcpy and malloc work.
Basic allocator.

* Can now pass in bytes to WasmExecutor.

* Additional cleanup.

* Switch usages of `OutData` to `u64`

No need to be able to return bytes anymore.

* convert to safe but extremely verbose type conversion.

@rphmeier any more concise way of doing this?

* Remove StaticExternalities distinction.

* Remove another unused use.

* Refactor wasm utils out

* Remove extraneous copies that weren't really testing anything.

* Try to use wasm 0.15

* Make it work!

* Call-time externalities working.

* Add basic externalities.

* Fix grumbles and note unwraps to be sorted.

* Test storage externality.

Unforunately had to change signatures of externalities to avoid
immutable function returning a reference. Not sure what to do about
this...

* Fix nits.

* Compile collation logic.

* Move back to refs. Yey.

* Remove "object" id for storage access.

* Fix test.

* Fix up rest of tests.

* remove unwrap.

* Expose set/get code in externalities

Also improve tests and add nice wrappers in rust-wasm.

* Add validator set.

* Introduce validator set into externalities and test.

* Add another external function.

* Remove code and validators; use storage for everything.

* Introduce validators function.

* Tests (and a fix) for the validators getter.

* Allow calls into runtime to return data.

* Remove unneeded trace.

* Make runtime printing a bit nicer.

* Create separate runtimes for testing and polkadot.

* Remove commented code.

* Use new path.

* Refactor into shared support module.

* Fix warning.

* Remove unwraps.

* Make macro a little less unhygenic.

* Add wasm files.
2018-01-08 16:48:45 +01:00
Robert Habermeier 2fbc256b66 instantiate the agreement future 2018-01-08 16:36:35 +01:00