#### Problem
The binary of token-2022 bundled in program-test and fetch-spl.sh is
very out of date with what's currently running on mainnet.
#### Summary of changes
Update the shared object and version to fetch.
* sdk: Add `deserialize_into` to entrypoint
#### Problem
The main entrypoint for Solana programs allocates a vector on the heap
and pushes AccountInfos to it. Allocation is expensive.
#### Summary of changes
Add a new version of `deserialize` called `deserialize_into`, which
expects a slice of `MaybeUninit<AccountInfo>`. The entrypoint can
allocate a maximum array of AccountInfos on the stack and then pass it
in. This new version of the entrypoint saves roughly 30 CUs per unique
account passed to the program.
In an earlier version, I had the new function return the array itself,
but this used slightly more CUs, and didn't work for an array with 64
elements. Let me know how it looks!
* Call instruction processor in non-inlined function
* Add test for max supported accounts in a transaction
* Refactor extracting account infos and instruction data
* Changes required from rebase
* Add clippy allow
* Add panic message if too many accounts provided
* Add `entrypoint_no_alloc!` and revert behavior in entrypoint!
* Use entrypoint_no_alloc! everywhere except noop
* Comment why noop program works the way it does
* Add limit in doc-string
* CHANGELOG: Add entry for entrypoint
* stake: Remove redelegate code and tests
* Mark stake flags as deprecated
* Remove usage of feature gate
* Add a changelog entry for the removal
* Remove repeated #[allow(deprecated)]s
* Re-add "redelegate-stake" command
* Remove feature
* Make CI happy -> `hidden_unless_forced()`
* clippy: allow dead_code for SubscriptionToken
* clippy: allow dead_code for GraphVoteAccountModeError
* clippy: allow dead_code for DroppableTask
* remove the string in the GraphVoteAccountModeError
* abort the joinhandle when drop
* only trace JoinHandle in the drop
* add comment
* Persist EpochRewards sysvar between reward intervals
* Adjust initial EpochRewards balance to ensure it is not debited out of existence
* Set EpochRewards::active = false at end of distribution
* Fix tests
* Extend test to 2 epochs, assert sysvar still exists
* Stop adjusting EpochRewards balance based on rewards
* Fix tests
* Review suggestions
RuntimeConfig doesn't use anything SVM specific and logically belongs
in program runtime rather than SVM. This change moves the definition
of RuntimeConfig struct from the SVM crate to program-runtime and
adjusts `use` statements accordingly.
* Update genesis processing to have a fallback collector id for tests
* DCOU-ify the collector id for tests parameter (#1902)
* wrap test_collector_id in DCOU
* rename param to collector_id_for_tests
* fix program test
* fix dcou
---------
Co-authored-by: Brooks <brooks@prumo.org>
* Update toml and lockfiles
* account-decoder: Add group and group member extensions
* transaction-status: Add token group + pointer extensions
* program-test: Update token-2022 binary
* Initialize fork graph in program cache during bank_forks creation
* rename BankForks::new to BankForks::new_rw_arc
* fix compilation
* no need to set fork_graph on insert()
* fix partition tests