Skip to content
This repository has been archived by the owner on Jan 13, 2025. It is now read-only.

v1.9/fix build #22311

Closed
wants to merge 150 commits into from
Closed

Conversation

brooksprumo
Copy link
Contributor

Problem

Summary of Changes

Fixes #

mergify bot and others added 30 commits December 5, 2021 01:08
* Bump blockhash/fee api check versions

* Bump snapshot api check version

(cherry picked from commit 3e5a5a8)

Co-authored-by: Tyera Eulberg <[email protected]>
…olana-labs#21620)

solana-labs#17004
removed position field from coding-shred-header because as it stands the
field is redundant and unused.
However, with the upcoming changes to erasure coding schema this field
will no longer be redundant and needs to be populated.

(cherry picked from commit cd17f63)

Co-authored-by: behzad nouri <[email protected]>
(cherry picked from commit f3c2803)

Co-authored-by: Brian Anderson <[email protected]>
…#21528) (solana-labs#21637)

* Rework docs for Pubkey::find_program_address and friends

* Remove circular dependency

* Minor tweaks

* Apply suggestions from code review

Co-authored-by: Tyera Eulberg <[email protected]>

* Sort solana-program dev-dependencies

Co-authored-by: Tyera Eulberg <[email protected]>
(cherry picked from commit d1c101c)

Co-authored-by: Brian Anderson <[email protected]>
…olana-labs#21639) (solana-labs#21645)

