Commit Graph

108 Commits

Author SHA1 Message Date
Dan Laine a0bd9cdcfb Merge branch 'master' into list-assets 2020-05-01 12:55:16 -04:00
Alex Willmer db56cccd4c
Merge branch 'master' into vms-avm-shutdown-locking 2020-04-28 22:16:25 +01:00
Anil Dasari 88228ac1d6 error check 2020-04-24 13:42:36 -07:00
Anil Dasari 737087f0ca error check and go fmt 2020-04-24 13:31:12 -07:00
Alex Willmer 826a1cc06d vms: Note potential FIXMEs in avm.VM tests 2020-04-19 14:40:30 +01:00
Alex Willmer 2eb8add469 vms: Ensure all avm.VM instances in tests get shutdown
I suspect these could be simplified/made more uniform, but I don't think
I fully understand the locking semantics.
2020-04-19 14:23:03 +01:00
Alex Willmer de3fd2915b vms: Fix deadlock when stopping timers during avm.VM.Shutdown()
refs #66
2020-04-19 13:54:56 +01:00
Alex Willmer f89bcdc40c vms: Use GenesisVM to initialise avm.Service tests 2020-04-19 13:49:53 +01:00
Alex Willmer 0f6cad33b1 vms: Add test for avm.VM.Format 2020-04-18 18:43:14 +01:00
Stephen Buttolph 5797347e6a
Merge branch 'master' into vms-avm-service-test 2020-04-16 20:35:21 -04:00
Alex Willmer cadbd234e6 Merge branch 'vms-avm-service-test' of github.com:moreati/gecko into vms-avm-service-test 2020-04-16 20:28:05 +01:00
Alex Willmer 91f4c85bb2 vms: Remove resolved locking TODO
The question was answered in
https://github.com/ava-labs/gecko/pull/59#discussion_r406597250

> In general, the lock needs to be held whenever a VM function is called
> by the consensus engine. Depending on the locking specified in
> CreateHandlers locks may be held when an RPC is called as well.

> For the AVM specifically, the lock is assumed to be held both when an
> RPC is called and when any function is called, except for the ws API.
2020-04-16 20:26:18 +01:00
Stephen Buttolph 42baab2881
Move Geth to a plugin connected at runtime
* removed coreth + geth dependency for the C-chain, still have nat + crypto dependencies

* Added first past of nat traversal

* Removed go-eth dependency for secp256k1

* renamed db files to not repeat the package title

* Added rpcdb, untested

* Added rpcdb tests

* removed defer from loop

* cleaned up tests

* Started working on the rpc chain VM

* First pass of vm plugin support

* Added http over grpc

* added beta support for http handlers

* updated vms for the rpcvms

* Added error returns for factories

* Added EVM back to the genesis

* Added the EVM factory

* Added EVM aliasing, fixed nil pointer bugs during shutdown

* Added plugin folder

* Removed plugins folder, add default params for the plugin dir

* Added http RPC test

* Added cascade evm genesis

* Removed debug line

* removed more debug lines

* Cleaned up import statement

* Changed default plugin dir to ./plugins

