Rob Walker
b766ac0899
rent ( #5205 )
2019-07-20 16:28:17 -07:00
dependabot-preview[bot]
bbd0455418
Bump log from 0.4.6 to 0.4.7 ( #5144 )
...
Bumps [log](https://github.com/rust-lang/log ) from 0.4.6 to 0.4.7.
- [Release notes](https://github.com/rust-lang/log/releases )
- [Changelog](https://github.com/rust-lang-nursery/log/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/log/compare/0.4.6...0.4.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-17 09:25:57 -06:00
Greg Fitzgerald
77ea8b9b3e
Add LoaderInstruction::InvokeMain ( #5116 )
...
* Remove unreachable, untested runtime check
* tx_data -> ix_data
* Add LoaderInstruction::InvokeMain
* Add test and allow loaders to be registered statically.
* Fix clippy error
2019-07-16 10:45:32 -06:00
Greg Fitzgerald
04649de6a6
Boot remote native loads, take 2 ( #5106 )
...
* Drop dependencies on remote native loads
* Remove remote native loads
2019-07-15 13:16:09 -06:00
Greg Fitzgerald
6c49b10784
Purge remaining uses of Locktower ( #5076 )
...
automerge
2019-07-13 00:24:15 -07:00
Michael Vines
d2b21ce8d0
Stop trying to publish crates that are unpublishable
2019-07-12 21:53:09 -07:00
Rob Walker
0d27515d09
tmp dirs target to farf ( #5079 )
2019-07-12 18:28:42 -07:00
Rob Walker
d2b6c2e0ce
syscall work, rename syscall to sysvar, rename current to clock ( #5074 )
...
* syscall work, rename syscall to sysvar, rename current to clock
* missed one
* nit
2019-07-12 16:38:15 -07:00
Jack May
2860d2fe27
Pull in support for Rust-BPF stack argument passing ( #5038 )
2019-07-11 14:27:18 -08:00
Rob Walker
a191f3fd90
add node_pubkey to vote warning ( #5033 )
2019-07-11 13:12:26 -07:00
Patrick Amato
bd92f37553
Terminology ( #4995 )
...
* update exchange program: tradeOrder->Order, tradeRequest->OrderRequest, tradeCancel->OrderCancel
* Update bench-exchange: tradeOrder -> Order
* update bench exchange Readme
2019-07-10 23:22:33 -06:00
Tyera Eulberg
dbe533385e
Improve signature checks in config_api ( #5001 )
...
automerge
2019-07-10 01:00:49 -07:00
Sagar Dhawan
b8e7736af2
Move SLOTS_PER_SEGMENT to genesis ( #4992 )
...
automerge
2019-07-09 16:48:40 -07:00
Jack May
bc8f435d45
Shell script nits ( #4982 )
2019-07-09 12:09:13 -08:00
Tyera Eulberg
5e221bf219
Make config_api more robust ( #4980 )
...
* Make config_api more robust
* Add test and update store instruction
2019-07-09 13:37:18 -06:00
Jack May
50c6b5d62d
Work around missing lib on linux (Issue #4972 ) ( #4975 )
2019-07-08 22:24:57 -08:00
Jack May
f9a2254688
Split out Rust BPF no-std stuff ( #4968 )
2019-07-08 20:28:05 -08:00
Jack May
563c42b829
Consistant message format ( #4965 )
2019-07-08 16:07:45 -08:00
Jack May
841e5e326c
Program mutable lamports ( #4964 )
2019-07-08 15:52:25 -08:00
Tyera Eulberg
281deae102
Update config program to accommodate multiple signers ( #4946 )
...
* Update config program to accommodate multiple signers
* Update install CLI
* Remove account_type u32; add handling for unsigned keys in list
* ConfigKeys doc
2019-07-08 18:33:56 -05:00
Pankaj Garg
bf319ab06d
Convert syscall accounts to credit only accounts ( #4915 )
2019-07-02 15:17:28 -07:00
Rob Walker
12ef0c25b5
change vote commission to u8 (from u32) ( #4887 )
...
automerge
2019-07-02 14:18:11 -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
carllin
0c8f187993
remove syscall tick height ( #4891 )
2019-07-01 16:21:51 -07:00
dependabot-preview[bot]
f0191a98ab
Bump serde from 1.0.93 to 1.0.94 ( #4864 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.93 to 1.0.94.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.93...v1.0.94 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-28 15:07:16 -07:00
Tyera Eulberg
278614fc7c
Impl credit-only accounts in Budget ( #4862 )
2019-06-27 19:22:21 -04:00
dependabot-preview[bot]
979df17328
Bump serde_derive from 1.0.93 to 1.0.94 ( #4856 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.93 to 1.0.94.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.93...v1.0.94 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-27 13:18:19 -07:00
Sagar Dhawan
850f77ab3b
Minor refactor of duplicated reward claim logic ( #4835 )
...
automerge
2019-06-26 15:01:45 -07:00
Sagar Dhawan
df1c473341
Add storage point tracking and tie in storage rewards to economics ( #4824 )
...
* Add storage point tracking and tie in storage rewards to epochs and economics
* Prevent validators from updating their validations for a segment
* Fix test
* Retain syscall scoping for readability
* Update Credits to own epoch tracking
2019-06-26 10:40:03 -07:00
dependabot-preview[bot]
eb47538a82
Bump chrono from 0.4.6 to 0.4.7 ( #4812 )
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.6 to 0.4.7.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.6...v0.4.7 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-26 07:58:41 -06:00
Pankaj Garg
30592f2b12
Integration tests for stake API ( #4811 )
...
* more tests for rewards redemption
* break circular deps
* code review
2019-06-25 23:00:35 -07:00
Rob Walker
70f93cc126
remove mining_pool from stake_state ( #4804 )
2019-06-24 16:01:02 -07:00
dependabot-preview[bot]
4e78354ab6
Bump serde_derive from 1.0.92 to 1.0.93 ( #4790 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.92...v1.0.93 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-23 20:23:41 -07:00
dependabot-preview[bot]
0e1480b84e
Bump serde from 1.0.92 to 1.0.93 ( #4791 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.92 to 1.0.93.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.92...v1.0.93 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-23 17:23:41 -07:00
Sagar Dhawan
11992946a4
Add storage reward pools ( #4779 )
2019-06-22 17:18:35 -07:00
Pankaj Garg
405ca1bcb2
Add instructions and processor for stake deactivation ( #4781 )
...
automerge
2019-06-21 23:45:03 -07:00
Pankaj Garg
b7f169e06e
Program instruction to withdraw un-staked lamports from stake account ( #4780 )
2019-06-21 22:28:34 -07:00
Dan Albert
9911942dbd
Increment cargo.toml files to v0.17.0
2019-06-22 04:35:25 +00:00
Rob Walker
a49f5378e2
rewrite vote credits redemption to eat from rewards_pools on an epoch-sensitive basis ( #4775 )
...
* move redemption to rewards pools
* rewrite redemption, touch a few other things
* re-establish test coverage
2019-06-21 20:43:24 -07:00
Jack May
a38e1a81ef
Call do.sh from anywhere ( #4771 )
2019-06-21 12:26:17 -07:00
Jack May
5feeb257bb
Seperate out BPF Loader helpers ( #4768 )
2019-06-21 11:08:50 -07:00
Sagar Dhawan
a40c5cf185
Update storage contract to use a deterministic BTreeMap ( #4763 )
2019-06-21 09:51:05 -07:00
Jack May
407db65336
Add 128bit Rust BPF test ( #4766 )
...
automerge
2019-06-21 02:43:50 -07:00
Jack May
4177c56c51
Use real panic that reports file/line ( #4758 )
2019-06-20 19:10:03 -07:00
Jack May
425ac8d520
Remove need to use null when passing Rust strings ( #4756 )
2019-06-20 19:09:50 -07:00
Jack May
e59b53dfa8
BPF rust language updates ( #4752 )
2019-06-20 16:07:12 -07:00
Rob Walker
1f0f947ed2
add validator rewards pools ( #4742 )
...
* add validator rewards pools
* populate rewards syscall
2019-06-20 12:22:29 -07:00
Jack May
b430762a23
check rust programs ( #4688 )
2019-06-20 07:43:31 -07:00
Rob Walker
41fbdc6e08
use stake ( #4721 )
2019-06-19 11:54:52 -07:00
Jack May
fdb57bc5db
Add Rust BPF Tick Height test ( #4718 )
2019-06-18 15:56:24 -07:00
Rob Walker
0ff9c4cd8e
add stake warmup and cool down ( #4711 )
2019-06-17 19:34:21 -07:00
Rob Walker
d86358eedc
add Account::new_data ( #4701 )
...
* add account_new_data
* fixup
* fixup
2019-06-17 15:58:05 -07:00
Jack May
2a7a9fdf03
Re-org SDK dir ( #4690 )
2019-06-17 11:04:38 -07:00
Rob Walker
4c6a6d63bf
add MiningPools, fund validator MiningPools from inflation ( #4676 )
...
* add MiningPool fund validator MinigPools from inflation
* fixup
* finish rename of MINIMUM_SLOT_LENGTH to MINIMUM_SLOTS_PER_EPOCH
* deterministic miningpool location
* point_value, not credit_value... use f64
2019-06-14 11:38:37 -07:00
Sagar Dhawan
119467df59
Add storage mining pool to genesis and implement automatic reward redeeming ( #4683 )
...
* Add storage mining pool to genesis and implement automatic reward collection
* Address review comments
2019-06-13 22:30:51 -07: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
Sagar Dhawan
b1ac8f933b
Fix storage program space issues and limit storage transaction data ( #4677 )
2019-06-13 17:53:54 -07:00
Jack May
bc44516eb4
Add test to exercise more args then registers ( #4661 )
2019-06-12 13:04:53 -07:00
Jack May
b78a13d42c
Nits ( #4662 )
2019-06-12 13:04:24 -07:00
Jack May
0dcdc37fec
Split BPF loader to match the rest of the programs ( #4636 )
2019-06-12 08:49:59 -07:00
Sagar Dhawan
8019bff391
Fixes for storage program and rework storage stage ( #4654 )
...
automerge
2019-06-11 18:27:47 -07:00
Jack May
439e7cc26a
Add dependent crate test ( #4647 )
...
automerge
2019-06-11 11:45:12 -07:00
dependabot-preview[bot]
1d957b6b80
Bump byteorder from 1.3.1 to 1.3.2 ( #4641 )
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.1...1.3.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-11 11:21:26 -07:00
Rob Walker
e56430c9fb
make runtime depend on bpf_loader ( #4601 )
...
* make runtime depend on bpf_loader
* remove vote redundancy, move bpf_loader to genesis, export program\! from bpf_loader crate
* move bpf_loader specification into genesis
* bpf tests to use genesis with bpf
* need to avoid depending on programs, except for macros
2019-06-11 10:27:22 -07:00
Rob Walker
d1d53c3fb6
calculate stake from activated amount ( #4630 )
2019-06-10 16:17:29 -07:00
Rob Walker
a18c0e34f4
add activate_stake to stake_api ( #4600 )
2019-06-10 12:17:29 -07:00
Jack May
be3a0b6b10
Build/clean all ( #4626 )
...
automerge
2019-06-10 11:15:28 -07:00
Jack May
9f6496d38a
Panic filename ( #4625 )
...
automerge
2019-06-10 11:00:15 -07:00
Jack May
1fa31c9410
.iter fixed, drop enumerate where not needed ( #4624 )
...
automerge
2019-06-10 10:19:58 -07:00
Jack May
66c41b3e8c
Enable iter test ( #4542 )
...
automerge
2019-06-07 16:44:14 -07:00
Jack May
9a4c449135
Builtins ( #4594 )
...
automerge
2019-06-07 14:38:49 -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
Sagar Dhawan
688f8a669a
Add a storage accounts cache to Bank ( #4578 )
2019-06-06 17:40:01 -07:00
dependabot-preview[bot]
e9cb4a12dc
Bump serde_derive from 1.0.91 to 1.0.92 ( #4505 )
...
automerge
2019-06-04 15:48:23 -07:00
Sagar Dhawan
de5cad9211
Add account owner to Storage Accounts ( #4537 )
...
* Add account owner to Storage Accounts
* Fix tests
2019-06-04 14:52:52 -07:00
dependabot-preview[bot]
ce2ce76958
Bump serde from 1.0.91 to 1.0.92 ( #4504 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.91 to 1.0.92.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.91...v1.0.92 )
2019-06-04 14:32:09 -07:00
dependabot-preview[bot]
d77c98530f
Bump libc from 0.2.55 to 0.2.58 ( #4514 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.55 to 0.2.58.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.55...0.2.58 )
2019-06-04 14:31:06 -07:00
Sagar Dhawan
167e15a5ae
Update replicator sampling and proof generation ( #4522 )
...
* Update replicator sampling and proof generation
* Clippy
2019-06-03 17:27:28 -07:00
Rob Walker
c56052ff16
remove from_account from stake_instruction ( #4502 )
2019-06-03 09:04:51 -07:00
Michael Vines
ec5cca41bc
Separate bootstrap leader's stake lamports from its identity lamports ( #4510 )
...
* Revert "Prevent run.sh from running beyond the first epoch under normal use (#4498 )"
This reverts commit d343c409e6
.
* Separate bootstrap leader's stake lamports from its identity lamports
2019-05-31 19:58:52 -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
Rob Walker
028e111fbc
remove payer from vote instructions ( #4475 )
2019-05-31 11:45:17 -07:00
Michael Vines
4537f54532
Break noop_program -> runtime dependency ( #4481 )
2019-05-30 11:20:49 -07:00
Michael Vines
39b40dfff8
Remove runtime dependency on storage ( #4480 )
2019-05-30 10:54:28 -07:00
Michael Vines
7a021dff05
Beautify Cargo.tomls with |cargo tomlfmt| ( #4477 )
2019-05-29 18:30:49 -07:00
Pankaj Garg
c8a03c7b3d
Save RNG for generating random storage sampling offsets ( #4450 )
...
* Save RNG for generating random storage sampling offsets
* fix clippy
* fix stable-perf
* fix chacha
2019-05-28 14:14:46 -07:00
Rob Walker
ff31ffbd54
add more information to dropped vote warning ( #4449 )
...
* add more information to dropped vote warning
* fixup
2019-05-28 12:25:34 -07:00
Michael Vines
ed6a438c51
v0.16.0
2019-05-26 19:42:15 -07:00
Jack May
bfa1c025fd
Add rust bpf allocator ( #4426 )
2019-05-24 16:21:42 -07:00
Sagar Dhawan
4c9b7c9d2b
Submit all incoming proofs as valid ( #4377 )
2019-05-24 14:49:10 -07:00
Michael Vines
9784bbf154
Pay for storage transactions with a system account ( #4423 )
...
automerge
2019-05-24 11:04:05 -07:00
Michael Vines
cfe5afd34c
_id => _pubkey variable renaming ( #4419 )
...
* wallet: rename *_account_id to *_account_pubkey
* s/from_id/from_pubkey/g
* s/node_id/node_pubkey/g
* s/stake_id/stake_pubkey/g
* s/voter_id/voter_pubkey/g
* s/vote_id/vote_pubkey/g
* s/delegate_id/delegate_pubkey/g
* s/account_id/account_pubkey/g
* s/to_id/to_pubkey/g
* s/my_id/my_pubkey/g
* cargo fmt
* s/staker_id/staker_pubkey/g
* s/mining_pool_id/mining_pool_pubkey/g
* s/leader_id/leader_pubkey/g
* cargo fmt
* s/funding_id/funding_pubkey/g
2019-05-23 23:20:04 -07:00
Tyera Eulberg
943cd0a24a
Add credit-only info to AccountMetadata ( #4405 )
...
* Add credit-only flag to AccountMeta, default to false
* Sort keys by is_credit_only within signed/unsigned groupings
* Process and de-dupe program keys along with other account keys
* Add message helper functions
* Fix test
* Improve comment
* s/is_credit_only/is_debitable
* Add InstructionKeys helper struct, and simplify program_position method
2019-05-23 18:19:53 -04:00
Michael Vines
b37d2fde3d
Add storage mining pool ( #4364 )
...
* Add storage mining pool
* Set gossip port
* Add create-storage-mining-pool-account wallet command
* Add claim-storage-reward wallet command
* Create storage account upfront
* Add storage program to genesis
* Use STORAGE_ACCOUNT_SPACE
* Fix tests
* Add wallet commands to create validator/replicator storage accounts
* Add create_validator_storage_account()
* Storage stage no longer implicitly creates a storage account
2019-05-23 14:50:23 -07:00
Rob Walker
7ada8510c4
add slot_hashes to bank, remove phony slot_hashes_from_vote_instruction ( #4401 )
2019-05-22 19:07:56 -07: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
578c2ad3ea
add bank hash to votes ( #4381 )
2019-05-21 21:45:38 -07:00
Rob Walker
58295b825d
introduce syscalls ( #4373 )
2019-05-21 15:19:41 -07:00
Jack May
2f7561e4ee
Split SDK's BPF Rust-utils ( #4369 )
2019-05-21 13:39:27 -07:00
Jack May
28f948aa7f
Multi rust projects ( #4362 )
2019-05-21 11:22:33 -07:00
Sagar Dhawan
c9ba9e4eb7
Add storage space constant ( #4366 )
...
automerge
2019-05-21 11:07:13 -07:00
Michael Vines
6374e69a69
Add mining pool wallet commands ( #4360 )
...
automerge
2019-05-21 07:32:38 -07:00
Rob Walker
ead15d294e
add get_epoch_vote_accounts rpc ( #4317 )
...
* add get_epoch_vote_accounts rpc
* fixups
* documentation and type updates
2019-05-20 22:21:13 -07:00
Rob Walker
86e03a6d1b
support issuing vote instructions from system account ( #4338 )
...
* issue vote instructions from system account
* fixup
* bring back KeypairUtil
2019-05-20 13:32:32 -07:00
Michael Vines
7e1a7862db
test_process_store_ok() now pays with a system account ( #4339 )
...
automerge
2019-05-17 20:17:50 -07:00
Pankaj Garg
9476fe5ce3
Use log levels for datapoint metrics ( #4335 )
...
* Use log levels for datapoint metrics
* address review comments
* fix cyclomatic complexity
2019-05-17 17:34:05 -07:00
Sagar Dhawan
788290ad82
Rework Storage Program to accept multiple proofs per segment ( #4319 )
...
automerge
2019-05-17 14:52:54 -07:00
dependabot[bot]
6b5bcfaa58
Bump libc from 0.2.54 to 0.2.55 ( #4324 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.54 to 0.2.55.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.54...0.2.55 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-17 13:24:12 -07:00
Jack May
bc74ee7117
Common Rust-BPF utilities and types ( #4325 )
2019-05-17 11:04:29 -07:00
Jack May
9271ba0039
Cleanup Rust BPF program building ( #4318 )
2019-05-16 17:35:42 -07:00
Rob Walker
87414de3e2
switch over to passive stakes ( #4295 )
...
* add failing test
* switch over to passive stakes
* test multiple stakers
2019-05-16 08:23:31 -07:00
dependabot[bot]
d40b66ff7b
Bump solana_rbpf from 0.1.10 to 0.1.11 ( #4304 )
...
Bumps [solana_rbpf](https://github.com/solana-labs/rbpf ) from 0.1.10 to 0.1.11.
- [Release notes](https://github.com/solana-labs/rbpf/releases )
- [Commits](https://github.com/solana-labs/rbpf/commits/v0.1.11 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 01:07:10 -07:00
Sagar Dhawan
4576250342
Fix bug in storage processor and remove duplicate Constant ( #4294 )
...
* Fix bug in storage processor and remove duplicate Constant
* Add test
* Bump replicator timeout
2019-05-15 13:28:56 -07:00
dependabot[bot]
1d327a5167
Bump bincode from 1.1.3 to 1.1.4 ( #4290 )
...
Bumps [bincode](https://github.com/TyOverby/bincode ) from 1.1.3 to 1.1.4.
- [Release notes](https://github.com/TyOverby/bincode/releases )
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.3...v1.1.4 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-15 09:47:55 -06:00
Rob Walker
e8ad822111
get program names from programs ( #4273 )
...
* get program names from programs
* fixup
2019-05-14 10:44:16 -07:00
Rob Walker
0d2574f8f0
get DLL names from programs that made the DLL ( #4269 )
...
* get program names from programs
* fixup
2019-05-13 14:17:44 -07:00
Michael Vines
8542006259
Config instructions now only require one key ( #4258 )
2019-05-12 22:47:12 -07:00
Jack May
f567877d1d
Cleanup metrics ( #4230 )
2019-05-10 08:33:58 -07:00
Rob Walker
a80176496d
add /target/ to .gitignore files for all crates ( #4217 )
...
* add /target/ to .gitignore files for all crates
* shellcheck
2019-05-08 12:15:05 -07:00
Rob Walker
b49f8c0984
reduce replicode, introduce passive staking support ( #4207 )
2019-05-07 22:22:43 -07:00
dependabot[bot]
674a49f8d7
Bump serde_derive from 1.0.90 to 1.0.91 ( #4172 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.90 to 1.0.91.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.90...v1.0.91 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-07 20:05:41 -07:00
Rob Walker
401764ddb1
add create_delegate_stake_account ( #4197 )
2019-05-07 17:08:49 -07:00
Rob Walker
8e400fc4bd
rework genesis (passive staking groundwork) ( #4187 )
...
* rework genesis
* fixup
2019-05-07 11:16:22 -07:00
dependabot[bot]
673a9417ef
Bump serde from 1.0.90 to 1.0.91 ( #4171 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.90 to 1.0.91.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.90...v1.0.91 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-06 21:41:30 -07:00
Rob Walker
694d28acf8
remove some boilerplate ( #4143 )
2019-05-06 10:11:18 -07:00
Sagar Dhawan
a7b695c27a
Change replicators to slot-based ( #4118 )
2019-05-03 16:27:53 -07:00
dependabot[bot]
92ed7b36a2
Bump libc from 0.2.53 to 0.2.54 ( #4124 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.53 to 0.2.54.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.53...0.2.54 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-02 13:11:29 -06:00
Rob Walker
675a78aaa1
get vote_instruction off bank for tests ( #4086 )
...
* get vote_instruction off bank for tests
* clippy
2019-04-30 15:11:08 -07:00
Jack May
5524146ddf
push down noop's messages ( #4069 )
...
automerge
2019-04-29 14:10:36 -07:00
dependabot[bot]
4b599a95b3
Bump libc from 0.2.51 to 0.2.53 ( #4009 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.51 to 0.2.53.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.51...0.2.53 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-27 14:04:23 -06:00
Michael Vines
656e2649a7
v0.15.0
2019-04-27 07:38:46 -07:00
Jack May
3cf708f019
nit: remove copyposta ( #4024 )
2019-04-26 16:02:13 -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
sakridge
fd60ef8a8d
Allow metrics rate to differ from log rate ( #3993 )
...
And reduce metrics rate for exchange contract counters.
Since we can go 10s-100s thousands of contracts per second,
some metrics would be dropped if submitting every time.
2019-04-25 16:58:49 -07:00
Tyera Eulberg
5a79676b8a
Custom error decoder ( #3783 )
...
automerge
2019-04-25 10:29:44 -07:00
Greg Fitzgerald
29698fcd38
Cleanup stragglers from move-to-transfer rename ( #3947 )
2019-04-23 13:30:42 -06:00
Jack May
840a64ee8b
Optimize exchange contract ( #3926 )
2019-04-23 11:39:53 -07:00
sakridge
95a16426f3
Cleanup bench-exchange ( #3919 )
...
* bench-exchange changes
Generate new keypair for each bench-exchange
Add metrics
Tweak network sleep parameters for better reliability.
* Bench-exchange contract metrics
2019-04-22 13:16:28 -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
Dan Albert
8638b3bb19
Update Cargo.toml files for version = 0.14.0
2019-04-16 02:50:20 +00:00
Sagar Dhawan
877ec08280
Send recent votes in Vote Transactions ( #3734 )
2019-04-11 14:48:36 -07: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
Michael Vines
0aa05158c9
Adjust noop/failure program names to be consistent with all other programs
2019-04-11 11:59:56 -07:00
Jack May
d0f46d6a8a
Cleanup client traits and create super trait ( #3728 )
2019-04-11 00:25:14 -07:00
Rob Walker
f1e7237c09
vote_api cleanup ( #3710 )
...
* vote_api cleanup
* fixups
* fixup
* remove unused code
* revert removal of serialize and deserialize
* ...
* increase coverage, bootstrap staking
* Sagar's STAKE to my VOTE
2019-04-10 17:52:47 -07:00
dependabot[bot]
7295a84d69
Bump bincode from 1.1.2 to 1.1.3 ( #3672 )
...
Bumps [bincode](https://github.com/TyOverby/bincode ) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/TyOverby/bincode/releases )
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.2...v1.1.3 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-08 12:55:18 -07:00
Rob Walker
79bf3cf70d
add rewards math ( #3673 )
...
* add rewards math
* fixup
2019-04-07 21:45:28 -07:00
Carl
f3eda38b65
Fix broken lockout doubling
2019-04-05 23:15:46 -07:00
Greg Fitzgerald
46e6911ec1
Add get_signature_status() to SyncClient
...
And move bank::Result to transaction module.
2019-04-05 10:22:05 -07:00
Greg Fitzgerald
4507dca342
Boot exchange_transaction. No tests depend on it.
2019-04-05 11:10:57 -06:00
Sagar Dhawan
0b23af324b
Refactor Storage Program ( #3622 )
...
* Refactor Storage Program
* Replace KeyedAccount trait with StorageAccount struct
* Implement State for Account, not StorageAccount
* Make State trait more generic
* Move validation check into function
2019-04-04 12:01:09 -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
dependabot[bot]
f97f0c4758
Bump serde_derive from 1.0.89 to 1.0.90
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.89 to 1.0.90.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.89...v1.0.90 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-03 19:54:50 -07:00
dependabot[bot]
e6ac5bc546
Bump serde from 1.0.89 to 1.0.90
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.89 to 1.0.90.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.89...v1.0.90 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-03 20:26:48 -06:00
Sagar Dhawan
5cdfd79e96
Replace print with debug
2019-04-03 16:23:02 -07:00
Sagar Dhawan
b441bac7b2
Add separate Struct for Replicator submissions
2019-04-03 16:23:02 -07:00
Sagar Dhawan
00cb52c444
Update Storage Program to support multiple accounts
2019-04-03 16:23:02 -07:00
Jack May
9323a3e257
Use keyed_account index names ( #3555 )
2019-04-03 15:57:26 -07:00
Greg Fitzgerald
35298e01a8
Remove Instruction wrapper structs and name functions after enum fields
2019-04-03 13:34:27 -07:00
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
dependabot[bot]
7b82e96467
Bump libc from 0.2.50 to 0.2.51 ( #3554 )
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.50 to 0.2.51.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.50...0.2.51 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-02 20:32:35 -05:00
Jack May
025b4f90de
Pre-populate tokens ( #3605 )
2019-04-02 16:50:53 -07:00
Rob Walker
25a2f08f8d
add passive staking and rewards ( #3579 )
...
* add stake stuff
* more generic
* test decode bail cases
* favor early returns
2019-04-01 16:45:53 -07: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
31f8b6d352
Integrate Message into Transaction
2019-03-29 13:03:29 -07:00
Jack May
c30eb6185c
Enable logging in exchange program ( #3538 )
2019-03-27 23:02:05 -07:00
Greg Fitzgerald
47b6707c07
Don't use a loader to test Storage instruction processor
2019-03-27 11:02:41 -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
cecdb7061e
Remove blockhash parameter from Bank::transfer
...
That parameter is an artifact from the Loom days, when I thought
Bank should implement the same interace as ThinClient.
2019-03-27 08:51:10 -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
Rob Walker
d497b99abb
use solana_entrypoint directly ( #3518 )
2019-03-26 16:40:34 -07:00
Greg Fitzgerald
b61aed7250
Minor cleanup
2019-03-25 20:31:13 -07:00
Greg Fitzgerald
4bc3f70150
Boot VoteTransaction
2019-03-25 17:11:57 -07:00
Greg Fitzgerald
caff603497
Less code
2019-03-24 21:44:04 -07:00
Greg Fitzgerald
aefa9891c0
Delete unused code
2019-03-24 21:44:04 -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
c49e84c75b
Boot StorageTransaction
2019-03-24 13:51:02 -07:00
Greg Fitzgerald
dcf2337e58
Add StorageInstruction constructors
2019-03-24 13:51:02 -07:00
Greg Fitzgerald
5a65c3f72e
Test-drive StorageContract
2019-03-24 13:51:02 -07:00
Greg Fitzgerald
8ff1987d2d
Reorg Storage program to look more like the others
2019-03-24 13:51:02 -07: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
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
d0761f57e8
Add _program suffix to directories of crates with _program suffix
2019-03-21 16:24:06 -06:00
Greg Fitzgerald
4bb88619fd
Move entrypoint boilerplate into a macro
2019-03-21 15:27:49 -06:00
Greg Fitzgerald
2b00a42b06
Boot Rewards program
2019-03-21 12:07:20 -06:00
Greg Fitzgerald
d2415613de
Migrate loader tests to BankClient
2019-03-21 09:19:24 -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
Michael Vines
d0292b1cf1
store transaction no longer takes the transaction fee from the config account
2019-03-18 18:34:08 -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
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
Michael Vines
5f58e9cd6e
Config program - useful for storing/updating simple config items on chain
2019-03-15 16:39:45 -07: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
8306c1841c
Fix build
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
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
4ca4038d54
Rename BankError to TransactionError
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
Sagar Dhawan
c1e726da87
Remove comment
2019-03-12 15:32:41 -07:00
Sagar Dhawan
7d7528eb18
Fix test_bank_storage
2019-03-12 15:32:41 -07:00
Michael Vines
1ee43a7633
Remove non-essential programs from runtime/
2019-03-12 15:11:59 -05:00
Michael Vines
3d2b7dd1ef
Move programs/system into runtime/
2019-03-12 11:30:58 -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
1a9ef37251
Update programs using simple error mapping to use CustomError
2019-03-11 16:58:43 -06:00
Rob Walker
195a880576
pass Pubkeys as refs, copy only where values needed ( #3213 )
...
* pass Pubkeys as refs, copy only where values needed
* Pubkey is pervasive
* fixup
2019-03-09 19:28:43 -08:00
Rob Walker
0acdbc0d03
plumb staking_account and voting_keypair from multinode-demo to Vote ( #3199 )
...
* plumb staking_account and voting_keypair from bash to Vote
2019-03-08 19:29:08 -07:00
Greg Fitzgerald
7a4ccc8719
Fix Budget's payment_with_fee test
...
Fee is now independent of the contract.
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
3dc22e7323
Simulate auto-creation of system accounts
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
17dcd1f62a
Resurrect the tests
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
a277f3e816
Migrate to TransactionBuilder
...
This code wasn't updated after we started batching instructions.
The current code does allocations instead of using CreateAccount.
The runtime shouldn't allow that, so getting this code out of the
way before we lock down the runtime.
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
10b16753af
Remove 'new' constructor
2019-03-07 19:18:53 -07:00
Greg Fitzgerald
4d58bf4b28
Don't use solana_entrypoint in static libraries
2019-03-07 12:42:13 -07:00
Greg Fitzgerald
505f77b108
Move a more generic process_transaction to runtime.rs
2019-03-07 12:42:13 -07:00
Greg Fitzgerald
5b672f8921
Generalize Budget tests to work on multi-ix txs
2019-03-07 12:42:13 -07:00
Greg Fitzgerald
97f2c96a7e
Add a transaction and instruction
2019-03-06 15:04:15 -07:00
Greg Fitzgerald
5979627258
Add authorized voter
2019-03-06 15:04:15 -07:00
Michael Vines
9491999a95
Remove remaining erc20 references
2019-03-05 17:56:44 -08:00
Michael Vines
e2d30db7e1
Rename tokens to lamports
2019-03-05 17:56:44 -08:00
Michael Vines
3129e299e4
Rename tokens to lamports in programs/
2019-03-05 17:56:44 -08:00
Michael Vines
53f09c44f3
Rename tokens to lamports in sdk/
2019-03-05 17:28:06 -08:00
Greg Fitzgerald
ca99ebaaf4
Add way to create account with delegate in 1 tx
2019-03-05 16:14:57 -07:00
Rob Walker
b9e878ee80
slot_height considered harmful ( #3135 )
...
* slot_height considered harmful
* fix test_tick_slot_epoch_indexes
2019-03-05 14:18:29 -08:00
Tyera Eulberg
33c4c7e511
Split up long test
2019-03-05 15:16:51 -07:00
Tyera Eulberg
b67ac22336
Replace superfluous integration tests with needed one
2019-03-05 15:16:51 -07:00
Tyera Eulberg
6ff2572ebe
Refactor system entrypoint to use helper fns; add unit tests
2019-03-05 15:16:51 -07:00
Greg Fitzgerald
52fc974cdf
The funder is not a staker
2019-03-05 12:46:18 -07:00
Tyera Eulberg
f506b0a224
Fix test: Prevent SystemInstruction CreateAccount from overwriting accounts in use
2019-03-05 09:33:27 -07:00
Tyera Eulberg
202adb1bf1
Create failing test
2019-03-05 09:33:27 -07:00
Greg Fitzgerald
885eeec3ed
Boot storage program from the SDK
2019-03-05 07:16:33 -07:00
Greg Fitzgerald
5e9f802d7d
Boot token_program from the SDK
2019-03-05 07:16:33 -07:00
dependabot[bot]
e4be57c3b6
Bump libc from 0.2.49 to 0.2.50
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.49 to 0.2.50.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.49...0.2.50 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-05 07:14:51 -07:00
Sagar Dhawan
dc42c12f2b
Revert to more consistent naming ( #3114 )
2019-03-04 17:50:19 -08:00
Michael Vines
03d6c9a552
Defeature bpf_loader; bpf_{c,rust} features now confined to programs/bpf
2019-03-04 11:02:37 -08:00
Michael Vines
d0be16b49a
Remove duplicated code
2019-03-04 11:02:37 -08:00
Greg Fitzgerald
2ec9bc9f05
Revive payments via Budget
2019-03-03 17:29:13 -07:00
Greg Fitzgerald
e8ae603a01
Add failing test for a Budget payment
2019-03-03 17:29:13 -07:00
Greg Fitzgerald
8ec10d4de9
Simplify Budget's serialize
2019-03-03 14:24:53 -08:00
Greg Fitzgerald
baca3e6b6b
Cleanup Budget
...
* BudgetProgram -> BudgetState
* Instruction -> BudgetInstruction
* Move BudgetState into its own module
* BudgetInstruction::NewBudget -> BudgetInstruction::InitializeAccount
* BudgetInstruction::new_budget -> BudgetInstruction::new_initialize_account
2019-03-03 14:49:35 -07:00
Greg Fitzgerald
fc5fcd6cd4
Move native_loader into solana_runtime
2019-03-03 10:59:08 -07:00
Michael Vines
33496ffea2
Adjust paths
2019-03-02 22:11:48 -08:00
Michael Vines
b8b7de5522
Script can now be run from any directory
2019-03-02 22:11:48 -08:00
Michael Vines
109101c2dc
Cleanup features and fix build errors
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
44322124c8
Update paths
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
41b5899856
Move programs/Cargo.toml into bpf/
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
b830449f23
Move top-level native program tests to their respective crates
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
037fcf6b3d
Bump all native programs up a level
...
Don't categorize programs by a single backend.
2019-03-02 22:11:48 -08:00
Greg Fitzgerald
3f4ff3f7b5
Delete duplicate file
2019-03-02 18:57:11 -07:00
Greg Fitzgerald
9c3e7e40cf
Less pub
2019-03-02 17:36:51 -08:00
Greg Fitzgerald
1edf6c361e
Move Vote program out of the SDK
2019-03-02 16:44:36 -08:00
Greg Fitzgerald
e6486b2824
Move Budget out of the SDK
2019-03-02 16:44:36 -08:00
Michael Vines
a94880574b
block_hash => blockhash
2019-03-02 12:13:30 -07:00
Michael Vines
0f1582c196
cargo fmt
2019-03-02 12:13:30 -07:00
Michael Vines
258cf21416
Purge remaining last_id (now called block_hash)
2019-03-02 12:13:30 -07:00
Michael Vines
2bfad87a5f
Rename Bank.last_id() to Bank.last_block_hash()
2019-03-02 12:13:30 -07:00
Michael Vines
81cd461591
Rename storage_last_id to storage_block_hash
2019-03-02 12:13:30 -07:00
Michael Vines
ea110efabd
Rename AdvertiseStorageLastId to AdvertiseStorageRecentBlockHash
2019-03-02 12:13:30 -07:00
Michael Vines
176d5e0d37
Rename Transaction last_id field to recent_block_hash
2019-03-02 12:13:30 -07:00
Michael Vines
5f5d779ee1
Move src/ into core/src. Top-level crate is now called solana-workspace
2019-03-02 09:52:18 -08:00
Greg Fitzgerald
7b849b042c
Split rewards_program.rs
2019-03-02 10:11:37 -07:00
Michael Vines
fcbcf000c4
Use a valid last_id
2019-03-02 08:47:31 -08:00
Greg Fitzgerald
986c54de58
Comment out test that's not actually testing anything
...
@sakridge, fyi
2019-03-02 07:50:32 -07:00
Greg Fitzgerald
49b7e67585
Return program error from process_transaction()
...
Our unit-test helper `process_transaction()` wasn't returning
program errors, which made testing programs tedious and
counter-intuitive.
2019-03-02 07:50:32 -07:00
Greg Fitzgerald
db825b6e26
Fix vote program bugs
...
Also:
* Add an assertion to the transaction builder if not enough
keypairs were provided for all keys that require signatures.
* Expose bugs in the runtime.
2019-03-02 07:50:32 -07:00
dependabot[bot]
269a82f796
Bump serde_derive from 1.0.88 to 1.0.89
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.88 to 1.0.89.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.88...v1.0.89 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-01 20:15:49 -07:00
dependabot[bot]
771a88665c
Bump serde from 1.0.88 to 1.0.89
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.88 to 1.0.89.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.88...v1.0.89 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-01 15:51:11 -07:00
Greg Fitzgerald
c53c351759
Rename erc20 to token-program
...
Everything it uses already had that name, just the crate was never
renamed.
2019-03-01 10:47:38 -07:00
Jack May
b9524217fe
Update rust example to use BPF enabled infrastructure ( #2974 )
2019-02-28 22:05:11 -08:00
Sagar Dhawan
20e4edec61
Refactor Vote Program Account setup ( #2992 )
2019-02-28 17:08:45 -08:00
Greg Fitzgerald
485ccd20e4
Use TransactionBuilder in the Rewards transaction
2019-02-28 10:53:26 -08:00
Michael Vines
0dc5af62ff
Standardize on 'use log::*' for easy access to all log level macros
2019-02-27 21:16:23 -08:00
carllin
033a04129a
Add lockouts to vote program ( #2944 )
...
* Add lockouts to vote program
* Rename MAX_VOTE_HISTORY TO MAX_LOCKOUT_HISTORY, change process_vote() to only pop votes after MAX_LOCKOUT_HISTORY + 1 votes have arrived
* Correctly calculate serialized size of an Option, rename root_block to root_slot
2019-02-26 22:19:31 -07:00
Jack May
0174945853
Program tests now check signature status ( #2965 )
2019-02-26 17:09:57 -08:00
Jack May
78841532f7
Add Rust helpers ( #2959 )
2019-02-26 15:17:38 -08:00
Jack May
ba5077701d
Avoid possible simplified lowering of passed struct ( #2938 )
2019-02-25 17:05:59 -08:00
Jack May
2be7896157
Pull in latest rBPF that includes Rust dependent changes ( #2929 )
2019-02-25 12:42:48 -08:00
Jack May
35aefdf1db
Reduce test noise ( #2907 )
2019-02-22 16:27:19 -08:00
Stephen Akridge
66891d9d4e
Don't use global storage account
...
Other accounts would not be able to modify the system accounts userdata.
2019-02-22 15:59:55 -08:00
dependabot[bot]
6bca577d6d
Bump libc from 0.2.48 to 0.2.49
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.48 to 0.2.49.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/commits )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-22 16:45:14 -07:00
Greg Fitzgerald
f5400ccefc
Ignore storage test
...
@sakridge is working on a fix.
2019-02-22 16:18:10 -07:00
Greg Fitzgerald
a56d717ea8
Add a check that shows why the storage program is failing
2019-02-22 16:18:10 -07:00
Jack May
b69475937f
Program tests depend on native/noop ( #2873 )
2019-02-21 12:22:55 -08:00
Greg Fitzgerald
dda0a1f39b
Move storage tests out of Bank
2019-02-19 17:26:33 -07:00
Greg Fitzgerald
b9bb92099e
Go object-oriented
...
Easy to imagine a trait here that's implemented using a Bank or
a testnet.
2019-02-19 10:59:06 -07:00
Greg Fitzgerald
64dcc31ac7
Migrate Rewards test from runtime to Bank
2019-02-19 10:59:06 -07:00
Greg Fitzgerald
dde886f058
Move Bank to its own crate
...
Also:
* counters.rs to solana_metrics
* genesis_block.rs to solana_sdk
2019-02-19 07:17:04 -07:00
dependabot[bot]
e42c95a327
Bump bincode from 1.1.1 to 1.1.2
...
Bumps [bincode](https://github.com/TyOverby/bincode ) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/TyOverby/bincode/releases )
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.1...v1.1.2 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 13:58:37 -07:00
dependabot[bot]
38aed0c886
Bump serde_derive from 1.0.87 to 1.0.88
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.87 to 1.0.88.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.87...v1.0.88 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 04:57:32 -08:00
dependabot[bot]
02801b3e75
Bump serde from 1.0.87 to 1.0.88
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.87 to 1.0.88.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.87...v1.0.88 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-16 05:02:10 -07:00
Greg Fitzgerald
132c664e18
No longer modify external userdata
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
288645aeb7
Add rewards integration test
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
55f06f5bad
Make vote_program available to reward_program tests
...
Making `solana_vote_program` is not an option because
then vote_program's entrypoint conflicts with reward_program's
entrypoint.
This unfortunately turns the SDK into a dumping ground for all
things shared between vote_program and other programs. Better
would be to create a solana-vote-api crate similar to the
solana-rewards-api crate.
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
a2cb18bfe9
Only require voting account to be signed
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
d35b3754a2
Reorg
...
Now clients can use all the libraries to create transactions
and disect account data without needing to be constrained about
what can be compiled into a shared object or BPF.
Likewise, program development can move forward without being
concerned with bloating the shared object.
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
7f3aca15dd
Add a library for creating Rewards transactions
...
And move out of the SDK
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
2c5cbaff25
Add unit-test for Rewards program
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
134cd7ab04
Add Rewards program
2019-02-15 18:36:55 -07:00
Greg Fitzgerald
4e4a1643c4
Boot SystemInstruction::Spawn
2019-02-14 13:26:46 -07:00
Greg Fitzgerald
e1e84d4465
Don't reassign owner in Spawn
2019-02-14 13:26:46 -07:00
Greg Fitzgerald
4a0009365e
Use Account::owner as loader for executable accounts
2019-02-14 13:26:46 -07:00
dependabot[bot]
3849b8ece4
Bump bincode from 1.0.1 to 1.1.1 ( #2709 )
...
* Bump bincode from 1.0.1 to 1.1.1
Bumps [bincode](https://github.com/TyOverby/bincode ) from 1.0.1 to 1.1.1.
- [Release notes](https://github.com/TyOverby/bincode/releases )
- [Commits](https://github.com/TyOverby/bincode/commits )
Signed-off-by: dependabot[bot] <support@dependabot.com>
* update autocfg 0.1.1 => 0.1.2
2019-02-14 12:46:22 -06:00
Michael Vines
da5b777ee7
Purge Default::default()
2019-02-09 10:12:32 -08:00
Tyera Eulberg
3c6af52a71
Fix pay-to-self Accounts bug ( #2682 )
...
* Add failing tests
* Fix tests
* Plumb AccountLoadedTwice error
* Fixup budget cancel actions to not depend on duplicate accounts
* Use has_duplicates
* Update budget-based golden
2019-02-07 12:14:10 -07:00
Greg Fitzgerald
731e5e1291
Boot lua loader
...
Good fun, but unnecessary and I haven't been updating the rlua
dependency. If someone wants this, it can be developed outside
the solana repo.
2019-02-07 10:25:11 -07:00
Greg Fitzgerald
d1945c29d7
Don't depend on solana_native_loader for IDs in the SDK
2019-02-07 08:23:44 -08:00
Jack May
5f565c92c9
cargo incremental builds breaks Rust BPF, locally disable it ( #2674 )
2019-02-06 13:59:10 -08:00
Greg Fitzgerald
549f9676f1
Allow validators to accumulate credits for voting
2019-02-05 14:24:49 -07:00
dependabot[bot]
85333c5d62
Bump serde_derive from 1.0.85 to 1.0.87
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.85 to 1.0.87.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.85...v1.0.87 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-04 17:07:01 -07:00
dependabot[bot]
32f19c5c19
Bump serde from 1.0.85 to 1.0.87
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.85 to 1.0.87.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.85...v1.0.87 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-04 09:08:09 -07:00
Greg Fitzgerald
511d8275d6
Document current vote program semantics
...
And add a new 'staker_id' VoteState member variable to offer a path to
work our way out. Update leader scheduler to use staker_id, but
continue setting it to 'from_id' for the moment.
No functional changes here.
2019-02-01 16:03:46 -08:00
Greg Fitzgerald
0a9226ec8e
Use voting helper
2019-02-01 16:03:46 -08:00
Greg Fitzgerald
9c07a8c26a
VoteProgram -> VoteState
2019-02-01 16:03:46 -08:00
Greg Fitzgerald
6058bfb687
Simplify voting helpers
2019-02-01 16:03:46 -08:00
Michael Vines
d62c9ac309
Create program/ crate avoid / crate dependency on bpfloader
...
The bpfloader crate was triggering cargo to perform excessive rebuilds
of in-workspace dependencies. Unclear why exactly, but seems related to
the special dual crate-type employed by bpfloader.
2019-02-01 12:42:46 -08:00
Greg Fitzgerald
dad0bfe447
Replace transaction traits with structs
...
Also:
* SystemTransaction::new -> new_account
* SystemTransaction::new_create -> new_program_account
2019-02-01 11:38:25 -08:00
Michael Vines
bfaf5634a1
.unwrap() in tests instead of assert!()ing .is_ok() for a better failure message
2019-01-28 16:10:32 -08:00
Jack May
9abc500269
Fix BPF C tests and run as part of CI ( #2540 )
2019-01-24 12:15:37 -08:00
dependabot[bot]
a7503050c2
Bump libc from 0.2.47 to 0.2.48
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.47 to 0.2.48.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.47...0.2.48 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-23 18:22:05 -08:00
Jack May
a0bc8b8af3
BPF programs can support up to 5 arguments ( #2528 )
2019-01-23 09:55:08 -08:00
dependabot[bot]
b1109b813e
Bump byteorder from 1.3.0 to 1.3.1
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.0...1.3.1 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-22 09:58:48 -08:00
Greg Fitzgerald
d666ebc558
Add tests for vote_program
2019-01-21 18:05:52 -07:00
dependabot[bot]
b0149a54d8
Bump serde_derive from 1.0.84 to 1.0.85
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.84 to 1.0.85.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.84...v1.0.85 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-21 11:25:42 -07:00
Stephen Akridge
abbb037888
Implement storage contract logic
2019-01-21 08:36:49 -08:00
dependabot[bot]
200d5e62c2
Bump byteorder from 1.2.7 to 1.3.0
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.2.7 to 1.3.0.
- [Release notes](https://github.com/BurntSushi/byteorder/releases )
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.2.7...1.3.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-21 09:07:17 -07:00
dependabot[bot]
b748942d6a
Bump serde from 1.0.84 to 1.0.85
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.84 to 1.0.85.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.84...v1.0.85 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-21 08:25:24 -07:00
Stephen Akridge
1fd7bd7ede
Storage fixes
...
* replicators generate their sample values
* fixes to replicator block height logic
2019-01-18 13:05:35 -08:00
dependabot[bot]
e9116736cd
Bump libc from 0.2.46 to 0.2.47
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.46 to 0.2.47.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.46...0.2.47 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-15 08:56:16 -07:00
Jak May
b2afd1ea0b
Bump rbpf to 0.1.9 ( #2422 )
2019-01-15 00:42:30 -08:00
Jack May
a6773ad442
Specify entrypoint when building rust programs
2019-01-14 20:13:01 -08:00
Jak May
e9a0b3a8f3
Add BPF-to-BPF and PC relative call tests ( #2395 )
2019-01-11 19:33:08 -08:00
Jak May
23c43ed21b
Multi-file BPF C builds ( #2393 )
2019-01-11 15:33:21 -08:00
jackcmay
56b6ed6730
Rerun build if any file in a directory has changed ( #2343 )
2019-01-09 09:56:23 -08:00
Greg Fitzgerald
30b662df39
Remove clones in native programs
2019-01-04 13:38:03 -07:00
dependabot[bot]
c4259fc8cc
Bump libc from 0.2.45 to 0.2.46
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.45 to 0.2.46.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.45...0.2.46 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 09:13:03 -07:00
dependabot[bot]
8c5614daa1
Bump serde_derive from 1.0.82 to 1.0.84
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.82 to 1.0.84.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.82...v1.0.84 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-02 15:54:13 -08:00
dependabot[bot]
eb668c6466
Bump serde from 1.0.82 to 1.0.84
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.82 to 1.0.84.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.82...v1.0.84 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-02 16:42:35 -07:00
jackcmay
a461c5682d
First stab at Rust BPF ( #2269 )
...
First stab at Rust BPF
2019-01-02 15:12:42 -08:00
Michael Vines
58f2598d5d
Revert "Validators make a transaction to advertise their storage last_id"
...
This reverts commit a1759aed19
.
2018-12-23 14:02:09 -08:00
Stephen Akridge
a1759aed19
Validators make a transaction to advertise their storage last_id
...
* Also implement more storage contract logic
* Add transactions for proof validation,
* Move storage state members into system storage account userdata
2018-12-21 15:45:30 -08:00
Michael Vines
0e567381fb
v0.12.0
2018-12-19 17:03:28 -08:00
Michael Vines
fc56e1e517
Correct crate-type to match other native programs
2018-12-17 15:17:13 -08:00
Michael Vines
0f4837980f
Switch noop from println to solana_logger
2018-12-17 14:56:12 -08:00
Michael Vines
fd562cb9e2
Rust 2018 cleanup
2018-12-14 21:57:15 -08:00
Michael Vines
6ac466c0a4
Move src/logger.rs into logger/ crate to unify logging across the workspace
2018-12-14 13:10:43 -08:00
Michael Vines
60f3aeb4ef
clippy fix
2018-12-13 23:40:26 -08:00
Michael Vines
092edabd2d
Add homepage field to all crates
2018-12-13 22:25:27 -08:00
Stephen Akridge
7cdbbfa88e
Storage stage updates
...
* Remove logging init from storage program: saw a crash in a test
indicating the logger being init'ed twice.
* Add entry_height mining proof to indicate which segment the result is
for
* Add an interface to get storage miner pubkeys for a given entry_height
* Add an interface to get the current storage mining entry_height
* Set the tvu socket to 0.0.0.0:0 in replicator to stop getting entries
after the desired ledger segment is downloaded.
* Use signature of PoH height to determine which block to download for
replicator.
2018-12-13 11:30:12 -08:00
Michael Vines
59a094cb77
Ensure bpf_c files exist to avoid accidental rebuilds as the tree changes
2018-12-12 17:30:41 -08:00
jackcmay
cefbb7c27d
Fix shared object relcations with multiple static arrays ( #2121 )
2018-12-12 08:41:45 -08:00
Pankaj Garg
9243bc58db
Metrics for window repair ( #2106 )
...
* Metrics for window repair
- Also increase max repair length
* fix vote counters, and add repair window graph
* update per node graphs
* revert max repair length change
2018-12-11 15:43:41 -08:00
jackcmay
935524f20c
Fix eh frame relocation ( #2109 )
...
* Exclude .eh_frame
2018-12-11 12:14:41 -08:00
jackcmay
5847961fec
Fix BPF loader messages ( #2098 )
2018-12-11 11:20:26 -08:00
dependabot[bot]
40d7f5eff8
Bump libc from 0.2.44 to 0.2.45
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.44 to 0.2.45.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.44...0.2.45 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-11 11:52:27 -07:00
jackcmay
e3dfd7b1ab
Allow BPF structure passing and returning ( #2100 )
...
* Add BPF struct passing and returning tests
2018-12-11 09:03:37 -08:00
dependabot[bot]
166945a461
Bump serde from 1.0.81 to 1.0.82
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.81 to 1.0.82.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.81...v1.0.82 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-11 08:53:20 -08:00
dependabot[bot]
46866be21d
Bump serde_derive from 1.0.81 to 1.0.82
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.81 to 1.0.82.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.81...v1.0.82 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-11 09:21:11 -07:00
Michael Vines
d7032aeb43
Add vote instruction debug log
2018-12-10 13:24:14 -08:00
Jack May
337c2bfd29
Fix spelling
2018-12-10 09:31:17 -08:00
dependabot[bot]
67f8916aa8
Bump serde from 1.0.80 to 1.0.81
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.80 to 1.0.81.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.80...v1.0.81 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-10 08:38:52 -08:00
dependabot[bot]
1e755f261f
Bump serde_derive from 1.0.80 to 1.0.81
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.80 to 1.0.81.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.80...v1.0.81 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-10 08:56:45 -07:00
Michael Vines
f5569e76db
Relocate native programs to deps/ subdirectory of the current executable
...
This layout is `cargo build` compatible, no post-build file moves
required.
2018-12-08 16:31:01 -08:00
Michael Vines
73b9ee9e84
Add solana_ prefix to native_loader program
...
This allows its logging to show up in the default RUST_LOG=solana=info
log setting
2018-12-08 11:04:45 -08:00
Greg Fitzgerald
0a83b17cdd
Upgrade to Rust 1.31.0 ( #2052 )
...
* Upgrade to Rust 1.31.0
* Upgrade nightly
* Fix all clippy warnings
* Revert relaxed version check and update
2018-12-07 20:01:28 -07:00
Michael Vines
632425c7d7
Move native_loader under programs/native/
2018-12-05 14:32:42 -08:00
Michael Vines
59e6bd115e
system_program must be a static lib as it allocates Account memory
2018-12-05 10:49:06 -08:00
Michael Vines
6e9b8e21ae
Drop new-style Result return to avoid error-type wrangling
...
Plus a backtrace at the point of failure is always nice
2018-12-05 10:49:06 -08:00
Michael Vines
affa76f81d
Initialize logger
2018-12-05 10:49:06 -08:00
Michael Vines
9ee858a00c
Move budget_program out of src/
2018-12-05 10:49:06 -08:00
Michael Vines
27d456bf93
Move storage_program out of src/
2018-12-05 10:49:06 -08:00
Michael Vines
ea6e042a6f
Move vote_program out of src/
2018-12-05 10:49:06 -08:00
Michael Vines
9a4f8199d6
Move system_program out of src/
2018-12-05 10:49:06 -08:00
Michael Vines
ae0be1e857
Remove bpf_loader.rs
2018-12-05 10:49:06 -08:00
Michael Vines
d010cac8a5
Remove token_program.rs
2018-12-05 10:49:06 -08:00
jackcmay
0cb5ae41c6
Enable BPF shared objects ( #2012 )
...
* Switch to BPF ELF shared objects (.so)
2018-12-04 22:03:32 -08:00
Michael Vines
e52f3f34a4
Autoinstall dependencies in the SDK itself
2018-12-01 10:47:59 -08:00
Michael Vines
7c3e6e8e86
Move bpf-sdk to sdk/bpf
2018-12-01 10:47:59 -08:00
jackcmay
b00011a3f1
Use custom LLVM ( #1971 )
...
BPF SDK uses custom LLVM
2018-11-30 14:33:29 -08:00
Michael Vines
bad0b55ab6
Expose which keys signed the Transaction in the SDK
2018-11-30 08:16:23 -08:00
jackcmay
0c091c1b24
Dockerized LLVM ( #1914 )
...
Optionally build with dockererized custom llvm
2018-11-28 14:41:53 -08:00
Michael Vines
83c0711760
Rename SolKeyedAccounts to SolKeyedAccount
2018-11-27 15:36:04 -08:00
Michael Vines
ec0a56cb9c
Tokens are unsigned
2018-11-27 10:14:37 -08:00
Michael Vines
f0d24a68ee
Configure -rpath to locate libcriterion
2018-11-26 21:16:42 -08:00
Michael Vines
c7f678688d
Stub out log functions when building tests
2018-11-26 15:41:49 -08:00
Michael Vines
7bf4c08f70
Add BPF C unittest framework
2018-11-26 12:25:29 -08:00
Michael Vines
826ac80e62
Avoid subverting bool return value
2018-11-26 09:11:40 -08:00
Michael Vines
4506584c48
Employ stdbool.h, add stub wchar.h
2018-11-26 09:11:40 -08:00
dependabot[bot]
ca39486d06
Bump libc from 0.2.43 to 0.2.44
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.43 to 0.2.44.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.43...0.2.44 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 12:32:38 -07:00
jackcmay
59163e2dd9
Optimize some CI stuff ( #1880 )
...
* CI Optimizations
2018-11-21 12:16:16 -08:00
Michael Vines
c1af48bd85
Rename program_id => owner
2018-11-18 16:24:13 -08:00
Michael Vines
3822c29415
Route program_id to program entrypoint
2018-11-17 19:42:03 -08:00
dependabot[bot]
c6c8351fca
Update env_logger requirement from 0.5.12 to 0.6.0
...
Updates the requirements on [env_logger](https://github.com/sebasmagri/env_logger ) to permit the latest version.
- [Release notes](https://github.com/sebasmagri/env_logger/releases )
- [Commits](https://github.com/sebasmagri/env_logger/commits/v0.6.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-17 16:30:44 -08:00
Michael Vines
201a4b7b2a
Advance input pointer correctly
2018-11-17 10:30:21 -08:00
Jack May
96e03eca14
Remove unused dependency
2018-11-15 15:13:50 -08:00
Jack May
659dfbf51f
cargo:rerun always triggers if file does not exist
2018-11-15 14:59:54 -08:00
jackcmay
39c87fd103
Add BPF benchmarks
2018-11-14 12:06:06 -08:00
Michael Vines
2ad2fdd235
Remove inline simple program to avoid maintenance burden
2018-11-14 10:39:22 -08:00
Michael Vines
1fda4b77ef
Expose tick_height to bpf programs
2018-11-14 10:33:27 -08:00
Michael Vines
5a8938209b
Expose tick_height to native programs
2018-11-14 10:33:27 -08:00
Michael Vines
0bf2ff6138
Add convenience macro for native program entrypoint
2018-11-14 10:33:27 -08:00
Jack May
f99fae3c61
Use exact solana-rbpf version, not maintaining backward compatibility
2018-11-13 17:45:46 -08:00
Michael Vines
860dcdb449
Stubs for some libc headers
2018-11-13 17:44:46 -08:00
Michael Vines
70cebaf74a
Add size_t/ssize_t/sol_memset/sol_strlen
2018-11-13 17:44:46 -08:00
Michael Vines
317fe19da7
Fix INC_DIRS usage
2018-11-13 17:44:46 -08:00
Michael Vines
522876c808
Rename Account.program_id to Account.owner
2018-11-12 10:59:01 -08:00
Michael Vines
49f4be6a2b
codemod --extensions rs loader_program_id loader
2018-11-12 10:59:01 -08:00
Michael Vines
e702515312
Add basic C++ support
2018-11-12 09:08:40 -08:00
Michael Vines
def7d156f6
codemod --extensions sh '#!/usr/bin/env bash -e' '#!/usr/bin/env bash\nset -e'
2018-11-11 16:24:36 -08:00
Michael Vines
33aab094ef
codemod --extensions sh '#!/bin/bash' '#!/usr/bin/env bash'
2018-11-11 16:24:36 -08:00
Rob Walker
3ccbf81646
Update README.md
2018-11-07 13:04:14 -08:00
Rob Walker
2e38cd98c0
Update README.md
2018-11-07 12:58:24 -08:00
jackcmay
1075a73902
Elf relocations ( #1724 )
...
Use relocatable BPF ELFs
2018-11-07 09:40:23 -08:00
Greg Fitzgerald
c9138f964b
Change token type from i64 to u64
...
Fixes #1526
2018-11-05 15:25:26 -07:00
Michael Vines
ed09b2bdb8
Document BPF C program limitations
2018-11-04 12:31:38 -08:00
Michael Vines
40e945b0c8
Move token_program from src/ to programs/native/
2018-11-02 18:13:02 -07:00
carllin
298bd6479a
Add first leader to genesis ( #1681 )
...
* Add first leader to genesis entries, consume in genesis.sh
* Set bootstrap leader in the bank on startup, remove instantiation of bootstrap leader from bin/fullnode
* Remove need to initialize bootstrap leader in leader_scheduler, now can be read from genesis entries
* Add separate interface new_with_leader() in mint for creating genesis leader entries
2018-11-02 14:32:05 -07:00
Michael Vines
b8534a402d
shell
2018-11-01 15:25:27 -07:00
Michael Vines
45b9a7f8e9
shell
2018-11-01 14:40:21 -07:00
Michael Vines
6b777b066a
Find clang 7 better
...
If LLVM_DIR is defined, use it to locate clang. Otherwise use brew on
macOS, and assume clang-7 otherwise
2018-11-01 09:48:38 -07:00
Michael Vines
1e01088698
Improve clang install info for Linux
2018-11-01 09:48:38 -07:00
Michael Vines
3ea0651078
Rename sol_bpf.h to solana_sdk.h
2018-10-31 23:46:34 -07:00
Michael Vines
776b1c2294
sol_bpf.h improvements
...
- Define NULL
- Add sol_memcmp()
- Use sizeof() more
- Add SOL_ARRAY_SIZE
- Make sol_deserialize() more flexible
2018-10-31 23:46:34 -07:00
Michael Vines
5ecb9da801
Fix up bpf numeric types
2018-10-31 20:53:44 -07:00
jackcmay
38ee5c4dfb
Program may not exit ( #1669 )
...
Cap max executed instructions, report number of executed instructions
2018-10-31 10:59:56 -07:00
jackcmay
aca2f9666d
Fix deps ( #1672 )
2018-10-31 10:12:17 -07:00
Michael Vines
b74e085538
SYSTEM_INC_DIRS needs immediate expansion
2018-10-31 07:20:09 -07:00
Jack May
899de2ff56
Revert inclusion change, fix doc
2018-10-31 07:03:38 -07:00
Jack May
cf521a5bd2
Fix const
2018-10-31 07:03:38 -07:00
Jack May
bc13248e1c
Fix C programs
2018-10-31 07:03:38 -07:00
jackcmay
333f658eb6
Fix lua_loader tests ( #1665 )
2018-10-30 18:36:18 -07:00
Michael Vines
073d39df44
Add solana_ prefix to loaders so their logs appear in the default RUST_LOG config
2018-10-30 12:03:35 -07:00
Michael Vines
4d6c54272a
Tweak logging
2018-10-30 12:03:35 -07:00
Michael Vines
45bb97cad6
Permit {INC,LLVM,OUT,SRC,SYSTEM_INC}_DIRs to be overridden
2018-10-30 07:59:07 -07:00
Michael Vines
546e4c5696
Remove bpf tictactoe
2018-10-29 21:43:37 -07:00
Michael Vines
30b22c8b78
Use NUM_KA
2018-10-29 20:52:38 -07:00
Michael Vines
6f5e92e5b3
README updates
2018-10-29 20:52:38 -07:00
Michael Vines
cce5c70f29
LD -> LLC
2018-10-29 20:52:38 -07:00
Michael Vines
4af7c82ef0
Add extern "C" block
2018-10-29 20:52:38 -07:00
Michael Vines
52e5fb7e0c
Use #pragma once, it's widely supported
...
Fix up some spelling too
2018-10-29 20:52:38 -07:00
Michael Vines
a013e8ceb1
Rename sol_bpf_c.h to sol_bpf.h
2018-10-29 20:52:38 -07:00
Michael Vines
864632b582
slight reformatting
2018-10-29 20:52:38 -07:00
Michael Vines
71d6eaacef
Apply some const
2018-10-29 20:52:38 -07:00
Michael Vines
4aba05d749
Include system includes in .d, remove unneeded tabs
2018-10-29 20:52:38 -07:00
Michael Vines
7d335165ec
Tune make output
2018-10-29 19:32:47 -07:00
Michael Vines
37213209c5
Create programs/bpf/c/sdk/
2018-10-29 19:10:29 -07:00
Michael Vines
ebcb9a2103
Add llvm install info
2018-10-29 10:00:45 -07:00
Michael Vines
6fb2e080bc
Ignore out/
2018-10-29 10:00:45 -07:00
Michael Vines
3ac5ffc188
Use V=1 for verbosity, easier to type
2018-10-29 10:00:45 -07:00
Michael Vines
88187ef282
Find llvm using brew on macOS
2018-10-29 10:00:45 -07:00
jackcmay
3488ea7d1c
Cleanup c programs ( #1620 )
...
Cleanup C programs
2018-10-26 19:38:07 -07:00
Michael Vines
9e5ac76855
0.11.0
2018-10-25 17:19:07 -07:00
Michael Vines
48685cf766
0.10.0-pre2
2018-10-25 16:19:31 -07:00
Michael Vines
1733beabf7
mv common/ sdk/
2018-10-25 13:26:10 -07:00
Michael Vines
471d8f6ff9
Fix up the version references to all other internal crates
2018-10-25 12:54:32 -07:00
Michael Vines
e47fcb196b
s/solana_program_interface/solana[_-]sdk/g
2018-10-25 12:31:45 -07:00
Michael Vines
113b002095
Delete programs/native/move_funds
2018-10-25 11:37:38 -07:00
Michael Vines
9447537d8c
Increment internal Cargo references to solana_program_interface
2018-10-25 11:03:03 -07:00
jackcmay
24b513c3c7
Migrate to latest rbpf ( #1605 )
...
Migrate to updated rbpf
2018-10-25 02:58:04 -07:00
Jack May
0aebbae909
Fix message
2018-10-23 15:45:58 -07:00
Jack May
a3a2215bda
Fix warning
2018-10-23 15:45:58 -07:00
jackcmay
eb377993b3
Debug scripts point to debug flavor ( #1585 )
2018-10-23 14:48:50 -07:00
jackcmay
f8516b677a
Load program data in chunks ( #1556 )
...
Load program data in chunks
2018-10-19 18:28:38 -07:00
jackcmay
0339642e77
Added TicTacToe Dashboard and tests ( #1547 )
...
* Add tictactoe dashboard and tests
2018-10-18 14:19:25 -07:00
jackcmay
0a819ec4e2
Programs were not spawned by SystemProgram ( #1533 )
...
* SystemProgram spawns programs
2018-10-18 10:33:30 -07:00
Jack May
64efa62a74
enable logging in loaders
2018-10-16 16:55:11 -07:00
Jack May
bb628e8495
Rename loaders
2018-10-16 14:27:08 -07:00
jackcmay
c886625c83
Move from solana/rbpf fork to qmonnet/rbpf ( #1511 )
2018-10-16 13:13:54 -07:00
jackcmay
d09889b1dd
Program bank integration ( #1462 )
...
Native, BPF and Lua loaders integrated into the bank
2018-10-16 09:43:49 -07:00
Michael Vines
d3b4dfe104
Add bool return to entrypoint signature to permit programs to fail transactions
2018-10-13 20:01:43 -07:00
Michael Vines
5f8cbf359e
Use cdylib to avoid runtime libstd dependencies
2018-10-10 16:49:48 -07:00
Greg Fitzgerald
2ba2bc72ca
Cleanup multisig lua
2018-10-10 17:17:17 -06:00
Greg Fitzgerald
45b8ba9ede
Demo M-N multisig library in Lua
2018-10-10 17:17:17 -06:00
Michael Vines
40968e09b7
Do a *little* more than noop
2018-10-10 15:57:30 -07:00
Greg Fitzgerald
9716c3de71
Add an abort test to justify a key field
2018-10-09 11:06:48 -06:00
Greg Fitzgerald
34fa3208e0
Demo self-modifying Lua program
...
Also, drop dependency on bincode.
2018-10-09 11:06:48 -06:00
Greg Fitzgerald
9c4e19958b
Use accounts[1] for Lua code and tx userdata as arg data
...
This makes the Lua version nearly identical to the C one.
2018-10-09 11:06:48 -06:00
Greg Fitzgerald
0403299728
Add context-free Lua smart contracts
...
lua_State is not preserved across runs and account userdata is not converted into
Lua values. All this allows us to do is manipulate the number of tokens
in each account and DoS the Fullnode with those three little words,
"repeat until false".
Why bother? Research. rlua's project goals are well-aligned with the LAMPORT runtime.
What's next:
* rlua to add security limits, such as number of instructions executed
* Add a way to deserialize Account::userdata OR use Account::program_id
to look up a metatable for lua_newuserdata().
2018-10-09 11:06:48 -06:00
Greg Fitzgerald
da0404ad03
Reduce maintenance of maintainers list
2018-10-04 23:05:08 -07:00
Jack May
d901767b54
Makefile is not relevant
2018-10-04 10:35:48 -07:00
jackcmay
13d4443d4d
Add BPF support & C-based BPF tic-tac-toe ( #1422 )
...
Add initial support for BPF and a C port of tictactoe
2018-10-04 09:44:44 -07:00
jackcmay
9c47e022dc
break dependency of programs on solana core ( #1371 )
...
* break dependency of programs on Solana core
2018-09-27 07:49:26 -07:00
Greg Fitzgerald
874addc51a
Move KeyedAccount into Account
...
Now programs don't need to depend on dynamic_program and its
dependencies.
2018-09-26 20:40:40 -06:00
Greg Fitzgerald
b7ae5b712a
Move Pubkey into its own module
2018-09-26 20:40:40 -06:00
Greg Fitzgerald
c6d7cd2d33
Move Account into its own module
...
Also use default Default generator, since system program ID is
[0; 32]. Bank should probably be the one to set this anyway.
2018-09-26 20:40:40 -06:00
jackcmay
26b1466ef6
Initial integration of dynamic contracts and native module loading ( #1256 )
...
* Integration of native dynamic programs
2018-09-23 22:13:44 -07:00