Commit Graph

809 Commits

Author SHA1 Message Date
Jack May 9e2ce1751b
Bump Rust-BPF to Rust 1.39 (#7420) 2019-12-10 22:27:14 -08:00
dependabot-preview[bot] 6f457292ff Bump bincode from 1.2.0 to 1.2.1
Bumps [bincode](https://github.com/servo/bincode) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/servo/bincode/releases)
- [Commits](https://github.com/servo/bincode/compare/v1.2.0...v1.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-10 10:00:56 -07:00
Rob Walker 39cd6dff7d
turn on rent (#7368)
* turn on rent

* add rent exempt balances for bootstrap accounts

* use Rent::free() when not testing rent
2019-12-09 21:56:43 -08:00
Rob Walker 0d6fca5abc
500M SOL (#7361)
* 500_000_000MM SOL

* fixup
2019-12-08 14:36:09 -08:00
dependabot-preview[bot] 891767c6b7 Bump serde_json from 1.0.42 to 1.0.44
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.42 to 1.0.44.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.42...v1.0.44)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-08 09:43:24 -07:00
Tyera Eulberg 3ab8185777
Add intermittent Timestamping to Votes (#7233)
* Add intermittent timestamp to Vote

* Add timestamp to VoteState, add timestamp processing to program

* Print recent timestamp with solana show-vote-account

* Add offset of 1 to timestamp Vote interval to initialize at node boot (slot 1)

* Review comments

* Cache last_timestamp in Tower and use for interval check

* Move work into Tower method

* Clarify timestamping interval

* Replace tuple with struct
2019-12-06 14:38:49 -07:00
Rob Walker 709bda5939
custodian signs withdraw (#7286) 2019-12-04 21:25:01 -08:00
Jack May 9485eba73d
nudge (#7279) 2019-12-04 19:28:20 -08:00
Jack May 23c4a7dc49
nudge (#7280) 2019-12-04 19:28:00 -08:00
Jack May 39b578fde9
Remove runtime dependency from config program unit tests and move back to config program (#7277) 2019-12-04 19:24:12 -08:00
Jack May 703a5348e8
Relocate program tests (#7259) 2019-12-04 12:41:54 -08:00
Jack May 1a135fa30e
Verify BPF ELF during finalize (#7266) 2019-12-04 12:03:29 -08:00
Jack May 9b172879a2
Remove deprecated solana_entrypoint macro (#7257) 2019-12-04 00:42:50 -08:00
Rob Walker 9077a94dfe
vote update node_id (#7253)
* vote update node_id

* un-break binary 'contract'
2019-12-03 22:50:08 -08:00
Rob Walker ae93d574c2
commission as percent (#7239)
* commission_as_percent

* fixup
2019-12-03 20:55:04 -08:00
Rob Walker 369f37a0a4
genesis validators (#7235)
* genesis validators

* slp1 nodes get 500SOL

* no commission
2019-12-03 20:44:02 -08:00
Justin Starry 7cfff75c3e Use procedural macro to generate static public keys (#7219)
automerge
2019-12-03 17:55:18 -08:00
Parth ba688cf629
enforce proper range for rent burn_percent (#7217)
* enforce proper range for burn_percent
2019-12-04 00:54:01 +05:30
Greg Fitzgerald 6796b08909
Migrate to thiserror (#7177)
* Migrate to thiserror

* Discourage the use of other modules' Result alias

`io::Result` set a bad precedent. Don't import other `Result`
aliases.
2019-12-02 15:42:05 -07:00
dependabot-preview[bot] 0f872af502 Bump libc from 0.2.65 to 0.2.66 (#7180)
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.65 to 0.2.66.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.65...0.2.66)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 09:56:03 -07:00
Greg Fitzgerald 92d485dd4d
Cleanup (#7176)
* Drop serde error instances

These were no longer needed after ToPrimitive instances were
added.

* Rename last of _api crates
2019-11-29 13:50:32 -07:00
dependabot-preview[bot] 7f4feaee08 Bump serde from 1.0.102 to 1.0.103 (#7163)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.102 to 1.0.103.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.102...v1.0.103)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-27 09:10:25 -07:00
Rob Walker 8d75efdc58
genesis config hashmaps (#7107) 2019-11-26 19:23:37 -08:00
dependabot-preview[bot] c810913861 Bump serde_derive from 1.0.102 to 1.0.103 (#7141)
automerge
2019-11-26 14:44:20 -08:00
dependabot-preview[bot] 2b13158e29 Bump serde_json from 1.0.41 to 1.0.42 (#7142)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.41 to 1.0.42.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.41...v1.0.42)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-26 15:09:01 -07:00
Michael Vines 294662a1ce
Bump version to 0.22.0 2019-11-25 21:34:50 -07:00
Rob Walker ef64f00cbb
Revert "Revert "add genesis stake placeholders (#6969)" (#7109)" (#7124)
This reverts commit 702f7cc51d.
2019-11-25 15:11:55 -08:00
Rob Walker acbe89a159
shrink stakes (#7122) 2019-11-25 13:14:32 -08:00
dependabot-preview[bot] 686aa3a150 Bump chrono from 0.4.9 to 0.4.10 (#7113)
automerge
2019-11-25 10:01:46 -08:00
anatoly yakovenko 702f7cc51d Revert "add genesis stake placeholders (#6969)" (#7109)
* Revert "add genesis stake placeholders (#6969)"

This reverts commit 8a879faac7.

* fixup! Revert "add genesis stake placeholders (#6969)"

* fixup! fixup! Revert "add genesis stake placeholders (#6969)"

* fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969)"

* fixup! fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969)"

* fmt
2019-11-23 23:15:21 -07:00
Greg Fitzgerald f040987c9f Move date oracle to config program (#7105)
automerge
2019-11-22 15:10:53 -08:00
Greg Fitzgerald 2a42ddbcbf
Don't panic if pubkeys are missing from Budget transaction (#7102) 2019-11-22 14:34:50 -07:00
Justin Starry ce8d37984d
Allow secure keypair input for solana-validator cli (#7080)
* Allow secure keypair input for solana-validator cli

* feedback

* Add --skip-mnemonic-validation

* Update --identity to --identity-keypair

* Use struct instead of tuple

* Fix dependencies

* cargo fmt

* Add basic tests

* Use `seed phrase` instead of `mnemonic`

* Update passphrase prompt
2019-11-22 10:20:40 -05:00
Jack May d8ead57fbb
Use bs58 strings to declare IDs rather then raw bytes (#7082) 2019-11-21 16:34:40 -08:00
Rob Walker 8a879faac7
add genesis stake placeholders (#6969)
* add investor stake placeholders

fixups

fixups

review comments, fixups

make more data-looky for easier management

rent may be zero

rework with more tables, derived keys

fixups

rebase-fix

fixups

fixups

* genesis is now too big to boot in 10 seconds
2019-11-21 12:05:31 -08:00
Greg Fitzgerald 96dd044f8e
Allow vest's terminator to recapture tokens (#7071)
* Allow vest's terminator to recapture tokens

* Less code

* Add a VestAll instruction

The terminator may decide it's impractical to maintain a vest
contract and want to make all tokens immediately redeemable.
2019-11-20 19:33:17 -07:00
Jack May 3415db9739
Merge api/program into single units (#7061) 2019-11-20 16:32:19 -08:00
Rob Walker ba9aaee7cd Update config.rs (#7045)
automerge
2019-11-20 11:10:46 -08:00
Jack May d184d3a732
Merge native programs parts into one unit (#7047) 2019-11-20 10:12:43 -08:00
Jack May d2ed921bc6
Cleanup nightly warnings (#7055) 2019-11-19 20:15:37 -08:00
Greg Fitzgerald bfa2535ea1
Add non-fungible token program (#7007)
* Add non-fungible token program

* Remove issuer and id from state

* Boot NftInstruction and NftState

* Rename NFT to Ownable

Maybe this should be "Owned" to avoid confusion with an Ownable trait?

* Rename directory

* Delete unreachable branch

* Don't use copy_from_slice - need an error, not a panic.

* Rename contract_pubkey to account_pubkey
2019-11-18 18:09:42 -07:00
Jack May 6ec918fabb
Update Move support to accomadate Libra's changes to compiler behavior (#6993) 2019-11-18 16:47:01 -08:00
Rob Walker cbf7c0080b
fix split instruction doc (#7022) 2019-11-18 15:31:17 -08:00
Justin Starry 3acd84d9c0 Allow creating an vote program ix where the withdrawer is also the "to" account (#6992)
automerge
2019-11-18 12:43:47 -08:00
Justin Starry afd9ae9999
Allow withdraws to the authorized withdrawer (#6989) 2019-11-15 17:16:24 -05:00
Michael Vines fcc2874591
Remove/address some TODOs (#6923) 2019-11-13 09:43:15 -07:00
Greg Fitzgerald 361eab1bf7 Remove unused dependencies (#6917)
automerge
2019-11-12 22:00:29 -08:00
Rob Walker bb00904fc8
add rent reserve for bootstrap stakes (#6876)
* genesis investor stakes

* assert rent is sufficient for these bootstrappers
2019-11-12 12:33:40 -08:00
Justin Starry 9807f47d4e
Rename genesis block to genesis config (#6816) 2019-11-08 23:56:57 -05:00
Jack May 346213da4c
Check for LD_DW at the end of a program (#6821) 2019-11-08 13:30:44 -08:00
Jack May 2855c55ac1
Move loader does not need genesis auth key (#6818) 2019-11-08 11:52:56 -08:00
Jack May dfc4d7cb50
Remove unsupported test (#6820) 2019-11-08 11:37:47 -08:00
Jack May cd5ec8cd35
Fix blind keyed_account indexing in BPF and Move loader (#6810) 2019-11-08 09:19:19 -08: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
anatoly yakovenko f54cfcdb8f
Store and persists full stack of tower votes in gossip (#6695)
* vote array

wip

wip

wip

update

gossip index should match tower index

tests build

clippy

test index after expired vote

test

bank specific last vote sync time

* verify

* we are likely to see many more warnings about old votes now
2019-11-04 16:19:54 -08:00
Rob Walker efe260f12e
sysvar trait (#6667)
* sysvar trait

* get the new guy in on it
2019-11-04 12:31:24 -08:00
Michael Vines 50a17fc00b Use Slot and Epoch type aliases instead of raw u64 (#6693)
automerge
2019-11-02 00:38:30 -07:00
TristanDebrunner d2c66c40c6
Have cargo-install-all.sh also look in program target dirs for so's (#6631) 2019-10-31 14:40:54 -07:00
Rob Walker 111942a47d
document clock (#6662) 2019-10-31 13:26:55 -07:00
Rob Walker bc88180058
stake split (#6402)
* stake split

* stake split
2019-10-31 11:07:27 -07:00
Rob Walker fa12a5f70b
kill rent calculator (#6625) 2019-10-30 16:25:12 -07:00
Justin Starry d2d78a073f Remove lingering references to base-2 SOLs (#6629)
automerge
2019-10-30 14:59:44 -07:00
TristanDebrunner b4dc1a7263 Remove move feature (#6605)
automerge
2019-10-29 17:14:07 -07:00
Rob Walker a587d05098
fix re delegate (#6603) 2019-10-29 14:42:45 -07:00
TristanDebrunner 489dc657c6
Update libra to new fork (#6523)
* Update to new libra branch

* Use core and association addresses
2019-10-29 10:39:10 -07:00
dependabot-preview[bot] 30c0a7d069 Bump serde from 1.0.101 to 1.0.102 (#6581)
automerge
2019-10-28 09:19:39 -07:00
dependabot-preview[bot] 73dd5aa2d1 Bump serde_derive from 1.0.101 to 1.0.102 (#6582)
Bumps [serde_derive](https://github.com/serde-rs/serde) from 1.0.101 to 1.0.102.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.101...v1.0.102)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-28 08:24:13 -07:00
Dan Albert 73c31d873e
Update Cargo.toml versions from 0.20.0 to 0.21.0 (#6568) 2019-10-25 17:40:49 -06:00
Jack May d68e2c4d06
Revert "Make instruction data opaque to runtime (#6470)" (#6564)
This reverts commit 6eeca9c6f1.
2019-10-25 16:22:41 -07:00
Jack May 6eeca9c6f1
Make instruction data opaque to runtime (#6470) 2019-10-24 22:38:57 -07:00
Rob Walker b4119c454a
credit_only credits forwarding (#6509)
* credit_only_credits_forwarding

* whack transfer_now()

* fixup

* bench should retry the airdrop TX

* fixup

* try to make bench-exchange a bit more robust, informative
2019-10-23 22:01:22 -07:00
Jack May ddefc96433
Limit deserialization of program inputs (#6522) 2019-10-23 19:56:07 -07:00
Greg Fitzgerald 9232057e95
Rename replicator to archiver (#6464)
* Rename replicator to archiver

* cargo fmt

* Fix grammar
2019-10-21 11:29:37 -06:00
Rob Walker e2c316d2d0
system_instruction_processor updates (#6448)
* zero lamport account creation

* whack create_user_account, take 2

* target->to

* ..

* ..

* update chacha golden

* update chacha golden

* ..

* ..
2019-10-19 18:23:27 -07:00
Jack May 985f5c7351 Use serde-bytes to serialize u8 efficiently (#6442)
automerge
2019-10-18 17:18:06 -07:00
dependabot-preview[bot] 51dad397ed Bump libc from 0.2.64 to 0.2.65
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.64 to 0.2.65.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.64...0.2.65)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-18 08:05:49 -07:00
TristanDebrunner 9e52d11ad0
Remove Backend trait (#6407) 2019-10-17 15:19:27 -06:00
Michael Vines d865f1f0c5 Add vest program to genesis 2019-10-17 14:07:09 -07:00
Jack May b85996494b
BPF script nits (#6405) 2019-10-16 15:35:16 -07:00
dependabot-preview[bot] f6b48b0a67 Bump libc from 0.2.62 to 0.2.64
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.62 to 0.2.64.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.62...0.2.64)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-16 10:03:06 -07:00
Jack May 609d6cdf61 Enforce move loader program account size (#6385)
automerge
2019-10-15 23:42:59 -07:00
Jack May a3ccbe02d0
Create genesis with the requested amount (#6384) 2019-10-15 22:40:31 -07:00
Jack May 78d5c1de9a
Move loader enforces account size (#6379)
* Move loader enforces account size

* Fix librapay test
2019-10-15 18:30:45 -07:00
Greg Fitzgerald f6255c2f9e
Fix blind keyed accounts indexing in Config program (#6369) 2019-10-15 14:35:42 -06:00
Greg Fitzgerald ae41c88eb2
Boot the Builder pattern from GenesisBlock (#6364) 2019-10-15 13:52:44 -06:00
Rob Walker 41067de5e4
multiple deactivation (#6354) 2019-10-15 12:50:31 -07:00
dependabot-preview[bot] 2be03ca631 Bump reqwest from 0.9.21 to 0.9.22
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.9.21 to 0.9.22.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/v0.9.22/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.21...v0.9.22)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-14 16:33:16 -07:00
Justin Starry 6a161c740d
Stop activating stake after deactivation (#6351) 2019-10-14 18:40:24 -04:00
Rob Walker c2ebf466fd
reestablish parameter semantics for withdraw (#6330) 2019-10-14 15:02:24 -07:00
Greg Fitzgerald 798065fc71 Better Vest code coverage (#6329)
automerge
2019-10-10 21:35:10 -07:00
Tyera Eulberg a9276700ea Stake program: reorder withdraw keys to allow to == authorized withdrawer (#6314)
automerge
2019-10-10 14:46:38 -07:00
Greg Fitzgerald 0f7bf28617
Allow Vest to set terminator (#6313)
* Use transport::Result instead of TransportError

* Split payer and terminator

* Add SetTerminator instruction
2019-10-10 10:25:23 -06:00
Greg Fitzgerald 10cf728e11
More object-oriented version of Vest (#6310) 2019-10-10 08:54:18 -06:00
Greg Fitzgerald eca56eb87d
Add next_keyed_account() to instruction_processor_utils (#6309)
* Cleanup KeyedArguments traversal

* Better error message

* Fix clippy warning

* Rename next_arg to next_keyed_account

* Fix clippy warning

* Shorter
2019-10-10 06:30:42 -06:00
Greg Fitzgerald 33e34cbba9 Plug potential panic in Vest (#6302)
automerge
2019-10-09 16:27:49 -07:00
Rob Walker 7cf90766a3
add epoch_schedule sysvar (#6256)
* add epoch_schedule sysvar

* book sheesh!
2019-10-08 22:34:26 -07:00
Tyera Eulberg 79987e788e
Remove vote pubkey from deactivate_stake (#6257)
* Remove vote pubkey from deactivate_stake

* Fix test

* Update docs
2019-10-07 16:07:01 -06:00
Pankaj Garg 6662986169 Fix vest_api output filename (#6253)
automerge
2019-10-07 10:31:04 -07:00
Greg Fitzgerald 1c86160e16 Reorder parameters (#6252)
automerge
2019-10-07 09:42:56 -07:00