I wanted to use this sysvar to get a recent block hash, but I didn't
know whether the first or the last entry contains the most recent block
hash.
By calling it for mainnet, printing the results, and comparing that to
the recent blocks on solanabeach.io/blocks, I discovered that the
entries are ordered from most recent to least recent. Document this to
save future readers the trouble.
* Zelcore wallet support for SOL/SPLs info added
I have added a quick infodump about Zelcore wallet supporting various features of the Solana ecosystem. I looked at previous commits and it seemed adding to the top of the file was the norm, but please feel free to move around if needed.
* Zelcore wallet info moved to bottom of file.
* fix minor typos and punctuation
* fix minor typos and punctuation
* rewording for clarity and typo corrections
* rewording for clarity and typo corrections
* rewording for clarity and typo corrections
Co-authored-by: Gregg Dourgarian <greggd@aidacreative.com>
* Add proposal for supporting big transactions
* account index program
* fix formatting
* review feedback
* Add cost changes section
* Add cost section and more attack details
* fix lint
* document metadata changes
* nit
* rpc details
* add index meta struct
* add additional proposal and chagne title
* rename proposal file
* rename to address map and rewrite tx format
* no more appends, limit mapping size to 256
* update dos section
* add note about readonly
* restructure message to use enum
* cleanup
* Add BlockHeight CF to blockstore
* Rename CacheBlockTimeService to be more general
* Cache block-height using service
* Fixup previous proto mishandling
* Add block_height to block structs
* Add block-height to solana block
* Fallback to BankForks if block time or block height are not yet written to Blockstore
* Add docs
* Review comments
While going through the tutorial to start a validator I noticed that the output I received from running...
```
solana config set --keypair ~/validator-keypair.json
```
...different from the output I was seeing. Wondering whether the docs are out of date I thought I'd propose an update to the docs just in case.
* Update web-wallet.md to add phantom with fixed link
Update web-wallet.md to add phantom with fixed link
* Update web-wallets.md for phantom
removing trailing whitespaces
* Update docs/src/wallet-guide/web-wallets.md
Co-authored-by: Michael Vines <mvines@gmail.com>
* Rename ask to prompt
* Default to Solana bip44 base if no derivation-path
* Add SignerSource legacy field, support legacy ASK
* Update docs
* Fix docs: validator current doesn't support uri SignerSources
* add Exodus as wallet that supports staking
* remove extra verbiage
* add binance & ftx. add note for these additions that you cannot select a validator with them
* Formatting
Co-authored-by: Justin Starry <justin.m.starry@gmail.com>
* Deprecate getConfirmed methods in rpc
* Add new methods to docs
* Move deprecated rpc methods to separate docs section
* Add note to docs about removal timing
* feat: introduce get_inflation_reward rpc call
* fix: style suggestions
* fix: more style changes and match how other rpc functions are defined
* feat: get reward for a single epoch
* feat: default to the most recent epoch
* fix: don't factor out get_confirmed_block
* style: introduce from impl for RpcEncodingConfigWrapper
* style: bring commitment into variable
* feat: support multiple pubkeys for get_inflation_reward
* feat: add get_inflation_reward to rpc client
* feat: return rewards in order
* fix: rename pubkeys to addresses
* docs: introduce jsonrpc docs for get_inflation_reward
* style: early return in map (not sure which is more idiomatic)
* fix: call the rpc client function args addresses as well
* fix: style
* fix: filter out only addresses we care about
* style: make this more idiomatic
* fix: change rpc client epoch to optional and include some docs edits
* feat: filter out rent rewards in get_inflation_reward
* feat: add option epoch config param to get_inflation_reward
* feat: rpc client get_inflation_reward takes epoch instead of config and some filter staking and voting rewards
* issue #10831: added --with-memo option to all cli commands that submit
transactions. Also, improve the block command to show UTF-8 string instead
of integer values for memo program data.
* Fixed tests and changed some syntax according to feedback.
* Use spl_memo id (all versions where applicable) instead of hardcoding id.
* Update Cargo.toml in programs/bpf.
* Update formatting via cargo fmt.
* Update to use spl_memo version 3.0.1, which simplifies package imports
* Update blockstore method to allow return of unfinalized signature
* Support confirmed sigs in getConfirmedSignaturesForAddress2
* Add deprecated comments
* Update docs
* Enable confirmed transaction-history in cli
* Return real confirmation_status; fill in not-yet-finalized block time if possible
* Implement mnemonic support for solana-keygen grind (solana-labs#9325)
* Updated to include feedback from review.
* Renaming as per review feedback
* Fixed an incorrectly transcribed underscore
* Properly re-use string constants.
* Add rpc confirmed-block config wrapper to support struct of extended config
* Update docs
* Make config wrapper generic and use in getConfirmedTransaction as well
* Update/clean confirmed-tx docs
* Document AppendVec
* Remove the almost-duplicate state in AppendVec
AppendVec was maintaining two offsets, `current_len` and
`append_offset`. Despite the different looking names, the two
values have the same meaning, but were updated at slightly different
times. When appending a batch of accounts, `current_len` updates would
be immediately available to other threads after each append, whereas
`append_offset` would only be updated after its mutex was unlocked.
`append_offset` is redundant. By removing it, we eliminate potential
bugs and no longer need to suppress clippy warnings.
* Remove get_mut() from AppendVec design
Only the offset into the AppendVec memory is thread-safe. The memory
itself is only threadsafe because it is append-only and is otherwise
unprotected. Adding get_mut() would only be safe if the memory was
protected by a ReadWrite lock.
* docs: add token balances response info
* docs: add blockTime to getConfirmedSignatures and getConfirmedTransaction
* docs: update example responses
* fix: remove space
* reorg validator economics
* overview cleanup
* terminology
* terminology formatting
* katex for docusaurus
* adjusted staking yield writeup
* more reorg
* move section header
* rm unlinked mds
* add new mds
* Update docs/src/inflation/terminology.md
Co-authored-by: Dan Albert <dan@solana.com>
* Update docs/src/inflation/terminology.md
Co-authored-by: Dan Albert <dan@solana.com>
* Update docs/src/inflation/terminology.md
Co-authored-by: Dan Albert <dan@solana.com>
* Update docs/src/inflation/terminology.md
Co-authored-by: Dan Albert <dan@solana.com>
* Update docs/src/inflation/terminology.md
Co-authored-by: Dan Albert <dan@solana.com>
* Update docs/src/transaction_fees.md
Co-authored-by: Dan Albert <dan@solana.com>
* addressing Dans comments in #14868
* incorporating pr commits
* trailing whitespaces
* more trailing whitespaces
* remove services link and add plot
* add plots
Co-authored-by: Dan Albert <dan@solana.com>
* Deprecate commitment variants
* Add new CommitmentConfig builders
* Add helpers to avoid allowing deprecated variants
* Remove deprecated transaction-status code
* Include new commitment variants in runtime commitment; allow deprecated as long as old variants persist
* Remove deprecated banks code
* Remove deprecated variants in core; allow deprecated in rpc/rpc-subscriptions for now
* Heavier hand with rpc/rpc-subscription commitment
* Remove deprecated variants from local-cluster
* Remove deprecated variants from various tools
* Remove deprecated variants from validator
* Update docs
* Remove deprecated client code
* Add new variants to cli; remove deprecated variants as possible
* Don't send new commitment variants to old clusters
* Retain deprecated method in test_validator_saves_tower
* Fix clippy matches! suggestion for BPF solana-sdk legacy compile test
* Refactor node version check to handle commitment variants and transaction encoding
* Hide deprecated variants from cli help
* Add cli App comments
* Make exchange listening-for-deposits language stronger
* Update docs/src/integrations/exchange.md
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
* Update from deprecated method
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
* Add optimistically_confirmed field to TransactionStatus
* Update docs
* Convert new field to confirmation_status
* Update docs to confirmationStatus
* Update variants
* Update docs
* Just Confirmed
* Add stake programming documentation
We had some questions about stake programming documentation, and there
wasn't a place that contained information about the stake-o-matic and
other stake development in one place. This adds a page with that
information.
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Update docs/src/staking/stake-programming.md
Co-authored-by: Eric Williams <eric@solana.com>
* Apply suggestions from code review
* Remove trailing whitespace
Co-authored-by: Eric Williams <eric@solana.com>
* docs: Use "msg!" instead of "info!"
* Update docs/src/developing/deployed-programs/developing-rust.md
Co-authored-by: Michael Vines <mvines@gmail.com>
* Fix typo / format
Co-authored-by: Michael Vines <mvines@gmail.com>
To my understanding, the Solana process always logs a UTC timestamp
anyway, so this is not needed. Plus, using PST on servers is really
weird from a systems engineering point of view.
The --rpc-pubsub-enable-vote-subscription flag may be used to enable it.
The current vote subscription is problematic because it emits a
notification for *every* vote, so hundreds a second in a real cluster.
Critically it's also missing information about *who* is voting,
rendering all those notifications practically useless.
Until these two issues can be resolved, the vote subscription is not
much more than a potential DoS vector.
* Test for different ancestors with mismatch bank hash
* Test cleanup
* Remove nondeterministic ancestor check
* Update timestamp bounding feature key
* Update design doc
* Filter recent_timestamps to nodes voting within the last epoch
Co-authored-by: Stephen Akridge <sakridge@gmail.com>
* Clarify the commitment levels based on questions
Many people have asked about what commitment levels mean, and which to
choose. This update includes some of the language at
`sdk/src/commitment_config.rs` and a recommendation for different use
cases.
Additionally, the preflight commitment documentation was out of date,
specifying that "max" was always used, and this is no longer the case.
* Update docs/src/developing/clients/jsonrpc-api.md
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update docs/src/developing/clients/jsonrpc-api.md
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update docs/src/developing/clients/jsonrpc-api.md
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Fix typo
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>