* build evm plugin auto in the build script
2020-04-16 11:39:20 -04:00
Stephen Buttolph 67c17835fb
Merge branch 'master' into vms-avm-service-test 2020-04-15 16:15:19 -04:00
Alex Willmer 689177e113 vms: Reword timeout warning, include a link to discussion 2020-04-15 20:27:12 +01:00
Stephen Buttolph 77f7dea6fb
Merge branch 'master' into vms-avm-codecSetup 2020-04-13 14:28:57 -04:00
Alex Willmer cd23540e4e vms: Add test of avm.Tx.SemanticVerify with nil transaction 2020-04-13 11:19:21 +01:00
Alex Willmer 163eec2dd3 vms: Standardize on setupCodec() in avm tests 2020-04-13 11:03:31 +01:00
Alex Willmer b8e1094309 vms: Add tests for avm.Service.GetUTXOs 2020-04-13 09:40:12 +01:00
Alex Willmer 795d3ffd3c vms: Standardise on GenesisVM() in test suite, where possible
Note that GenesisVM now leaves the Context locked. It is the
resposibility of the caller to unlock it.
2020-04-13 09:28:54 +01:00
Dan Laine 53b29745b6 rename method to GetAllBalances; change return type to map 2020-04-10 16:05:11 -04:00
Dan Laine bfe72ecf1c add ListAssets API method 2020-04-10 14:48:38 -04:00
Alex Willmer 208195bf34 vms: add test for Service.GetTxStatus() 2020-04-09 00:58:30 +01:00
Alex Willmer 70e571b77c vms: add test for Service.IssueTx() 2020-04-09 00:57:43 +01:00
Alex Willmer 1161455b37 vms: Factor NewTx() out of TestIssueTx() 2020-04-09 00:55:21 +01:00
Alex Willmer e71a91d3bd vms: Facter service setup out of AVM service tests 2020-04-09 00:44:00 +01:00
Stephen Buttolph 48caf79644
Merge pull request #49 from danlaine/update-swap-api
Update import/export API, properly weight bootstrapping validators by stake
2020-04-06 14:22:51 -04:00
StephenButtolph e69449e20b Fixed variable cap genesis creation 2020-04-03 16:38:39 -04:00
StephenButtolph dce704e8f0 Fixed non-determinism in genesis creation 2020-04-03 15:50:29 -04:00
Dan Laine dc9550c453 rename import/export API methods, add comments 2020-04-02 10:43:06 -04:00
Dan Laine 1c3f0070f3 simplify avm export / platform import api 2020-04-02 09:39:40 -04:00
StephenButtolph fc093b2e9f Fixed mint signing 2020-03-31 15:14:31 -04:00
StephenButtolph 009d78e301 merged 2020-03-30 21:22:22 -04:00
StephenButtolph 7810cd56b9 merged 2020-03-30 21:16:32 -04:00
StephenButtolph 2fa86ef49c fixed locking bug in tests 2020-03-30 20:22:07 -04:00
StephenButtolph b41d6ef95a cleaned up imports 2020-03-30 18:15:16 -04:00
StephenButtolph d72bdbcada Added property test 2020-03-30 18:14:03 -04:00
StephenButtolph a2c0ad56f7 Implemented NFTs 2020-03-30 16:23:06 -04:00
StephenButtolph ffcdfafaf6 Implemented fx operations 2020-03-30 01:08:45 -04:00
StephenButtolph 93ff9d906b merged 2020-03-29 14:46:18 -04:00
StephenButtolph a0b999950d removed json dump in unit test 2020-03-27 16:56:43 -04:00
StephenButtolph 4b36f9d041 Added proper json marshalling of UniqueTxs in the AVM 2020-03-27 16:54:47 -04:00
StephenButtolph 6d9683dc99 Fixed minor atomic commit bugs 2020-03-27 03:39:35 -04:00
StephenButtolph 65393729d2 Finished first pass of APIs 2020-03-27 02:42:16 -04:00
StephenButtolph 9da52e70c0 Add address tracking to atomic utxos 2020-03-26 23:11:23 -04:00
StephenButtolph a7f2a887ca Updated Export Tx to support change addresses 2020-03-26 22:01:22 -04:00
StephenButtolph 87ea21c63f linked atomic swaps to main 2020-03-26 18:04:41 -04:00
StephenButtolph 3efccbf354 finished first pass of atomic swaps 2020-03-26 11:27:47 -04:00
StephenButtolph 93ed25f878 wip 2020-03-25 23:48:21 -04:00
StephenButtolph 552e63f2eb Added export Tx to the AVM 2020-03-24 12:39:25 -04:00
Stephen Buttolph 01fe74ec6b wip 2020-03-23 16:40:37 -04:00
StephenButtolph 805b0d5530 wip importTx 2020-03-23 11:41:02 -04:00
StephenButtolph f151ab841a Added flow checker 2020-03-20 20:57:12 -04:00
StephenButtolph aee9d03921 Cleanup + introduction of side effects 2020-03-20 20:56:43 -04:00
StephenButtolph 638cce84ce AVM code cleanup 2020-03-19 18:36:10 -04:00
Stephen Buttolph d3d22ffce8 addressed PR comments 2020-03-17 16:07:33 -04:00
Stephen Buttolph 00df659961
Perf (#13)
- Added support for xput tests on the AVM
- Implemented an AVM wallet for throughput tests.
- Fixed credential bug in the AVM for transactions that depend on un-confirmed UTXOs.
2020-03-13 17:31:23 -04:00
StephenButtolph b9e34e3b15 init repo 2020-03-10 15:20:34 -04:00