Greg Fitzgerald
867f6f107b
Rename SystemInstruction::Move to SystemInstruction::Transfer
2019-04-03 08:35:57 -06: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
4c0bc1fd88
Add program_ids() methods
...
Added CompiledInstruction::program_id() so that we don't need to pass
around instruction indexes just for Message::program_id().
Also added Message.program_ids() that returns a slice so that we
can move those pubkeys into Message::account_keys.
2019-04-02 19:00:35 -06:00
Greg Fitzgerald
fa1c1e3734
Rename native programs to native instruction processors
2019-04-02 10:36:19 -06:00
Greg Fitzgerald
0a9f063d3e
Rename native_program.rs to instruction_processor_utils.rs
...
Prefer the term "instruction processor" over "program". Reserve
the term "native" for the loader and shared object it loads.
Compiling an instruction processor to BPF shouldn't imply changing
to a non-native entrypoint.
2019-04-02 10:36:19 -06:00
Greg Fitzgerald
fcef54d062
Add a constructor to generate random pubkeys
2019-03-31 16:23:18 -06:00
Greg Fitzgerald
5646daa820
Delete lots of fee parameters
...
So many zeros!
2019-03-29 19:21:51 -06:00
Greg Fitzgerald
7896e8288d
Replace Transaction::fee with a FeeCalculator
2019-03-29 19:21:51 -06:00
Greg Fitzgerald
8e04fadb05
Cleanup magic numbers
...
Rename `num_signatures` to `num_required_signatures` to
disambiguate it from `tx.signatures.len()`.
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
31f8b6d352
Integrate Message into Transaction
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
98d60e6124
Expose a method for getting the Message from a Transaction
...
This currently constructs the message, but when message
is integrated, it can return a `&Message`.
2019-03-29 13:03:29 -07:00
Greg Fitzgerald
3759b0d2a5
Fix Blockstreamer test
2019-03-29 08:25:56 -06:00
Greg Fitzgerald
c4bc710d3a
Use Serde's with
attribute to shorten length encodings in Transaction
2019-03-29 08:25:56 -06:00
Sathish Ambley
857dc2ba47
Remove custom serialization
2019-03-29 08:25:56 -06:00
Tyera Eulberg
37494c67d0
Add pubkey read/write tools
...
Co-authored-by: Tyera Eulberg <tyera@solana.com>
Co-authored-by: Tristan Debrunner <tristan@solana.com>
2019-03-28 20:04:32 -06:00
Greg Fitzgerald
2ab50cbae8
Move untested code out of SDK
...
verify_signature() was only used in a test that was testing
binary layout. It only worked because the test transaction only
had one signature.
from() was only used by verify_signature() and that's something
we'd typically called `pubkey()`.
hash() didn't return the hash of the Transaction, as you might
guess. It's only used for PoH, so move it into Entry.
2019-03-28 14:24:59 -06:00
Greg Fitzgerald
4bca60861e
Specialize GenericInstruction
2019-03-28 05:45:46 -06:00
Greg Fitzgerald
054ae3a3e3
Document current transaction size awkwardness
2019-03-27 14:27:20 -06:00
Greg Fitzgerald
5ce31168ef
Remove Transaction::new_signed
2019-03-26 19:51:16 -07:00
Greg Fitzgerald
b9ff70c8ab
pub Transaction::new_unsigned
...
Offer an incremental path off Transaction::new_unsigned_instructions().
2019-03-26 20:06:05 -06:00
Greg Fitzgerald
77498c6efe
Expose Message via the new default Transaction constructor
2019-03-26 20:06:05 -06:00
Greg Fitzgerald
8c69c40834
Make space for a new Transaction::new
2019-03-26 20:06:05 -06:00
Rob Walker
d497b99abb
use solana_entrypoint directly ( #3518 )
2019-03-26 16:40:34 -07:00
Greg Fitzgerald
ca2ac1e5ea
Remove a mostly unused Transaction constructor
2019-03-26 15:46:58 -07:00
Greg Fitzgerald
df333e8b6e
Move new_move_many to SystemInstruction
2019-03-26 09:22:29 -07:00
Greg Fitzgerald
b61aed7250
Minor cleanup
2019-03-25 20:31:13 -07:00
Rob Walker
34c051f183
add hash_fromstr ( #3476 )
2019-03-25 12:23:19 -07:00
Greg Fitzgerald
5c536e423c
Inline InstructionCompiler
...
The object-oriented paradigm isn't helpful here; go functional.
2019-03-25 12:08:27 -06:00
Greg Fitzgerald
4efa144916
Generate a Message instead of a Transaction
2019-03-25 12:08:27 -06:00
Greg Fitzgerald
f3936c21a3
Add message
2019-03-25 12:08:27 -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
Jack May
6505221629
Add exchange program ( #3444 )
2019-03-22 21:07:36 -07:00
Greg Fitzgerald
5f41909098
Stop using VoteTransaction in Vote processor
2019-03-22 14:07:00 -06:00
Greg Fitzgerald
4bb88619fd
Move entrypoint boilerplate into a macro
2019-03-21 15:27:49 -06:00
Greg Fitzgerald
a8095e204f
Cleanup SystemTransaction
2019-03-21 12:41:39 -07:00
Michael Vines
63aadc4905
Turn top-level Cargo.toml into a virtual manifest
2019-03-21 08:47:58 -07:00
Greg Fitzgerald
d2415613de
Migrate loader tests to BankClient
2019-03-21 09:19:24 -06:00
Greg Fitzgerald
58f071b7a0
Migrate loader to high-level instructions
2019-03-21 09:19:24 -06:00
Michael Vines
0dc364c17a
Relocate transaction reference verification to join the other validity checks
2019-03-20 07:46:01 -07: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
Pankaj Garg
56fcc93ef5
Schedule node for consecutive slots as leader ( #3353 )
...
* Also tweak epoch and slot duration
* new test for leader schedule
2019-03-19 06:36:45 -07:00
Michael Vines
15aed9f320
Self
2019-03-18 18:34:08 -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
122c7bc2ef
Rename TransactionCompiler to Script and use it to replace the type alias
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
70b45de012
Get access to runtime errors in Budget unit-tests
2019-03-18 08:22:54 -07:00
Michael Vines
e2c24481e4
wallet/ now only dev-depends on core/
2019-03-16 21:40:39 -07:00
Greg Fitzgerald
a88b36d718
Rename TransactionBuilder to TransactionCompiler
2019-03-15 14:46:44 -06:00