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
Greg Fitzgerald
24d9138067
Abandon Builder pattern
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
aca739b800
Boot fees from TransactionBuilder
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
e091aa87ea
More precise constructor names
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
968022a1b0
Instruction name swap
...
* Instruction -> GenericInstruction
* Instruction<u8, u8> -> CompiledInstruction
* Instruction<Pubkey, (Pubkey, bool)> -> Instruction
2019-03-15 14:46:44 -06:00
Greg Fitzgerald
4e51a444f4
Simplify TransactionBuilder::new_with_instructions
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
42d5dde5b1
new_singleton -> new_with_instruction
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
36fb0a0aef
Add new preferred transaction constructors
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
4d53be8350
Make it unappealing to build and sign transactions at the same time
...
Use a client to sign transactions. It'll need that keypair anyway
to resign new blockhashes on retries.
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
f8bf9ca218
Make safe transaction signing the default
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
7b4568b9bf
Migrate to sign_checked()
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
bd8502e87e
Implement Transaction::new_unsigned with TransactionBuilder
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
21815f26d5
Implement signed transaction using unsigned transaction
2019-03-15 09:06:54 -06:00
Greg Fitzgerald
8ef5195037
Don't test a transaction with a duplicate key
2019-03-15 09:06:54 -06:00
Michael Vines
8f25548781
Overhaul cargo/rustc version management
2019-03-14 20:22:46 -07:00
Greg Fitzgerald
c1eec0290e
Rename userdata to data ( #3282 )
...
* Rename userdata to data
Instead of saying "userdata", which is ambiguous and imprecise,
say "instruction data" or "account data".
Also, add `ProgramError::InvalidInstructionData`
Fixes #2761
2019-03-14 10:48:27 -06:00
Greg Fitzgerald
e58220282a
Move TransactionError into the SDK
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
296415945a
Generalize error codes
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
1de5ae1ef0
Remove SystemError from ProgramError
2019-03-13 21:26:57 -06:00
Greg Fitzgerald
c14cce4c85
Add InstructionError for runtime instruction errors
2019-03-13 21:26:57 -06:00
Pankaj Garg
8d2bd2b30f
Reduce ticks per second
...
- It's improving TPS. Temp fix for beacons timeframe
2019-03-13 17:50:53 -07:00
Michael Vines
1ee43a7633
Remove non-essential programs from runtime/
2019-03-12 15:11:59 -05:00
Michael Vines
6899bd7099
0.13.0
2019-03-11 16:21:19 -07:00
Tyera Eulberg
fe1676bc3a
Review comments
2019-03-11 16:58:43 -06:00
Tyera Eulberg
db5370c5df
Add helper macro to implement bincode serialization of program-specific errors
2019-03-11 16:58:43 -06:00
Tyera Eulberg
804378e8f7
Add ProgramError::CustomError and truncate value to 32 bytes
2019-03-11 16:58:43 -06:00
anatoly yakovenko
0c592c52f6
Wake up replay stage when the poh bank is cleared. ( #3211 )
...
* wake up replay stage when the poh bank is cleared
* bump ticks per second
* Increase ticks per slot to match faster tick rate
* Remove check that working bank must be the bank for the greatest slot
* Make start_leader() skip starting TPU for slots we've already been leader for
2019-03-11 13:58:23 -07:00