Commit Graph

22796 Commits

Author SHA1 Message Date
Proph3t e3ac4258ee
chore: Removes InstructionContext::get_instruction_accounts_lamport_sum() (#31741)
* Removes `InstructionContext::get_instruction_accounts_lamport_sum()`
2023-06-02 09:35:22 +02:00
Yihau Chen 857f7f9aaa
ci: make loader v4 program publish = true (#31932)
* update description

* publish solana-loader-v4-program
2023-06-02 07:24:17 +00:00
samkim-crypto 169fc2a1e6
[zk-token-sdk] Rename `RangeProof{64,128,256}` to `RangeProofU{64,128,256}` (#31910)
rename `RangeProof{64,128,256}` to `RangeProofU{64,128,256}`
2023-06-02 15:59:25 +09:00
Illia Bobyr 4353ac6797
Pass Arc<AtomicBool> by value, not by reference. (#31916)
`Arc` is already a reference internally, so it does not seem to be
beneficial to pass a reference to it.  Just adds an extra layer of
indirection.

Functions that need to be able to increment `Arc` reference count need
to take `Arc<AtomicBool>`, but those that just want to read the
`AtomicBool` value can accept `&AtomicBool`, making them a bit more
generic.

This change focuses specifically on `Arc<AtomicBool>`.  There are other
uses of `&Arc<T>` in the code base that could be converted in a similar
manner.  But it would make the change even larger.
2023-06-01 17:25:48 -07:00
Yueh-Hsuan Chiang 2b04f28c7b
[TieredStorage] AccountMetaFlags (#31913)
#### Summary of Changes
This PR implements AccountMetaFlags, which will later be used in
the tiered accounts storage to support optional fields.

#### Test Plan
Unit tests are included in this PR.
2023-06-01 14:48:27 -07:00
Illia Bobyr e0389ba90f
GeyserPluginService: Use common `exit` flag. (#31915)
Geyser plugin thread would never shutdown correctly, as it is using an
exit flag that is never set.
2023-06-01 11:20:59 -07:00
Yueh-Hsuan Chiang 1302962521
[TieredStorage] Support Lz4 in ByteBlockWriter (2/N) (#31862)
#### Summary of Changes
Support Lz4 in ByteBlockWriter.

#### Test Plan
Added test cases for Lz4.
Tested in mnb w/ the prototype implementation of the tiered storage (#30626)
2023-06-01 10:29:08 -07:00
Pankaj Garg 449f92e32c
Reverify programs that are extended using ExtendProgram (#31886) 2023-06-01 06:17:42 -07:00
samkim-crypto 0495051a67
[zk-token-sdk] Add `VerifyGroupedCiphertext2HandlesValidity` and `VerifyBatchedGroupedCiphertext2HandlesValidity` proof instructions (#31816)
* add grouped ciphertext validity proof data

* add batched grouped ciphertext validity proof data

* rename proof contexts and data for consistency

* add grouped ciphertext validity proof instructions

* Update zk-token-sdk/src/instruction/batched_grouped_ciphertext_validity.rs

Co-authored-by: Tyera <teulberg@gmail.com>

---------

Co-authored-by: Tyera <teulberg@gmail.com>
2023-06-01 15:58:36 +09:00
Yihau Chen 405db3e436
ci: fix publish crate version checking (#31894)
* ci: fix publish crate version checking

* ci: add warning when publish crates don't use worksapce version
2023-06-01 14:28:10 +08:00
steviez 1d6b03358f
ledger-tool: Rename load_frozen_forks() and adjust error messages (#31903)
This function has morphed as it has been updated, and the existing
function name is a bit of misnomer. Update the function name to use
terminology that I think is more clear and more consistent with what we
use core/src/validator.rs. Additionally, adjust the error messages to be
more clear about what exactly is wrong for when we can't process.
2023-05-31 21:12:49 -05:00
dependabot[bot] ecf460c655
Bump csv from 1.2.1 to 1.2.2 (#31896)
Bumps [csv](https://github.com/BurntSushi/rust-csv) from 1.2.1 to 1.2.2.
- [Commits](https://github.com/BurntSushi/rust-csv/compare/1.2.1...1.2.2)

---
updated-dependencies:
- dependency-name: csv
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-31 20:03:56 -06:00
Tyera 78a61666ee
Add field for feature-gate-issue deployment considerations (#31901) 2023-05-31 20:02:37 -06:00
Ashwin Sekar 1b79875f51
Relax gossip to banking stage filtering to allow refreshed votes (#31879) 2023-05-31 23:50:36 +00:00
samkim-crypto 9216ff8c3e
[zk-token-sdk] Refactor transfer instruction (#31848)
* refactor `instruction::transfer` and `instruction::transfer_with_fee` into separate submodule

* rename `transfer.rs` to `transfer_without_fee.rs` to satisfy clippy

* refactor transfer encryptions into separate submodule

* refactor `FeeParameters` to parent transfer module

* refactor `Role` and ciphertext arithmetic specific to transfer instruction into transfer submodule

* fix visibility

* cargo fmt

* change `transfer_with_fee` and `transfer_without_fee` to `with_fee` and `without_fee`

* fix rebase errors
2023-06-01 06:55:23 +09:00
Lijun Wang 944310b751
Correct misleading comments for repair test (#31844)
* Correct misleading comments for repair test
2023-05-31 13:23:23 -07:00
steviez debe794987
Replace improper &Arc<...> with Arc<...> in Bank and Accounts (#31892)
The callstack updated in this PR passed an &Arc<...> down only to have
the bottom level clone the reference. Thus, we are giving shared
ownership so the reference is a bit redundant and arguably obscures the
intention to clone further down the callstack.
2023-05-31 12:36:44 -05:00
Yihau Chen 420784d19e
chore: use workspace's tempfile (#31895) 2023-05-31 16:58:40 +00:00
Brooks 2fc1dc1bf6
EpochAccountsHash tests no longer ignore shutdown errors (#31883) 2023-05-31 09:11:06 -04:00
Brooks 9220e53e23
ledger-tool: Clean up load_bank_forks() (#31870) 2023-05-31 06:50:33 -04:00
Bernie Blume c65605802a
Correct LICENSE to conform with https://apache.org/licenses/LICENSE-2.0 (#31860)
https://apache.org/licenses/LICENSE-2.0 lays out the correct way to apply the Apache 2.0 license to a work.

There is a section named "HOW TO APPLY THE APACHE LICENSE TO YOUR WORK". It says that applying the license to a work is easy: "Include a copy of the Apache License, typically in a file called LICENSE, in your work".

However, in the Solana repo, the contents of the file LICENSE is NOT a copy of the Apache 2.0 license. Instead, it is the text mention further down on that page, that is intended to be used as a SECTION within a specific FILE of a work, with the goal of applying the Apache license only to that SPECIFIC FILE.

This PR corrects these issue and places the correct contents of the Apache 2.0 license, as per https://apache.org/licenses/LICENSE-2.0, into the LICENSE file.
2023-05-31 03:06:42 +00:00
samkim-crypto 502f118931
[zk-token-sdk] Add `GroupedElGamalCiphertext` type (#31849)
* add `GroupedElGamalCiphertext` type

* add `GroupedElGamalCiphertext` type in `zk_token_elgamal::pod`

* cargo fmt

* Apply suggestions from code review

Co-authored-by: Tyera <teulberg@gmail.com>

* cargo fmt

* add explanation on `expected_byte_length`

* use `checked_add` and `checked_mul`

---------

Co-authored-by: Tyera <teulberg@gmail.com>
2023-05-31 10:01:44 +09:00
dependabot[bot] 1af1d42b9a
Bump chrono from 0.4.24 to 0.4.26 (#31884)
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.24 to 0.4.26.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](chronotope/chrono@v0.4.24...v0.4.26)

---
updated-dependencies:
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Signed-off-by: illia.bobyr@solana.com
2023-05-30 16:36:28 -07:00
Brooks 8e191bbc56
Downgrades log to warn if reading bank snapshot from dir fails (#31885) 2023-05-30 19:35:06 -04:00
Yueh-Hsuan Chiang 33d64c6b2f
[TieredStorage] Add doc comments for byte_block.rs (#31863)
#### Summary of Changes
Add doc comments for byte_block.rs

#### Test Plan
This is a comment-only PR.  No code change.
2023-05-30 16:25:25 -07:00
samkim-crypto e4fe9335e7
[zk-token-sdk] Refactor `zk-token-elgamal` conversion code for authenticated encryption, range proof, and sigma proof types (#31855)
* refactor convert logic for `AeCiphertext`

* refactor convert logic for `RangeProof`

* refactor convert logic for sigma proof types

* Apply suggestions from code review

Co-authored-by: Tyera <teulberg@gmail.com>

---------

Co-authored-by: Tyera <teulberg@gmail.com>
2023-05-31 08:12:38 +09:00
dependabot[bot] 66558fb5c4
Bump ctrlc from 3.3.1 to 3.4.0 (#31878)
Bumps [ctrlc](https://github.com/Detegr/rust-ctrlc) from 3.3.1 to 3.4.0.
- [Release notes](https://github.com/Detegr/rust-ctrlc/releases)
- [Commits](Detegr/rust-ctrlc@3.3.1...3.4.0)

---
updated-dependencies:
- dependency-name: ctrlc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: illia.bobyr@solana.com
2023-05-30 15:49:49 -07:00
dependabot[bot] 2410b34743
Bump openssl from 0.10.52 to 0.10.53 (#31865)
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.52 to 0.10.53.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](sfackler/rust-openssl@openssl-v0.10.52...openssl-v0.10.53)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Signed-off-by: illia.bobyr@solana.com
2023-05-30 15:48:38 -07:00
dependabot[bot] 8b3f0c47e6
Bump once_cell from 1.17.1 to 1.17.2 (#31868)
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.17.1 to 1.17.2.
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](matklad/once_cell@v1.17.1...v1.17.2)

---
updated-dependencies:
- dependency-name: once_cell
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Signed-off-by: illia.bobyr@solana.com
2023-05-30 15:44:05 -07:00
dependabot[bot] bd1a109036
Bump log from 0.4.17 to 0.4.18 (#31856)
* Bump log from 0.4.17 to 0.4.18

Bumps [log](https://github.com/rust-lang/log) from 0.4.17 to 0.4.18.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.17...0.4.18)

---
updated-dependencies:
- dependency-name: log
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-05-30 16:05:16 -06:00
dependabot[bot] 6ef0a223c9
Bump const_format from 0.2.30 to 0.2.31 (#31867)
Bumps [const_format](https://github.com/rodrimati1992/const_format_crates) from 0.2.30 to 0.2.31.
- [Release notes](https://github.com/rodrimati1992/const_format_crates/releases)
- [Changelog](https://github.com/rodrimati1992/const_format_crates/blob/master/Changelog.md)
- [Commits](https://github.com/rodrimati1992/const_format_crates/commits)

---
updated-dependencies:
- dependency-name: const_format
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-30 15:58:51 -06:00
Brooks c569a37713
Handle errors when sending an accounts package during shutdown (#31874) 2023-05-30 17:42:33 -04:00
Kevin Ji 8c73a2cae9
Bump borsh to 0.10.3 (#30975)
* Bump borsh to 0.10.3

transaction-status relies on SPL which still requires borsh 0.9, so
until SPL also gets updated that package alone will use an older version of
borsh.

* ci: Temporarily disable spl and openbook-dex builds
2023-05-30 23:33:21 +02:00
Yueh-Hsuan Chiang 5334efd63c
Byte-blocks utils for TieredStorage (1/N) (#31815)
#### Summary of Changes
This PR includes the util structs for writing byte blocks, which will be used
by the TieredStorage writer (currently used in the prototype #30626).

The PR only includes the Raw encoding format.  Will add more in subsequent PRs.

#### Test Plan
Tested in mnb with the prototype implementation of the tiered-storage (#30626)
Unit tests are also included in this PR.
2023-05-30 14:14:29 -07:00
Tyera 6bd4ae6955
Clean up Spl type conversions (#31845)
* Use spl-token ids directly in program-id checks

* Remove id redefinitions

* Deprecate pubkey_from_spl_token and remove usage

* Deprecate spl_token_pubkey and remove usage

* Deprecate native mint helpers and remove usage

* Deprecate spl_token_instruction and remove usage
2023-05-30 14:34:38 -06:00
Will Hickey f63f811170
Add Mergify rules for v1.16 backport (#31875) 2023-05-30 15:07:05 -05:00
Brooks a4ff9be5fb
Handle errors when sending a snapshot package during shutdown (#31873) 2023-05-30 16:06:10 -04:00
Will Hickey b799b8632c
Bump version to 1.17 (#31806) 2023-05-30 15:04:47 -05:00
Lijun Wang 0426a2d96e
Flkay quic test in check_block_multiple_connections (#31871)
Flkay quic test -- put the test code in else condition
2023-05-30 12:43:07 -07:00
dependabot[bot] 8203c6e85a
Bump indicatif from 0.17.3 to 0.17.4 (#31857)
* Bump indicatif from 0.17.3 to 0.17.4

Bumps [indicatif](https://github.com/console-rs/indicatif) from 0.17.3 to 0.17.4.
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](https://github.com/console-rs/indicatif/compare/0.17.3...0.17.4)

---
updated-dependencies:
- dependency-name: indicatif
  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

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2023-05-30 10:34:01 -06:00
Jeff Washington (jwash) 6c520396cd
bank process_new_epoch takes parent_height (#31820) 2023-05-30 08:58:40 -05:00
Jeff Washington (jwash) 588a7a4e53
add RewardsStoreMetrics for partitioned rewards (#31819) 2023-05-30 08:58:00 -05:00
Jeff Washington (jwash) 0c64e26d53
partitioned rewards helper functions (#31818) 2023-05-30 08:57:31 -05:00
Jeff Washington (jwash) 03b260a29f
allow stake tests to wait for rewards payout (#31821) 2023-05-30 08:56:02 -05:00
Michael db8f118ec6
Add --active-stake-alert-threshold to watchtower (#31858)
* Add --active-stake-alert-threshold to watchtower

* Fix duplicate code

* Adjust CLI help comment

* Fmt

* Add percentage check to cli arg

* fix import

* fmt
2023-05-29 23:33:11 +00:00
samkim-crypto f7b34e46ce
[zk-token-sdk] Refactor `zk-token-elgamal` conversion code for `elgamal` and `pedersen` pod types (#31846)
* refactor `DecryptHandle` into `pod::elgamal` from `pod::pedersen`

* refactor conversion for elgamal

* refactor conversion for pedersen

* change variable names

* add brief description of the types

* fix variable names in comments
2023-05-29 12:32:53 +09:00
samkim-crypto 24a4563484
[zk-token-sdk] Update equality proof abbreviated module names to non-abbreviated names (#31851)
* rename `sigma_proof::ctxt_comm_equality_proof` to non-abbreviated name

* rename `sigma_proof::ctxt_ctxt_equality_proof` to non-abbreviated name

* rename `instruction::ctxt_ctxt_equality` to non-abbreviated name
2023-05-29 09:49:17 +09:00
bji 0957a50a34
Add snapshots arguments to the ledger tool command because numerous o… (#31847)
Add snapshots arguments to the ledger tool command because numerous operators
have been tripped up by not realizing that these arguments are needed for
fairly standard configs.  The additional arguments are harmless for those
who don't separate snapshots into separate dirs, but essential for those
who do.
2023-05-27 15:03:59 +00:00
samkim-crypto 2ebf38efd0
[zk-token-sdk] Add ciphertext-commitment equality proof instruction (#31808)
* add ciphertext-commitment proof data

* add ciphertext-commitment proof instruction

* update proof program processor for ciphertext-commitment equality proof

* cargo fmt

* update compute units

* rename submodule `ctxt_comm_equality` to `ciphertext_commitment_equality`

* update import statements

* fix mixed conflict

* remove `native_programs_consume_cu`
2023-05-27 11:25:29 +09:00
samkim-crypto 93efc13bbf
[zk-token-sdk] Add encryption error variant `SeedLengthTooShort` and remove variant `PubkeyDoesNotExist` (#31840) 2023-05-27 09:14:13 +09:00