1. May 23, 2018
  2. May 01, 2018
  3. Apr 05, 2018
    • Gav Wood's avatar
      Make Polkadot use the Substrate traity libraries (#105) · ef9a426a
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Initial stuff.
      
      * Various fixes.
      
      * Fix tests.
      
      * Fix another test
      
      * Fix another test.
      
      * Docs in polkadot runtime.
      
      * Fix up ser/de tests.
      
      * Update god keys
      
      * Syntax
      
      * Fix
      
      * Merge remote-tracking branch 'origin/master' into gav-merge-runtime
      
      * Permissions on init.sh
      
      * Port-over the whitespace from @rphmeier
      
      * Rename
      
      * Merge branch 'master' into gav-merge-runtime
      
      * Fix typo.
      
      * Fix grumbles.
      
      * Make more idiomatic.
      
      * Move `Ed25519Signature` out of traits.
      ef9a426a
  4. Apr 04, 2018
    • Gav Wood's avatar
      Traitify Runtime (#104) · 82eae59f
      Gav Wood authored
      * Factor out safe-mix and dispatch
      
      * Refactor dispatch into something more modular.
      
      * Fix wasm build.
      
      * Fix up timestamp
      
      * fix warnings.
      
      * Borked timestamp example
      
      * Fix build
      
      * Timestamp as skeleton for traity runtime.
      
      * New storage macro.
      
      * Dispatch module has traity API.
      
      * Move consensus module to new API
      
      * Refactoring and outer dispatch
      
      * Avoid unnecessary derives.
      
      * Abstract the low-level half of system.
      
      * nicer outer dispatch syntax.
      
      * Make runtime compile again (albeit in a heavily simplified state)
      
      * Reworking runtime and the upper levels of system.
      
      * Initial reworking of runtime:
      
      - Introduced executive module;
      - Introduced trait primitives module;
      - Provided an API endpoint.
      
      * Expose an additional function in system
      
      * Another couple of functions traitified in executive.
      
      * another function in executive traitified.
      
      * One more function traitified.
      
      * Finish traitifying executive!
      
      * Traitify session module.
      
      * Cleanups and ensure session gets run.
      
      * First part of traitification of staking module.
      
      * Bit more of staking traitified.
      
      * Additional stuff in staking. Fix up session.
      
      * Penultimate part of staking module.
      
      * Final part of staking (code)
      
      * Update demo runtime to include staking.
      
      * Final tweaks for staking integration.
      
      * Remove old runtime files.
      
      * Schedule staking.
      
      * Minor fixes
      
      * First bits of democracy.
      
      * Democracy module integrated.
      
      * Fix warning.
      
      * Traitify and integrate council module
      
      * Council voting.
      
      * Runtime binary and tweaks.
      
      * Binary update.
      
      * Fix `*Type` grumble.
      
      * Fix up genesis_map
      
      * Remove NonTrivialSlicable
      
      * Staking "test externalities" stuff along with refactor.
      
      * Add session test externalities constructor
      
      * Fixed executor tests.
      
      * Make one test in executive module work.
      
      * Remove test framework stuff into common module.
      
      * Enable other tests in executive
      
      * Session tests reinstated, minor refactoring of keyring.
      
      * Fix staking tests.
      
      * Fix up democracy tests.
      
      * First few tests in council.
      
      * Council tests reinstated :)
      
      * Avoid hardcoding blake2 into Header.
      
      * Fix last few tests.
      
      * Make all primitives generic.
      
      * Fix tests.
      
      * Refactor runtime to remove genesismap.
      
      * Streamline runtime more with macrofied config.
      
      * Clean paths
      
      * Fix warning.
      
      * Consolidate demo runtime crate.
      
      * Remove stale code.
      
      * Refactor away dodgy trait.
      
      * Add corresponding Aux type.
      
      * Fixes
      
      * Rename Digesty -> Digest
      
      * Rename Headery -> Header
      
      * Blocky -> Block
      
      * Fix wasm build.
      
      * kill warnings
      
      * more docs
      
      * minor cleanups
      82eae59f
  5. Mar 13, 2018
    • asynchronous rob's avatar
      Slash Authorities for irrefutable misbehavior (#84) · ec7a4402
      asynchronous rob authored
      * double-commit and prepare misbehavior
      
      * get misbehavior on completion
      
      * collect misbehavior on drop, not only on success
      
      * kill unused transaction_index field
      
      * add primitive misbehavior report type
      
      * add misbehavior report transaction
      
      * store prior session
      
      * fix set_items
      
      * basic checks for misbehavior reports
      
      * crate for substrate bft misbehavior checking
      
      * integrate misbehavior check crate
      
      * fix comment
      
      * new wasm binaries
      
      * fix hash in test
      
      * import misbehavior transactions into queue
      
      * fix test build
      
      * sign on digest and full proposal when proposing
      
      * detect proposal misbehavior
      
      * fix fallout
      
      * restore balance/bondage types
      ec7a4402
  6. Feb 12, 2018
    • Gav Wood's avatar
      Additional runtime tests for the test-runtime (#69) · 8629e4a1
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * Remove rustc dependency from ed25519 and refactor a little.
      
      * Runtime support provides more extensive test-key functionality.
      
      * Additional APIs for ed25519 stuff.
      
      * Extensive test for test-runtime.
      
      * Fixes for the new test key API.
      
      * Additional convenience for tests
      
      * Take advantage of more convenient API.
      
      * Redo formating.
      
      * Remove old test identities.
      
      * Remove boilerplate, add test.
      
      * Refactor out unneeded code.
      
      * Clean up algo for determining authorities.
      
      * Remove unneeded API.
      
      * Make `to_*` consume
      
      * Only export keyring when testing
      
      * Fix build & warning
      
      * Extract Keyring into separate library.
      
      * Add tests for Keyring and a trait-based API.
      
      * Address grumbles.
      8629e4a1
  7. Feb 09, 2018
    • Gav's avatar
      Update builds and fix up test-runtime. · 0e5b1f2c
      Gav authored
      0e5b1f2c
    • Gav Wood's avatar
      Introduce toy runtime for testing inside substrate. (#66) · 74a897df
      Gav Wood authored
      * Introduce simple blockchain runtime for substrate tests.
      
      * Remove bad files.
      
      * Add needed wasm binaries.
      
      * Refactoring.
      
      - Repot files in test-runtime.
      - Rename troublesome `Joiner::join` to `Joiner::and`.
      - Rework `Slicable` to dedup code.
      
      * More fixes and refactoring
      
      * Rebuild substrate test wasm.
      
      * Fix merge errors.
      
      * Rename the disasterously named `to_vec` to `encode`.
      
      Also rename `as_slice_then` to `with_encoded`.
      
      * Tests for toy runtime.
      
      * Fix doc nit
      74a897df
  8. Feb 08, 2018
  9. Feb 07, 2018
  10. Feb 06, 2018
  11. Jan 30, 2018
  12. Jan 28, 2018
  13. Jan 23, 2018
    • Gav Wood's avatar
      Introduce basic skeleton for Polkadot runtime. (#32) · 0039a32e
      Gav Wood authored and Arkadiy Paronyan's avatar Arkadiy Paronyan committed
      * Introduce basic skeleton for Polkador runtime.
      
      * Clean up the runtime skeleton.
      
      * Make initial runtime skeleton compile.
      
      * Compile polkadot-runtime both for Wasm ad native, allowing for testing and direct usage.
      
      * More fleshing out on runtime.
      
      * Update native support.
      
      * Fix warning.
      
      * Update gitignore
      
      * Update path.
      
      * Fix path.
      
      * Remove accidentally committed files.
      
      * Add wasm binaries.
      
      * Fix test.
      
      * Native storage support API.
      
      * Add environmental module
      
      * Add native environment to make native source-code compatible with wasm.
      
      Also tests.
      
      * Finish up & polish environment stuff.
      
      * Avoid using reentrancy issues.
      
      * Add some docs and a test.
      
      * Remove unneeded function.
      
      * Documentation
      
      * Tweak docs
      
      * Remove TODOs.
      
      * Balance transfers + util methods.
      
      * Rejig tests and ensure authorities are addressed consistently.
      
      * Add marshaller for xfer function
      
      * Transaction dispatch test.
      
      * Minor fix.
      
      * Add test for ser/de transaction.
      
      * Add ser/de for header.
      
      * Add tests for header ser/de
      
      * Introduce basic block decoding/execution framework.
      
      * Introduce block decoding/execution framework (p2)
      
      * Big refactor.
      
      * Split out joiner.
      
      * Hide away support modules.
      
      * Fix up wasm runtime.
      
      * use externalities for chain_id
      
      * Clean up (Test)Externalities.
      
      * Repot and introduce keccak-256 external.
      
      * Signing with crypto.
      
      * fix unsafety hole in environmental using function
      
      * Introduce Ed25519 crypto.
      
      * Repotting.
      
      * Add ed25519_verify external.
      
      * Introduce Ed25519 verify as an external.
      
      * fix unsafety hole around unwinding
      
      * Compile fixes.
      
      * use new environmental API
      
      * Tests for ed25519 verify.
      
      * Polish
      
      * Introduce UncheckedTransaction & test.
      
      * Implement basic block and tx processing
      
      * Introduce static hex and valid signature for block test.
      
      * Repot session.
      
      * comments.
      
      * Refactor and timestamp test
      
      * Remove fluff
      
      * Remove fluff.
      
      * Staking eras and tests.
      
      * Implement sessions.
      
      * Polish
      
      * Test sessions.
      
      * Introduce better hashing.
      
      - Blake2 for secure hashing
      - XX for fast hashing
      
      * Fix tests.
      
      * Introduce staking.
      
      * Tests for simple staking system.
      
      * Build fix for wasm.
      
      * Fix tests.
      
      * Repotting and docs.
      
      * Docs and licence.
      
      * Documentation.
      
      * Remove superfluous code.
      
      * Remove dummy key.
      
      * Remove other superfluous file.
      
      * Optimise with swap_remove
      0039a32e
  14. Jan 09, 2018
  15. Jan 08, 2018
    • Gav Wood's avatar
      Introduce first groundwork for Wasm executor (#27) · b38b6336
      Gav Wood authored and asynchronous rob's avatar asynchronous rob committed
      * 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.
      b38b6336