Ryo Onodera
412a5a0d33
Credits auto rewind on vote recreation ( #22546 )
...
* Credits auto rewind on vote recreation
* Update comment
* Improve comments and tests
* Recommended fn rename
* Restore old feature, and replace new feature key
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2022-04-26 15:49:35 -06:00
Michael Vines
533eadd024
Remove StakeState::get_rent_exempt_reserve()
2022-04-25 21:43:04 -07:00
Jeff Washington (jwash)
14ee36a2af
cleanup in vote/stake accounts ( #24608 )
...
* cleanup in vote/stake accounts
* reorder comparisons in accounts_equal
2022-04-23 08:28:21 -05:00
dependabot[bot]
3fda7aaa4d
chore: bump anyhow from 1.0.56 to 1.0.57 ( #24618 )
...
* chore: bump anyhow from 1.0.56 to 1.0.57
Bumps [anyhow](https://github.com/dtolnay/anyhow ) from 1.0.56 to 1.0.57.
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.56...1.0.57 )
---
updated-dependencies:
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-04-22 23:34:34 -06:00
dependabot[bot]
b101e00ffa
chore: bump bytemuck from 1.8.0 to 1.9.1 ( #24604 )
...
* chore: bump bytemuck from 1.8.0 to 1.9.1
Bumps [bytemuck](https://github.com/Lokathor/bytemuck ) from 1.8.0 to 1.9.1.
- [Release notes](https://github.com/Lokathor/bytemuck/releases )
- [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md )
- [Commits](https://github.com/Lokathor/bytemuck/compare/v1.8.0...v1.9.1 )
---
updated-dependencies:
- dependency-name: bytemuck
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
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-04-22 20:50:47 -06:00
dependabot[bot]
948abf00ac
chore: bump pbkdf2 from 0.10.1 to 0.11.0 ( #24394 )
...
* chore: bump pbkdf2 from 0.10.1 to 0.11.0
Bumps [pbkdf2](https://github.com/RustCrypto/password-hashes ) from 0.10.1 to 0.11.0.
- [Release notes](https://github.com/RustCrypto/password-hashes/releases )
- [Commits](https://github.com/RustCrypto/password-hashes/compare/pbkdf2-v0.10.1...pbkdf2-v0.11.0 )
---
updated-dependencies:
- dependency-name: pbkdf2
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
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-04-22 10:47:19 -06:00
Brian Anderson
7206f894eb
Move solana_program::example_mocks declaration to appear last in source files ( #24577 )
2022-04-22 06:43:27 +00:00
behzad nouri
f937fcbd95
updates rewards at epoch boundary using cached accounts
...
Loading vote and stake accounts from accounts-db takes a significant
portion of time updating rewards at epoch boundary.
This commit bypasses accounts-db and instead uses vote and stake
accounts cached in bank stakes:
https://github.com/solana-labs/solana/blob/d2702201c/runtime/src/stakes.rs#L148-L152
These cached accounts are synchronized with accounts-db after each
transaction, and so there should not be any change in the resulting
computation:
https://github.com/solana-labs/solana/blob/d2702201c/runtime/src/bank.rs#L4526
Nevertheless, to avoid any chances of introducing a consensus issue, the
switch to cached account is feature gated.
2022-04-21 15:28:41 +00:00
Justin Starry
d5127abf46
Only add hashes for completed blocks to recent blockhashes ( #24389 )
...
* Only add hashes for completed blocks to recent blockhashes
* feedback
2022-04-21 21:05:29 +08:00
Brian Anderson
658752cda7
And short descriptions to all solana-program modules and macros. ( #24128 )
...
* And short descriptions to all solana-program modules and macros.
Also fill out some of the docs within these modules.
* Update sdk/program/src/lib.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/sanitize.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/pubkey.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* Update hash module docs
* Make solana-program crate docs match Pubkey docs
* Update sdk/program/src/program_memory.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2022-04-20 19:20:17 -06:00
dependabot[bot]
15e30add26
chore: bump js-sys from 0.3.55 to 0.3.57 ( #24485 )
...
* chore: bump js-sys from 0.3.55 to 0.3.57
Bumps [js-sys](https://github.com/rustwasm/wasm-bindgen ) from 0.3.55 to 0.3.57.
- [Release notes](https://github.com/rustwasm/wasm-bindgen/releases )
- [Changelog](https://github.com/rustwasm/wasm-bindgen/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rustwasm/wasm-bindgen/commits )
---
updated-dependencies:
- dependency-name: js-sys
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-04-20 11:54:44 -06:00
Dmitri Makarov
6bf58572ca
Update llvm include path in C toolchain makefile
2022-04-19 21:38:36 -07:00
Jack May
5eb1ba402f
cpi charge for executables ( #24396 )
2022-04-19 19:31:11 -07:00
Justin Starry
2ad1baa753
Add const fn StakeState::size_of and static assertion ( #24416 )
2022-04-20 01:04:12 +08:00
Alexander Meißner
860ecd6572
Deprecate `KeyedAccount` and `StackFrame` ( #24480 )
...
* Marks KeyedAccount as deprecated.
* Marks StackFrame as deprecated.
2022-04-19 17:11:04 +02:00
Alexander Meißner
db3dd458a4
Reverts the feature removal of: ( #24476 )
...
Remove `NativeLoader` from program runtime (#24296 )
2022-04-19 17:10:35 +02:00
behzad nouri
16222553b8
defines const fn for serialized size of VoteState, Feature and Nonce ( #24435 )
...
bincode::serialized_sized requires constructing a temporary object and
it is slow. Silently changing serialized size of these structs can also
be a backward incompatible change.
This commit instead hard-codes serialized size of VoteState, Feature and
Nonce, and defines the functions as const. Added tests verify hard-coded
values.
2022-04-19 13:10:14 +00:00
Dmitri Makarov
f58ebff44e
Update C toolchain linker script to match the rust toolchain script
2022-04-18 17:35:38 -07:00
behzad nouri
039488b562
drops redundant turbine propagation path ( #24351 )
...
Most nodes in the cluster receive the same shred from two different
nodes: parent, and the first node of their neighborhood:
https://github.com/solana-labs/solana/blob/a8c695ba5/core/src/cluster_nodes.rs#L178-L197
Because of the erasure codings, half of the shreds are already
redundant. So this redundant propagation path will only add extra
overhead.
Additionally the very first node of the broadcast tree has 2x fanout
(i.e. 400 nodes) which adds too much load at one node.
This commit simplifies the broadcast tree by dropping the redundant
propagation path and removing the 2x fanout at root node.
2022-04-19 00:11:29 +00:00
Caio
b7bf00a9ee
Implement From<[u8; 32]> for Pubkey and Hash ( #24427 )
2022-04-18 07:36:31 +00:00
Tao Zhu
2970507d7c
remove unused file
2022-04-17 19:26:24 -05:00
Tao Zhu
85281de981
move number utility functions to sdk; log error if cost adjust overflows i64
2022-04-17 19:26:24 -05:00
arusso-certik
41a9eb1bf2
Update doc for sol_memset ( #24101 )
2022-04-16 22:11:19 +08:00
Tyera Eulberg
a0e3e3c193
Add Ident case ( #24390 )
2022-04-15 16:27:25 -06:00
sakridge
1b7d1f78de
Implement QUIC connection warmup service for future leaders ( #24054 )
...
* Increase connection timeouts
* Bump quic connection cache to 1024
* Use constant for quic connection timeout and add warm cache service
* Fixes to QUIC warmup service
* fix check failure
* fixes after rebase
* fix timeout test
Co-authored-by: Pankaj Garg <pankaj@solana.com>
2022-04-15 12:09:24 -07:00
Jon Cinque
d54ec406df
sdk: Add --jobs parameter in build/test bpf ( #24359 )
2022-04-15 13:49:43 +02:00
Brooks Prumo
2456a7be35
Deprecate `MINIMUM_STAKE_DELEGATION` ( #24329 )
2022-04-14 11:59:18 -05:00
Michael Vines
57ff7371b4
Add StakeInstruction::DeactivateDelinquent
2022-04-14 01:49:22 -04:00
dependabot[bot]
b9caa8cdfb
chore: bump uriparse from 0.6.3 to 0.6.4 ( #23799 )
...
* chore: bump uriparse from 0.6.3 to 0.6.4
Bumps [uriparse](https://github.com/sgodwincs/uriparse-rs ) from 0.6.3 to 0.6.4.
- [Release notes](https://github.com/sgodwincs/uriparse-rs/releases )
- [Changelog](https://github.com/sgodwincs/uriparse-rs/blob/master/RELEASES.md )
- [Commits](https://github.com/sgodwincs/uriparse-rs/commits )
---
updated-dependencies:
- dependency-name: uriparse
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2022-04-13 19:33:42 -06:00
Brooks Prumo
e146e860e2
Add convenience function for programs to get minimum delegation ( #24175 )
2022-04-13 14:41:52 -05:00
Jack May
2e0bc89ec4
featurize rejection of callx r10 instructions ( #24309 )
2022-04-13 11:09:33 -07:00
Alexander Meißner
b8ca1bcb68
Remove `NativeLoader` from program runtime ( #24296 )
...
* Deletes native_loader.rs
* Deletes the feature: remove_native_loader
2022-04-13 12:15:28 +02:00
Jack May
a43ff3bbcb
cleanup ( #24299 )
2022-04-12 17:52:47 -07:00
Jack May
138f04a49f
featurize bpf function hash collision fix ( #24262 )
2022-04-12 17:52:32 -07:00
Dmitri Makarov
6b611e1c52
Bump bpf-tools to v1.25
...
- Tweak linker script
Ensure that all read only sections end up in one segment, and
everything else in other segments. Discard .eh_frame, .hash and
.gnu.hash since they are unused.
- Don't create invalid string slices in stdout/stderr on Solana
- Report exceeded stack size as a warning if dynamic frames are off
- Native support for signed division in SBF
Adds BPF_SDIV, which is enabled only for the SBF subtarget.
- Introduce dynamic stack frames and the SBFv2 flag
Dynamic stack frames are currently opt-in and enabled setting
cpu=sbfv2. When sbfv2 is used, ELF files are flagged with
e_flags=EF_SBF_V2 so the runtime can detect it and react
accordingly.
2022-04-12 10:51:15 -07:00
Jack May
b035991c35
migrate memberes from deprecated structs ( #24263 )
2022-04-12 09:49:42 -07:00
Michael Vines
a2be810dbc
Resolve new clippy complaints
2022-04-11 18:15:03 -04:00
Brian Anderson
b38833923d
Use atomics instead of mutable statics in slot_hashes ( #24091 )
2022-04-11 15:12:50 -06:00
Ikko Ashimine
ecfa1964ff
sdk: fix typo in lib.rs ( #24240 )
...
recieved -> received
2022-04-11 22:36:08 +08:00
Dmitri Makarov
689064a4f4
Bump sbf-tools version to v1.24
2022-04-08 09:06:40 -07:00
ignassew
0c2d9194dd
Fix typo in solana-program lib.rs ( #24170 )
2022-04-07 11:23:54 -06:00
behzad nouri
d0b850cdd9
removes turbine peers shuffle patch feature
2022-04-05 12:04:12 +00:00
behzad nouri
855801cc95
removes deterministic-shred-seed feature
2022-04-05 12:04:12 +00:00
Brooks Prumo
b14b8b1efa
Un-deprecate `MINIMUM_STAKE_DELEGATION` ( #24089 )
2022-04-03 15:09:41 -05:00
Brooks Prumo
2af6753808
Add GetMinimumDelegation stake program instruction ( #24020 )
2022-04-02 05:11:10 +00:00
Justin Starry
792bbf75ab
Support sending versioned txs in AsyncClient ( #23982 )
2022-04-02 11:12:02 +08:00
HaoranYi
0b7d0476c8
fix a typo ( #24070 )
2022-04-01 15:16:51 -07:00
Justin Starry
97170a5d38
Bump bytemuck version in solana-program for consistency ( #24043 )
2022-04-01 22:25:53 +08:00
Alexander Meißner
1b45c509c3
Refactor: Use `InstructionContext::get_instruction_data()` ( #24014 )
...
* Adds transaction_context and instruction_context where invoke_context.get_keyed_accounts() is used.
* Use instruction_context.get_instruction_data() instead of an explicit parameter.
* Removes instruction_data parameter from Executor::execute().
* Removes instruction_data parameter from ProcessInstructionWithContext.
2022-04-01 15:48:05 +02:00
Justin Starry
88326533ed
Add SDK support for creating transactions with address table lookups ( #23728 )
...
* Add SDK support for creating transactions with address table lookups
* fix bpf compilation
* rename compile error variants to indicate overflow
* Add doc tests
* fix bpf compatibility
* use constant for overflow tests
* Use cfg_attr for dead code attribute
* resolve merge conflict
2022-03-31 17:44:20 +08:00