Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Parth
5bd05fba09
require `to` account signature ( #6658 )
...
* require to signature
* fixing invocation to create_account
* fix create_account references
* address review comment
* whacking bugs in tests
* fixing stake program tests
2019-11-08 15:57:35 +05:30
Tyera Eulberg
c6931dcb07
Remove credit-only account handling ( #6726 )
...
* Renaming
- credit-only/credit-debit to read-only/read-write
- debitable to writable
* Remove credit handling, making credit-only accounts read-only
* Update programs to remove deprecated credit-only account designation
* Use readonly and writable instead of underscored types
2019-11-05 09:38:35 -07:00
Jack May
ddefc96433
Limit deserialization of program inputs ( #6522 )
2019-10-23 19:56:07 -07:00
Greg Fitzgerald
365fe70f77
Delete dead code ( #5948 )
2019-09-18 16:09:10 -06:00
Rob Walker
b881029de3
make voter_pubkey a function of epoch ( #5830 )
...
* make voter_pubkey a function of epoch
* fixups
2019-09-09 18:17:32 -07:00
Rob Walker
4a20c2aa1b
add stake and vote errors ( #5814 )
...
* add stake errors
* remove self from type_of
* sheesh
* better
* add stake errors
* update wallet error handling
* fixup
2019-09-06 10:55:03 -07:00
TristanDebrunner
091999a17e
fix Instruction and CompiledInstruction field names ( #4895 )
...
* s/program_ids_index/program_id for Instruction
* s/program_ids_index/program_id_index for CompiledInstruction
2019-07-01 18:34:22 -06:00
Tyera Eulberg
278614fc7c
Impl credit-only accounts in Budget ( #4862 )
2019-06-27 19:22:21 -04:00
Greg Fitzgerald
c6b4a3a706
Witness account data in Budget ( #4650 )
...
* Add support for contracts based on account data to Budget
* Add program_id to account constraints
* No longer require a signature for the account data witness
* Rename bank::store to store_account
* fmt
* Add a doc
* clippy
2019-06-13 18:20:28 -07:00
Rob Walker
fd9fd43e83
add solana_name_id, reassociate names with modules, modularize id tests ( #4580 )
2019-06-06 19:27:49 -07:00
Tyera Eulberg
64e8a21d73
Add tick height syscall ( #4497 )
...
* Remove tick_height from entrypoint signature
* Impl tick_height syscall and use in storage program
* Properly remove tick height from bpf handling
2019-05-31 16:29:21 -06:00
Tyera Eulberg
99d2428041
Transaction format changes toward Credit-Only accounts ( #4386 )
...
* Add num_readonly_accounts slice
* Impl programs in account_keys
* Emulate current account-loading functionality using program-account_keys (breaks exchange_program_api tests)
* Fix test
* Add temporary exchange faucet id
* Update chacha golden
* Split num_credit_only_accounts into separate fields
* Improve readability
* Move message field constants into Message
* Add MessageHeader struct and fixup comments
2019-05-22 18:23:16 -04:00
Rob Walker
8e400fc4bd
rework genesis (passive staking groundwork) ( #4187 )
...
* rework genesis
* fixup
2019-05-07 11:16:22 -07:00
Rob Walker
694d28acf8
remove some boilerplate ( #4143 )
2019-05-06 10:11:18 -07:00
Michael Vines
e71ab55288
Rename in-tree program_ids to be base-58 human readable ( #4001 )
2019-04-25 17:58:49 -07:00
Tyera Eulberg
5a79676b8a
Custom error decoder ( #3783 )
...
automerge
2019-04-25 10:29:44 -07:00
Greg Fitzgerald
51a2988bb2
Revert "Rename programs to instruction_processors ( #3789 )" ( #3824 )
...
This reverts commit 34344982a9
.
2019-04-17 15:05:49 -06:00
Amr Ali
34344982a9
Rename programs to instruction_processors ( #3789 )
...
* Rename programs to instruction_processors
* Updates around the code base to support instruction_processors rename
* Kabab instruction_processors
* Update Cargo.toml files and scripts to use instruction-processors
* Update Cargo.toml to use instruction-processors
* Update CI scripts to use instruction-processors
2019-04-16 22:39:00 +02:00
Tyera Eulberg
d31989f878
CustomError from Vec->u32
2019-04-11 13:59:48 -07:00
Greg Fitzgerald
a28c3b0e9a
Consume Bank in BankClient
...
This will allow BankClient to spin up a thread to use the Bank.
It'll also ease the transaction from BankClient to ThinClient since
it won't let you depend on Bank.
Drawback, you the transition from Bank to BankClient will be harder
because the Bank methods are inaccessible.
2019-04-11 12:16:33 -07:00
Jack May
d0f46d6a8a
Cleanup client traits and create super trait ( #3728 )
2019-04-11 00:25:14 -07:00
Greg Fitzgerald
1598a02a7a
Wrap all client errors with TransportError
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
167f5bdc58
Add get_balance() and get_account_data() to SyncClient
...
Migrate tests to use them.
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
5cd7bccdf3
Add SyncClient and use from BankClient
2019-04-04 12:00:19 -06:00
Greg Fitzgerald
35298e01a8
Remove Instruction wrapper structs and name functions after enum fields
2019-04-03 13:34:27 -07:00
Greg Fitzgerald
43bb813cbe
Rename 'new_account' to 'new_user_account'
...
And 'new_program_account' to 'new_account'
2019-04-02 21:24:42 -06:00
Greg Fitzgerald
fcef54d062
Add a constructor to generate random pubkeys
2019-03-31 16:23:18 -06:00
Greg Fitzgerald
3fc09fb23f
Remove keypairs from BankClient
...
Bring its interface closer to the other clients.
2019-03-27 09:37:19 -06:00
Greg Fitzgerald
0ac865f08c
Remove BankClient::process_instructions
2019-03-27 08:51:10 -06:00
Greg Fitzgerald
55115d0eeb
Add process_message() to BankClient
2019-03-27 08:51:10 -06:00
Greg Fitzgerald
8c69c40834
Make space for a new Transaction::new
2019-03-26 20:06:05 -06:00
Greg Fitzgerald
b61aed7250
Minor cleanup
2019-03-25 20:31:13 -07:00
Greg Fitzgerald
6286947697
Inline payment_plan
...
This module predates Accounts. That was a separate module because
it used to be part of Bank and those types could be sent to any
smart contract. Now each instruction processor defines for itself
what instructions it accepts.
2019-03-24 14:52:06 -06:00
Greg Fitzgerald
33972ef89e
Boot BudgetTransaction
2019-03-24 14:52:06 -06:00
Greg Fitzgerald
b53cbdd9e6
Punt on the Script abstraction
...
Low ROI
2019-03-24 14:52:06 -06:00
Greg Fitzgerald
acedf4ca5a
Move Instruction into its own module
2019-03-23 20:31:55 -07:00
Greg Fitzgerald
38fdbbba3f
Reduce remaining program crates to boilerplate crates
2019-03-22 06:46:44 -07:00
Greg Fitzgerald
045af04784
Reduce budget_program and config_program into boilerplate crates
2019-03-21 16:53:08 -06:00
Greg Fitzgerald
94b5835738
Make AccountMeta a traditional struct instead of a tuple struct
2019-03-19 17:22:39 -06:00
Greg Fitzgerald
a4652a9aaf
Label tuple with AccountMeta
2019-03-19 17:22:39 -06: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
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