Commit Graph

4765 Commits

Author SHA1 Message Date
Stephen Akridge ef111dcbe1 Decendent is not a word 2019-03-18 15:58:27 -07:00
Pankaj Garg da7e49c880 Fix broken build
- build breaks if Cuda feature is used
2019-03-18 15:29:51 -07:00
Greg Fitzgerald f16f88873d Add multiple signer support to BankClient 2019-03-18 16:07:45 -06:00
anatoly yakovenko 211c81f2a2
bank fork rpc (#3351) 2019-03-18 14:18:43 -07:00
Pankaj Garg efc39ffdde
Report how many grace ticks were afforded to previous leader (#3350) 2019-03-18 13:24:07 -07:00
anatoly yakovenko 61a4b998fa
Implement locktower voting (#3251)
* locktower components and tests

* integrate locktower into replay stage

* track locktower duration

* make sure threshold is checked after simulating the vote

* check vote lockouts using the VoteState program

* duplicate vote test

* epoch stakes

* disable impossible to verify tests
2019-03-18 12:12:33 -07:00
Stephen Akridge cedff2fca1 Cleanup sockets test 2019-03-18 11:56:18 -07:00
Greg Fitzgerald 8d032aba9d Merge InstructionError and ProgramError
From the user's perspective, it's just an instruction error.
For program-specific errors, we still have
InstructionError::CustomError.
2019-03-18 10:39:20 -06:00
Greg Fitzgerald 607b368fe3 Add back in test to check the account program id 2019-03-18 08:22:54 -07:00
Greg Fitzgerald a54854abc7 Do Budget verification in BudgetScript 2019-03-18 08:22:54 -07:00
Greg Fitzgerald ce6257a069 Delete misplaced unit-tests
These tests were from back in the day when Bank(then-called Accountant)
would call `verify_plan()` on all transactions. Nowadays `verify_plan`
is only useful to the client. At can be used to ensure a transaction
won't trigger runtime errors.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald 7b28d3a231 Move Budget's verify_plan() into tests
This functionality is supposed to be the the interpreter
2019-03-18 08:22:54 -07:00
Greg Fitzgerald ea01ff2aab Add pubkey to BudgetExpr::new_cancelable_future_payment for wallet 2019-03-18 08:22:54 -07:00
Greg Fitzgerald 3369019943 Add BudgetExpr::new_cancelable_authorized_payment 2019-03-18 08:22:54 -07:00
Greg Fitzgerald dbd4176b97 Move script constructors into a separate module 2019-03-18 08:22:54 -07:00
Greg Fitzgerald 122c7bc2ef Rename TransactionCompiler to Script and use it to replace the type alias 2019-03-18 08:22:54 -07:00
Greg Fitzgerald 99671472d1 Migrate config tests to Bank 2019-03-18 08:22:54 -07:00
Greg Fitzgerald 0c0716abfb Move Bank-based tests into unit-tests 2019-03-18 08:22:54 -07:00
Greg Fitzgerald c09accb685 Rename StaticEntrypoint to ProcessInstruction 2019-03-18 08:22:54 -07:00
Greg Fitzgerald ae4d14a2ad Introducing Scripts
A sequence of instructions. A client compiles the script and then uses
the compiled script to construction a transaction. Then it adds a
adds a blockhash, signs the transaction, and sends it off for
processing.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald 55cdbedb52 Allow tests to add instruction processors
Make runtime a private module again.
2019-03-18 08:22:54 -07:00
Greg Fitzgerald ee39f31d81 Add Runtime object. Allow any number of static loaders. 2019-03-18 08:22:54 -07:00
Greg Fitzgerald 70b45de012 Get access to runtime errors in Budget unit-tests 2019-03-18 08:22:54 -07:00
carllin 60437a8dcb
Multiple entries per blob (#3337)
* Pack multiple entries into blob

* fix tests

* Add test for deserializing multi-entry blobs in blocktree

* more test fixes
2019-03-17 18:48:23 -07:00
Michael Vines a35ebe1186 Avoid RpcRequest 2019-03-17 01:34:58 -07:00
Michael Vines c498775a3d Move generic rpc_client functions from wallet/ to client/ 2019-03-17 01:34:58 -07:00
Michael Vines 3ad019a176 Increment stable timeout 2019-03-16 23:56:35 -07:00
Michael Vines 9632136cda Clean up stray retry_get_balance() function 2019-03-16 23:56:35 -07:00
Michael Vines 42cea7a785 Remove metrics dependency 2019-03-16 23:56:35 -07:00
Michael Vines 4c9d852b08 Remove ThinClient::transfer() 2019-03-16 23:56:35 -07:00
Sathish 9566a5cc68
Organize accounts on a per fork basis (#3336)
* Organize accounts by fork

* Keep track of vote accounts in account info

* update comments
2019-03-16 23:42:32 -07:00
Michael Vines ac03c59b41 client/: get_transaction_count() now returns a Result 2019-03-16 23:27:23 -07:00
Michael Vines 73ceaf07b1 client/: move RpcClient from rpc_request.rs to rpc_client.rs 2019-03-16 23:27:23 -07:00
Michael Vines 7b314f47f7 Factor RPC request mechanism out of RpcClient into *RpcClientRequest 2019-03-16 23:27:23 -07:00
Michael Vines 23337e08eb client/: Merge client.rs into thin_client.rs 2019-03-16 22:48:26 -07:00
Michael Vines 97e73311c5 Move mock request_airdrop_transaction into drone/, closer to the real impl 2019-03-16 22:14:09 -07:00
Michael Vines e2c24481e4 wallet/ now only dev-depends on core/ 2019-03-16 21:40:39 -07:00
Michael Vines ad252fe4c5 Remove unnecessary Option from get_account_data 2019-03-16 11:32:01 -07:00
Michael Vines 4b04bc8612 Move thin_client RPC requests into rpc_request; de-mut thin_client 2019-03-16 11:32:01 -07:00
Michael Vines bcc34b906c Relieve the caller of having to care about the rpc request id 2019-03-16 11:32:01 -07:00
Michael Vines c2b1010f18 Clarify url vs addr 2019-03-16 11:32:01 -07:00
Rob Walker e3ef4f25d3
Update Dockerfile
install mscgen (for book art)
2019-03-15 20:44:35 -07:00
Michael Vines ad12b0efce Bump kvstore version to 0.13.0 to match all other solana crates (#3334) 2019-03-15 19:05:24 -05:00
Sagar Dhawan 00f005af25 Fix leader rotation counter 2019-03-15 17:01:18 -07:00
Mark 656fb173f9
Extract kvstore into separate crate (#3327)
* extract kvstore into new crate

* add kvstore crate to CI publishing list
2019-03-15 18:42:47 -05:00
Michael Vines 5f58e9cd6e Config program - useful for storing/updating simple config items on chain 2019-03-15 16:39:45 -07:00
Michael Vines 1d876df8b3 Add command plumbing 2019-03-15 16:30:31 -07:00
Michael Vines c8bbca08f8 Install the install program 2019-03-15 16:30:31 -07:00
Pankaj Garg 971da7325d Reduce log level for periodic debug messages 2019-03-15 15:41:26 -07:00
Michael Vines ca4f874f52
Remove ci/run-local.sh 2019-03-15 15:09:25 -07:00