Michael Vines
21f4606212
Add RpcClient::get_transport_stats()
2021-09-09 20:11:15 -07:00
Michael Vines
b83284c9f6
TpuClient now uses the processed slot to seed its leader schedule cache
2021-09-08 16:51:25 -05:00
Michael Vines
007fb3abe5
Improve comments, error handling, and retry delay handling
2021-09-08 10:51:55 -05:00
Michael Vines
ae43ca3bfb
Add RpcClient::get_multiple_accounts_with_config()
2021-09-03 22:41:38 +00:00
Brooks Prumo
38e1f7c4ba
Add backwards compatibility support to get_highest_snapshot_slot() ( #19591 )
...
Co-authored-by: Michael Vines <mvines@gmail.com>
2021-09-02 20:47:35 -05:00
Brooks Prumo
8ac94b2cf4
Add Incremental Snapshot support to RPC ( #19559 )
...
#### Problem
There's no way to get incremental snapshot information from RPC.
#### Summary of Changes
- Add new RPC method, `getHighestSnapshotSlot` that returns a `SnapshotSlotInfo`, which contains both the highest full snapshot slot, and the highest incremental snapshot slot _based on_ the full snapshot.
- Deprecate old RPC method, `getSnapshotSlot`
- Update API docs
Fixes #19579
2021-09-02 15:25:42 -05:00
Jack May
f81bfc8462
Limit message encoding to base-64 ( #19468 )
2021-08-29 19:53:37 -07:00
Tyera Eulberg
7482861f4b
Add parameter to allow setting max-retries for SendTransaction rpc ( #19387 )
...
* Add parameter to cap rpc send retries for a tx
* Add parameter to docs
2021-08-24 22:44:13 -06:00
Brian Anderson
628ad58912
Document more RpcClient methods ( #19236 )
...
* Document more RpcClient methods
* Update client/src/rpc_client.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update RpcClient docs per feedback
* Address review feedback
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-08-23 18:49:37 -06:00
Tyera Eulberg
cf3fc61821
Add backward compatibility for new RpcClient methods ( #19383 )
2021-08-24 00:09:00 +00:00
Justin Starry
c053df143f
RPC: add option to exclude accounts from get_supply ( #19270 )
2021-08-17 23:32:58 +00:00
dependabot[bot]
74cc2e5ffa
chore: bump tungstenite from 0.14.0 to 0.15.0 ( #19222 )
...
* chore: bump tungstenite from 0.14.0 to 0.15.0
Bumps [tungstenite](https://github.com/snapview/tungstenite-rs ) from 0.14.0 to 0.15.0.
- [Release notes](https://github.com/snapview/tungstenite-rs/releases )
- [Changelog](https://github.com/snapview/tungstenite-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/snapview/tungstenite-rs/compare/v0.14.0...v0.15.0 )
---
updated-dependencies:
- dependency-name: tungstenite
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
* Update stream type
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <anatoly+githubjenkins@solana.io>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-08-13 11:57:22 -06:00
Jack May
0b50bb2b20
Deprecate FeeCalculator returning APIs ( #19120 )
2021-08-13 09:08:20 -07:00
Tyera Eulberg
5970083b4d
Use last_valid_block_height in services and client apps ( #19163 )
...
* Add deprecated tag to Bank::get_blockhash_last_valid_slot
* Update SendTransactionService to use last_valid_block_height
* Update solana-tokens to use last_valid_block_height
* Remove dangling file
* Update solana program to use last_valid_block_height
* Update Banks crates to use last_valid_block_height
2021-08-11 01:04:00 -06:00
Brian Anderson
e4b66a5913
Fix deserialization of RPC errors in HttpSender ( #19110 )
...
Fixes #15576
2021-08-09 10:45:00 -07:00
Brian Anderson
b67ffab370
Add more API documentation for Rust RpcClient ( #19021 )
...
* Add doc links to Transaction API docs
* Add more RpcClient API docs
* Reflow some rpc_client docs
* Update client/src/rpc_client.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update client/src/rpc_client.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update client/src/rpc_client.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/src/transaction.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update RpcClient docs per review
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2021-08-05 15:03:33 -06:00
Trent Nelson
21bc43ed58
nonce: Unify `NonceError` with `SystemError`
2021-07-30 14:47:14 -06:00
Brian Anderson
58f395257b
Fix serialization of parameters in RpcClient::get_block_production_with_config ( #18998 )
...
Params must be an array or null.
2021-07-30 20:20:33 +00:00
Michael Vines
f264511585
RpcClient::send<T> now supports client-defined RPC methods via RpcRequest::Custom
2021-07-24 09:53:47 -07:00
Michael Vines
69f02af98e
Fix build
2021-07-20 12:02:10 -07:00
Brian Anderson
5dcfd7ce74
Add some docs for RpcClient and friends ( #18748 )
...
* Add some docs for RpcSender, HttpSender, MockSender
* Support SimulateTransaction in MockSender
* Add docs for RpcClient constructors
* Add some more RpcClient examples
* rustfmt
* Reflow docs in rpc_client and friends
2021-07-20 18:49:32 +00:00
Jack May
74539020b4
Transaction simulation includes cost ( #18715 )
2021-07-16 14:58:15 -07:00
Trent Nelson
bf90ea282a
rpc: more params for `GetVoteAccountsConfig`
2021-07-14 08:41:52 +00:00
Tyera Eulberg
8ad4ffdee5
Cli: expose last valid block height ( #18620 )
...
* Add Fees struct to client
* Add complete RpcClient::get_fees methods
* Switch cli to last_valid_block_height
2021-07-13 01:41:27 +00:00
Michael Vines
4098af3b5b
Record vote account commission with voting/staking rewards and surface in RPC
2021-07-12 15:09:44 -07:00
hrls
70234dfdf4
refactor(rpc_client): const number of retries for send and confirm transaction ( #18390 )
...
* refactor(rpc_client): simplfy send and confirm transaction flow
* chore: configurable num of retries for send and confirm
2021-07-05 09:14:48 -07:00
Justin Starry
d5961e9d9f
Reject transactions with extra signatures ( #18306 )
...
* Reject transactions with extra signatures
* fix tests
* fix check
* fix check
* tx method
* fix checks
2021-07-01 18:06:59 +00:00
Tyera Eulberg
9d4428d3d8
Use timeout to allow RpcClient to retry initial transaction confirmation ( #18311 )
...
* Tidying: relocate function
* Use proper helper method for RpcClient commitment
* Add RpcClientConfig
* Add configurable confirm_transaction_initial_timeout
* Use default 5s timeout for initial tx confirmation
2021-06-30 01:08:45 +00:00
Alexander Meißner
6514096a67
chore: cargo +nightly clippy --fix -Z unstable-options
2021-06-18 10:42:46 -07:00
carllin
ccc013e134
Handle removing slots during account scans ( #17471 )
2021-06-14 21:04:01 -07:00
dependabot[bot]
a43c29e858
Bump indicatif from 0.15.0 to 0.16.2 ( #17628 )
...
* Bump indicatif from 0.15.0 to 0.16.2
Bumps [indicatif](https://github.com/mitsuhiko/indicatif ) from 0.15.0 to 0.16.2.
- [Release notes](https://github.com/mitsuhiko/indicatif/releases )
- [Commits](https://github.com/mitsuhiko/indicatif/compare/0.15.0...0.16.2 )
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
* Fix message types
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-06-01 17:38:02 +00:00
Michael Vines
cbce440af4
simulateTransaction can now return accounts modified by the simulation
2021-05-26 14:20:23 -07:00
Tyera Eulberg
6abe089740
Add custom error for tx-history queries when node does not support ( #17494 )
2021-05-26 13:27:41 -06:00
Tyera Eulberg
e9bc1c6b07
Add last valid block height to rpc Fees ( #17506 )
...
* Add last_valid_block_height to fees rpc
* Add getBlockHeight rpc
* Update docs
2021-05-26 07:26:19 +00:00
Justin Starry
e14f3eb529
rename flag
2021-05-25 17:32:00 -07:00
Justin Starry
96cef5260c
Add a flag to simulateTransaction to use most recent blockhash
2021-05-25 17:32:00 -07:00
Nikita
d41266e4e9
rpc: add context toggle to getProgramAccounts ( #17399 )
...
* fix(rpc): return context in get_program_accounts
* doc(rpc): document withContext flag
* fix(rpc): fix comment
Co-authored-by: Michael Vines <mvines@gmail.com>
* fix(rpc): fix doc
Co-authored-by: Michael Vines <mvines@gmail.com>
Co-authored-by: Michael Vines <mvines@gmail.com>
2021-05-22 07:12:21 +00:00
Tao Zhu
0781fe1b4f
Upgrade Rust to 1.52.0 ( #17096 )
...
* Upgrade Rust to 1.52.0
update nightly_version to newly pushed docker image
fix clippy lint errors
1.52 comes with grcov 0.8.0, include this version to script
* upgrade to Rust 1.52.1
* disabling Serum from downstream projects until it is upgraded to Rust 1.52.1
2021-05-19 09:31:47 -05:00
Michael Vines
63b97729e6
get_program_accounts_with_config() now correctly defaults to RpcClient's commitment level
2021-05-18 19:57:40 +00:00
Trent Nelson
67e6a3106f
rpc: plumb shred_version through RpcContactInfo
2021-05-14 08:36:08 +00:00
Tyera Eulberg
27004f1b76
Return error for excluded secondary-index keys ( #17193 )
...
* Add runtime helpers to check secondary indexes for key
* Add custom rpc error
* Check secondary-index key inclusion in rpc
* Clone complete AccountSecondaryIndexes into rpc to avoid bank query
2021-05-13 21:04:21 +00:00
Michael Vines
7d1637d89a
RpcClient now respects the retry-after server response header when getting rate limited
2021-05-05 18:11:57 -07:00
Michael Vines
542d88929f
Add getBlockProduction RPC method
2021-04-28 20:02:54 -07:00
Michael Vines
f93565da6f
Compress account data by default
2021-04-27 04:56:56 +00:00
Michael Vines
59fc33635a
Add getVoteAccounts RPC method parameter to restrict results to a single vote account
2021-04-27 04:27:15 +00:00
Michael Vines
c2becbc0a8
`solana leader-schedule -um` works again
2021-04-26 16:29:35 -07:00
Justin Starry
75b8434b76
Add TPU client for sending txs to the current leader tpu port ( #16736 )
...
* Add TPU client for sending txs to the current leader tpu port
* Update tpu_client.rs
2021-04-23 09:35:12 +08:00
Tyera Eulberg
636b5987af
Update getLeaderSchedule options ( #16749 )
2021-04-22 19:27:30 +00:00
Michael Vines
6004c0abf5
getLeaderSchedule now supports filtered results based on validator identity
2021-04-21 17:59:26 -07:00
Michael Vines
a911ae00ba
clippy
2021-04-18 20:55:02 -07:00