* Reject vote withdraws that create non-rent-exempt accounts (solana-labs#21639)

* Reject vote withdraws that create non-rent-exempt accounts

* fix mocked instruction test

(cherry picked from commit e123883)

# Conflicts:
#	sdk/src/feature_set.rs

* resolve conflicts

Co-authored-by: Justin Starry <[email protected]>
… (solana-labs#21653)

Add tests to StakeDelegations and StakeHistory to ensure that the outer
types serialize and deserialize correctly to/from the inner types.

(cherry picked from commit da4015a)

Co-authored-by: Brooks Prumo <[email protected]>
…1579) (solana-labs#21649)

* create-vote-account: add offline, nonce, fee_payer capabilities

* vote-authorize: add offline, nonce, fee-payer

* vote-update-things: add offline, nonce, fee-payer

* withdraw-vote: add offline, nonce, fee-payer

* close-vote-acct: add fee-payer

* Allow WithdrawVoteAccount to empty account, since offline operations cannot perform account state queries as in CloseVoteAccount

* Fix lint

* Update offline-signing docs

* Add some parse unit tests

* Add offline integration test

(cherry picked from commit 873fe81)

Co-authored-by: Tyera Eulberg <[email protected]>
* Fixup flaky tests

* Fixup listeners

(cherry picked from commit f493a88)

Co-authored-by: carllin <[email protected]>
…ort solana-labs#21656) (solana-labs#21658)

* Add option to reclaim accounts-cluster-bench accounts/lamports (solana-labs#21656)

* Add option to reclaim accounts-cluster-bench accounts/lamports

* lint

(cherry picked from commit 205fd95)

# Conflicts:
#	accounts-cluster-bench/Cargo.toml

* Fix conflict

Co-authored-by: Tyera Eulberg <[email protected]>
Co-authored-by: Tyera Eulberg <[email protected]>
* Update Solflare description

* Add Solflare to mobile wallets

* Sort mobile wallets alphabetically

* Sort web wollets alphabetically

* Update docs/src/wallet-guide/apps.md

* Update docs/src/wallet-guide/apps.md

* Update docs/src/wallet-guide/web-wallets.md

* Update docs/src/wallet-guide/web-wallets.md

* Update docs/src/wallet-guide/apps.md

Co-authored-by: Justin Starry <[email protected]>
(cherry picked from commit a2477c1)

Co-authored-by: Boris Vujicic <[email protected]>
…ssage.

The solana-program crate can be used in certain embedded environments (HSMs) where
the source of entropy, whether used for cryptographic purposes or not, is tightly
controlled. In these cases, using the default OS source of entrophy is not always
acceptable. Thus, using the default Rust stdlib entropy source for seeding its
default hasher, is prohibited. This means any use of HashMap/HashSet must be able
to be constructed and used with a custom hasher implementation.

This commit removes the use of Itertools::unique() to dedupe Instructions that are
being compiled into a new Message, which uses a default-configured HashMap
under-the-hood. Instead, we use a BTreeSet which does not invoke any entropy
source in order to seed a hash implementation.

(cherry picked from commit 4da435f)
… instructions in process_message. (solana-labs#21671) (solana-labs#21684)

- Lets InvokeContext::process_cross_program_instruction() handle the first invocation depth too.
- Marks InvokeContext::verify(), InvokeContext::verify_and_update() and InvokeContext::process_executable_chain() private.
- Renames InvokeContext::process_cross_program_instruction() to InvokeContext::process_instruction().
- Removes InvokeContext::new_mock_with_sysvars().

(cherry picked from commit 1df8883)

Co-authored-by: Alexander Meißner <[email protected]>
…e provided as input (solana-labs#21716)

(cherry picked from commit 824994d)

Co-authored-by: Michael Vines <[email protected]>
(cherry picked from commit 03a956e)
(cherry picked from commit f4babb7)

# Conflicts:
#	Cargo.lock
#	programs/bpf/Cargo.lock
…olana-labs#21759)

* Expand docs for Pubkey::create_program_address

* Update sdk/program/src/pubkey.rs

Co-authored-by: Tyera Eulberg <[email protected]>
(cherry picked from commit 6919c48)

Co-authored-by: Brian Anderson <[email protected]>
* Fixup typo

* Simplify types slightly

(cherry picked from commit c1386d6)

Co-authored-by: Tyera Eulberg <[email protected]>
solana-labs#21773)

* Migrate from address maps to address lookup tables

* update sanitize error

* cargo fmt

* update abi

(cherry picked from commit 6c108c8)

Co-authored-by: Justin Starry <[email protected]>
mvines and others added 27 commits January 3, 2022 12:54
…s#22192) (solana-labs#22248)

* removes epoch_authorized_voters from VoteTracker (solana-labs#22192)

solana-labs#22169
verifies authorized-voter early on in vote-listener pipeline; and so
VoteTracker no longer needs to maintain and check for epoch authorized
voters.

(cherry picked from commit 69d71f8)

# Conflicts:
#	core/src/cluster_info_vote_listener.rs

* removes backport merge conflicts

Co-authored-by: behzad nouri <[email protected]>
…er (solana-labs#22245) (solana-labs#22257)

Flip iter operations to keep associated address/header/packets together

Before this change, if cast_socket_addr() returned a None for any
address/header pair, the subsequent zip() would misalign the
address/header pair and packet. So, this change zips all three together,
then does filter_map() so keep things aligned.

Additionally, compute total_size inline to avoid running through packets
a second time.

(cherry picked from commit 20b61e2)

Co-authored-by: steviez <[email protected]>
…ted later. (solana-labs#22193) (solana-labs#22259)

* Fixed issue solana-labs#22124 -- missing historical data if slot updated later.

* Fixed a couple of comments

(cherry picked from commit 5b6027b)

Co-authored-by: Lijun Wang <[email protected]>
* Fix typo markdown link

* Add missing punctuation full stop

(cherry picked from commit 9665da9)

Co-authored-by: glihm <[email protected]>
…-labs#22201) (solana-labs#22263)

* Limit number of accounts that a transaction can lock (solana-labs#22201)

(cherry picked from commit 2b5e00d)

# Conflicts:
#	accountsdb-plugin-postgres/src/postgres_client/postgres_client_transaction.rs
#	runtime/src/accounts.rs
#	runtime/src/bank.rs
#	sdk/src/feature_set.rs
#	sdk/src/transaction/error.rs
#	storage-proto/proto/transaction_by_addr.proto
#	storage-proto/src/convert.rs

* resolve conflicts

Co-authored-by: Justin Starry <[email protected]>
…#22273)

* removes seed and slot fields from Packet.Meta

solana-labs@507367e
updated window-service to send shreds (as opposed to packets) to
retransmit-stage and so seed and slot fields in Packet.Meta are unused:
https://github.com/solana-labs/solana/blob/d6ec103be/sdk/src/packet.rs#L27-L28

(cherry picked from commit aa9f7ed)

* uses std::net::IpAddr type for Packet.Meta.addr

(cherry picked from commit 73a7741)

# Conflicts:
#	streamer/src/streamer.rs

* adds bitflags to Packet.Meta

Instead of a separate bool type for each flag, all the flags can be
encoded in a type-safe bitflags encoded in a single u8:
https://github.com/solana-labs/solana/blob/d6ec103be/sdk/src/packet.rs#L19-L31

(cherry picked from commit 01a096a)

# Conflicts:
#	sdk/Cargo.toml

* removes backport merge conflicts

Co-authored-by: behzad nouri <[email protected]>
…olana-labs#22069) (solana-labs#22103)

* Update tests to demonstrate that program id account info for CPI is optional

* Clean up comments that say that program id account info is required

(cherry picked from commit ec7536f)

Co-authored-by: Justin Starry <[email protected]>
) (solana-labs#22283)

* Update address map proposal to improve dev experience

* another revision to match implementation

(cherry picked from commit 0224a8b)

Co-authored-by: Justin Starry <[email protected]>
) (solana-labs#22280)

* removes total-size from return value of recv_mmsg

(cherry picked from commit 4b24499)

* patches bug in recv_mmsg when npkts != nrecv

If recv_mmsg receives 2 packets where the first one is filtered out,
then it returns npkts == 1:
https://github.com/solana-labs/solana/blob/01a096adc/streamer/src/recvmmsg.rs#L104-L115

But then streamer::packet::recv_from will erroneously keep the 1st
packet and drop the 2nd one:
https://github.com/solana-labs/solana/blob/01a096adc/streamer/src/packet.rs#L34-L49

To avoid this bug, this commit updates recv_mmsg to always return total
number of received packets. If socket address cannot be correctly
obtained, it is left as the default value which is UNSPECIFIED:
https://github.com/solana-labs/solana/blob/01a096adc/sdk/src/packet.rs#L145

(cherry picked from commit 379feec)

Co-authored-by: behzad nouri <[email protected]>
…n (backport solana-labs#22215) (solana-labs#22289)

* Refactor: Improve type safety and readability of transaction execution (solana-labs#22215)

* resolve conflicts

Co-authored-by: Justin Starry <[email protected]>
@brooksprumo
Copy link
Contributor Author

Closing PR. Should be targetting v1.9.

@brooksprumo brooksprumo closed this Jan 5, 2022
@brooksprumo brooksprumo deleted the v1.9/fix-build branch January 5, 2022 21:06
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Consensus (bank hash) mismatch between v1.8.10 and tip of master/v1.9.1 (mainnet)