Commit Graph

530 Commits

Author SHA1 Message Date
Jack May 04c5e6cc48
more informative feature error message (#13373) 2020-11-04 00:08:08 +00:00
Michael Vines e872715fd6 Switch to dirs-next 2020-10-31 18:56:20 +00:00
Michael Vines 4b65e32f22 Move Feature struct to solana-program 2020-10-30 17:57:51 -07:00
Michael Vines da361afbb9 Revert "Updates rbpf to v0.2.0, (#12951)"
This reverts commit 6606590b81.
2020-10-29 21:45:24 -07:00
Michael Vines df8dab9d2b Native/builtin programs now receive an InvokeContext 2020-10-29 21:45:24 -07:00
Alexander Meißner 6606590b81
Updates rbpf to v0.2.0, (#12951)
which unifies the interfaces of the interpreter and the JIT.
However, the JIT is not enabled yet.
2020-10-29 11:34:52 -07:00
Jack May c458d4b213
move Account to solana-sdk (#13198) 2020-10-28 22:01:07 -07:00
Trent Nelson a82971879f CLI: Surface deploy transaction errors 2020-10-26 21:16:22 +00:00
Tyera Eulberg 16944e218f
Cli: deploy programs via TPU (#13090)
* Deploy: send write transactions to leader tpu

* Less apparent stalling during confirmation

* Add EpochInfo mock

* Only get cluster nodes once

* Send deploy writes to next leader
2020-10-23 10:03:29 -06:00
Tyera Eulberg 4669fa0f98
Add deploy err if program-account balance is too high (#13091)
* Add deploy err if program-account balance is too high

* Review comments

* Add system-program check

* Rename and unhide flag
2020-10-22 22:42:35 -06:00
Justin Starry 8b0242a5d8
Allow nodes to advertise a different rpc address over gossip (#13053)
* Allow nodes to advertise a different rpc address over gossip

* Feedback
2020-10-22 03:31:48 +00:00
Michael Vines 959880db60 Remove unused pubkey::Pubkey imports 2020-10-21 19:08:13 -07:00
Michael Vines 7bc073defe Run `codemod --extensions rs Pubkey::new_rand solana_sdk::pubkey::new_rand` 2020-10-21 19:08:13 -07:00
Trent Nelson 2905ccc7ec CLI: Print address ephemeral keypair seed phrase to stderr on deploy failure 2020-10-21 01:09:37 -06:00
Michael Vines ad65d4785e Skip 'Stake by Feature Set' output when showing status of a single feature 2020-10-21 05:52:32 +00:00
dependabot[bot] 301f3096a0 chore: bump thiserror from 1.0.20 to 1.0.21
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.20 to 1.0.21.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.20...1.0.21)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-20 11:19:10 -07:00
Tyera Eulberg cca318f805
Revert "CLI: Put `deploy` ephemeral keypair behind a flag" (#12983)
This reverts commit 5a5b7f39c1.
2020-10-19 12:44:32 -06:00
Tyera Eulberg b6bfed64cb
Check payer balance for program account rent as needed (#12952) 2020-10-16 18:03:50 +00:00
Trent Nelson 5a5b7f39c1 CLI: Put `deploy` ephemeral keypair behind a flag 2020-10-16 05:00:53 +00:00
Michael Vines eec3d25ab9 Surface 'Program account allocation failed' error details 2020-10-15 09:17:48 +00:00
Michael Vines 14d793b22c Cleanly handle RPC servers that don't have --enable-rpc-transaction-history enabled 2020-10-13 10:05:44 -07:00
Alexandre Esteves 6bbf6a79b7
Check ELF file for errors before deploy (#12741)
* Check ELF file for errors before deploy

* Update cli/src/cli.rs

Co-authored-by: Michael Vines <mvines@gmail.com>

* Fix formatting

* Bump solana_rbpf

Co-authored-by: Michael Vines <mvines@gmail.com>
2020-10-11 21:19:47 -07:00
Michael Vines 8a119c1483 Bump reqwest/rayon to get past `cargo audit` 2020-10-11 18:51:09 +00:00
Michael Vines c5c8da1ac0 Expose all rewards (fees, rent, voting and staking) in RPC getConfirmedBlock and the cli 2020-10-09 21:54:13 -07:00
Tyera Eulberg 5800217998
Fix typo (#12780) 2020-10-10 00:35:52 +00:00
Michael Vines 3a04026599 Minor variable name cleanup 2020-10-08 17:44:19 -07:00
Michael Vines 11df2e2236 Bump version to v1.5.0 2020-10-08 04:51:36 +00:00
Michael Vines 346890ded3 Display vote/stake account epoch rewards 2020-10-07 17:14:12 -07:00
Trent Nelson 4feead323d clap-utils: Allow fine-tuning offline args 2020-10-07 23:14:39 +00:00
Michael Vines 9abaf6ec1d `solana stakes` now employs server-side filtering if only one vote account is provided 2020-10-02 17:53:07 -07:00
Tyera Eulberg 19f385db76
Improve solana deploy (#12621)
* Check program account before attempting to create it

* Use last_valid_slot to timeout status checks

* Include transaction history in RpcClient::get_signature_statuses requests

* Improve solana-deploy send-transactions

* Clippy

* Improve mock deploy test

* Review comments
2020-10-02 13:35:39 -06:00
Michael Vines 978b26a9c5 `solana catchup` now retries if the initial RPC connection fails 2020-10-02 12:28:05 -07:00
Michael Vines 42aeead6b4 Add inflation subcommand 2020-10-01 22:57:09 -07:00
Michael Vines 14036ac580 Improve `block` command output 2020-10-01 22:56:42 -07:00
Tyera Eulberg adf06b635b
Enable json output from solana feature status (#12554) 2020-09-29 19:26:08 +00:00
Trent Nelson 972619edb4 clap-utils: Allow nonce/offline args to be global 2020-09-29 10:42:49 -06:00
Michael Vines 322dbd894f feature subcommand: display active stake by feature id when feature activation is not available 2020-09-29 05:10:02 +00:00
Tyera Eulberg 35208c5ee7
Enable commitment arg on solana deploy (#12532) 2020-09-28 16:24:38 -06:00
Michael Vines 3a2b8c5e5b cli review feedback 2020-09-25 11:40:36 -07:00
Michael Vines 93ed0ab2bb Add feature management commands 2020-09-25 11:40:36 -07:00
Michael Vines c10da16d7b Port instructions sysvar and secp256k1 program activation to FeatureSet 2020-09-25 11:40:36 -07:00
Michael Vines 35f5f9fc7b Add feature set identifier to gossiped version information 2020-09-25 11:40:36 -07:00
Trent Nelson 7cab638297 Factor the rest of CLI offline module out to clap-utils and cli-output crates 2020-09-23 15:58:44 -06:00
Trent Nelson 325a7e9f86 Move CLI cli_output module to its own crate 2020-09-23 15:58:44 -06:00
Trent Nelson ba353c2b1d Move CLI blockhash_query module into client crate 2020-09-23 15:58:44 -06:00
Trent Nelson 0c58123b45 Move CLI Signer utils into clap-utils 2020-09-23 15:58:44 -06:00
Trent Nelson be88e868bd CLI: Drop unused helper 2020-09-23 15:58:44 -06:00
Trent Nelson 9a60353fa9 CLI: Encapsulate default signer attributes 2020-09-23 15:58:44 -06:00
Trent Nelson eaf79152b3 CLI: Consolidate sign-only helpers 2020-09-23 15:58:44 -06:00
Trent Nelson 5e34af5a75 `return_signers` doesn't need a whole `CliConfig` 2020-09-23 15:58:44 -06:00
Trent Nelson 89cab47011 Move CLI fee payer arg into clap-utils 2020-09-23 15:58:44 -06:00
Trent Nelson 6cf74d1166 Move CLI offline args to clap-utils 2020-09-23 15:58:44 -06:00
Trent Nelson 3fb8428636 Move CLI nonce args to clap-utils 2020-09-23 15:58:44 -06:00
Trent Nelson 011b674d41 CLI: Remove unused `KeypairEq` type 2020-09-23 15:58:44 -06:00
Trent Nelson a6533c3a21 Move CLI nonce account helpers in client 2020-09-23 15:58:44 -06:00
Trent Nelson dda48e2d06 Move `CliNonceError` into client crate 2020-09-23 15:58:44 -06:00
Michael Vines 4fa443becf Simplify cli node version output, display semver only by default 2020-09-22 07:03:43 +00:00
Trent Nelson 6767264aa1 CLI: Drop unused runtime dep 2020-09-21 19:05:51 +00:00
Michael Vines 208dd1de3a Move TestValidator into its own module 2020-09-19 08:35:26 -07:00
Trent Nelson 83f93fed02 CLI: Use Base58 encoding rather than deprecated Binary for TX decode 2020-09-16 04:36:50 +00:00
sakridge 3930cb865a
Add keccak-secp256k1 instruction (#11839)
* Implement keccak-secp256k1 instruction

Verifies eth addreses with ecrecover function

* Move secp256k1 test
2020-09-15 18:23:21 -07:00
Michael Vines 56282f0c01 `validator-info get/set` no longer crash on invalid account data 2020-09-15 16:59:17 -07:00
Michael Vines 27752c4e4d Add block command 2020-09-06 12:45:32 -07:00
Michael Vines 6677996369 Add first-available-block command 2020-09-06 12:45:32 -07:00
Michael Vines 2332dd774f Add --show-transactions flag to transaction-history command 2020-09-05 08:45:49 -07:00
Tyera Eulberg 39246f9dd7
Revert signature-notification format change (#12032)
* Use untagged RpcSignatureResult enum to avoid breaking downstream consumers of current signature subscriptions

* Clean up client duplication

* Clippy
2020-09-03 18:14:45 -06:00
Tyera Eulberg 6234909373
Fix use-deprecated-loader arg (#11921) 2020-08-31 08:41:00 +00:00
Michael Vines b660704faa Allow the sendTransaction preflight commitment level to be configured 2020-08-22 08:19:50 -07:00
Michael Vines de736e00ad Add (hidden) --use-deprecated-loader flag to `solana deploy` 2020-08-17 19:57:44 -07:00
Michael Vines adc984a225 Rename Binary64 to Base64. Establish Base58 encoding 2020-08-17 17:26:29 -07:00
Michael Vines 757e147b3b Rework UiAccountData encode/decode such that it works from Rust 2020-08-17 17:26:29 -07:00
Michael Vines 2ebc68a9e2 decode-transaction now supports binary64 2020-08-17 17:26:29 -07:00
Michael Vines b5f3ced860 Add base64 (binary64) encoding for getConfirmedTransaction/getConfirmedBlock 2020-08-17 17:26:29 -07:00
Tyera Eulberg 6c5b8f324a
Rpc: Add until parameter for getConfirmedSignaturesForAddress2 (#11644)
* Refactor bigtable apis to accept start and end keys

* Make helper fn to deserialize cell data

* Refactor get_confirmed_signatures_for_address to use get_row_data range

* Add until param to get_confirmed_signatures_for_address

* Add until param to blockstore api

* Plumb until through client/cli

* Simplify client params
2020-08-15 10:42:17 -06:00
Tyera Eulberg c0d6761f63
Fix solana CLI deploy (#11520)
* Refresh blockhash for program writes and finalize transactions

* Refactor to use current api, eliminating an rpc call

* Review comment
2020-08-11 02:42:29 -06:00
Tyera Eulberg 88ca04dbdb
Add config param to specify offset/length for single and program account info (#11515)
* Add config param to specify dataSlice for account info and program accounts

* Use match instead of if
2020-08-10 22:35:29 +00:00
Michael Vines a4f5f3e978 account subcommand now requests binary64 2020-08-09 21:10:49 +00:00
Tyera Eulberg a9f76862fb
Decode native-program and sysvar accounts (#11463)
* Pass pubkey in to account-decoder for sysvars

* Decode sysvar accounts

* Decode config accounts; move validator-info lower

* Decode stake accounts

* Review comments

* Stringify any account lamports and epochs that can be set to u64::MAX
2020-08-09 07:50:45 +00:00
sakridge 068d23f298
Add Binary64 option for account data (#11474)
* Add Binary64 option for account data

* Decode into binary64

* Reword docs
2020-08-08 22:40:13 -07:00
Greg Fitzgerald edadd5d6d5
Remove Budget from CLI (#11451)
* Remove support for Budget

Also:
* Make "pay" command a deprecated alias for the "transfer" command

* chore: remove budget from web3.js

* Drop Budget depedency from core

Validators no longer ship with builtin Budget
2020-08-07 16:01:51 -06:00
Tyera Eulberg b7c2681903
Token Accounts: return ui_amount, decimals with decoded account (#11407)
* Return ui_amount, decimals from token client methods

* Return ui_amount, decimals in RPC jsonParsed token accounts

* Fixup docs

* Return ui_amount, decimals in pubsub jsonParsed token accounts

* Remove unnecessary duplicate struct

* StringAmount rename
2020-08-07 11:37:39 -06:00
Michael Vines 9abb7db5f8 Upgrade help description 2020-08-05 23:04:16 -07:00
Michael Vines 02c0981ecf Rename startAfter to before 2020-08-05 14:33:14 -07:00
Michael Vines 087fd32ce3 Reimplement transaction-history command with getConfirmedSignaturesForAddress2 2020-08-05 14:33:14 -07:00
Trent Nelson e12ab9d0dd Bump version to 1.4.0 2020-08-05 12:04:15 -06:00
Greg Fitzgerald 61d9d219f9
Withdraw authority no longer implies a custodian (#11302)
* Withdraw authority no longer implies a custodian

Before this change, if the withdraw authority and custodian had
the same public key, then a withdraw authority signature would
imply a custodian signature and lockup would be not be enforced.

After this change, the client's withdraw instruction must
explictly reference a custodian account in its optional sixth
account argument.

Likewise, the fee-payer no longer implies either a withdraw
authority or custodian.

* Fix test

The test was configuring the stake account with the fee-payer as
the withdraw authority, but then passing in a different key to
the withdraw instruction's withdraw authority parameter. It only
worked because the second transaction was signed by the fee-payer.
2020-07-31 13:37:53 -06:00
Trent Nelson 6f7e121b68 CLI: Add arg to adjust RPC timeout 2020-07-23 22:29:40 +00:00
Michael Vines 50c92e3a94 Add block-height subcommand 2020-07-22 13:26:05 -07:00
Michael Vines 2adfe3f199 Add block height to epoch-info subcommand 2020-07-22 13:26:05 -07:00
dependabot[bot] 2e0fb37bfb Bump thiserror from 1.0.19 to 1.0.20
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.19 to 1.0.20.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.19...1.0.20)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-15 13:39:32 -07:00
dependabot[bot] 8548c3a7eb Bump humantime from 2.0.0 to 2.0.1
Bumps [humantime](https://github.com/tailhook/humantime) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/tailhook/humantime/releases)
- [Commits](https://github.com/tailhook/humantime/compare/v2.0.0...v2.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-15 08:27:33 -07:00
dependabot-preview[bot] 5055028231 Bump serde_json from 1.0.54 to 1.0.56
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.54 to 1.0.56.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.54...v1.0.56)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-14 11:13:22 -07:00
Trent Nelson 14ac233d01 CLI: Fix explicitly plumb vote_account through create-vote-account 2020-07-14 07:29:53 -06:00
Trent Nelson 2284699889 CLI: Fix explicitly plumb withdraw_authority through vote-update-validator 2020-07-14 07:29:53 -06:00
Trent Nelson 3392ecc310 CLI: Fix explicitly plumb withdraw_authority through vote-update-commission 2020-07-14 07:29:53 -06:00
dependabot-preview[bot] 5c86766fb2
Bump ctrlc from 3.1.4 to 3.1.5 (#11006)
Bumps [ctrlc](https://github.com/Detegr/rust-ctrlc) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/Detegr/rust-ctrlc/releases)
- [Commits](https://github.com/Detegr/rust-ctrlc/compare/3.1.4...3.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-07-12 20:59:29 -06:00
dependabot-preview[bot] 841ecfd927
chore(deps): bump bincode from 1.2.1 to 1.3.1 (#10867)
* chore(deps): bump bincode from 1.2.1 to 1.3.1

Bumps [bincode](https://github.com/servo/bincode) from 1.2.1 to 1.3.1.
- [Release notes](https://github.com/servo/bincode/releases)
- [Commits](https://github.com/servo/bincode/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* [auto-commit] Update all Cargo lock files

* Switch from deprecated method

* Add options to maintain behavior with bincode::options()

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-07-09 00:08:05 +00:00
Tyera Eulberg 2669ccb864
Update struct prefixes to Ui (#10874)
* Update comments

* Use Ui prefix
2020-07-01 20:06:40 +00:00
Tyera Eulberg d97850f1d9
Add account-decoder utilities (#10846)
* Fix comment and make less pub

* Add account-decoder crate and use to decode vote and system (nonce) accounts

* Update docs

* Rename RpcAccount struct

* s/Rpc/Display

* Call it jsonParsed and update docs

* Revert "s/Rpc/Display"

This reverts commit 6e7149f503f560f1e9237981058ff05642bb7db5.

* s/Rpc/Ui

* Add tests

* Ui more things

* Comments
2020-07-01 04:55:11 +00:00
Greg Fitzgerald 1c498369b5
Remove fee-payer guesswork from Message and Transaction (#10776)
* Make Message::new_with_payer the default constructor

* Remove Transaction::new_[un]signed_instructions

These guess the fee-payer instead of stating it explicitly
2020-06-24 14:52:38 -06:00