Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor - Makes loader-v4 the default #2796

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

Lichtso
Copy link

@Lichtso Lichtso commented Aug 30, 2024

Problem

Loader-v4 was originally planned as a PRv2 loader, but will be used as default loader (superseding loader-v3) in PRv1 now.

Summary of Changes

  • Renames and rekeys enable_program_runtime_v2_and_loader_v4 to enable_loader_v4.
  • Disables new deployments on loader-v3 when the feature is enabled.
  • Adds loader-v4 to write lock demotion exemptions. Otherwise loader-v4 programs could not be modified as they would always be readonly.
  • WIP: Adjusts tests:
  • Removes test_program_upgradeable_locks() (which was introduced in Prevent the invoke and upgrade of programs in the same tx batch solana-labs/solana#14653) and is superseded by test_program_sbf_invoke_in_same_tx_as_redeployment().
  • Merges test_program_sbf_invoke_upgradeable() into test_program_sbf_upgrade().
  • Merges test_program_sbf_invoke_upgradeable_via_cpi() and test_program_sbf_set_upgrade_authority_via_cpi() into test_program_sbf_upgrade_via_cpi().

Copy link

mergify bot commented Aug 30, 2024

The Firedancer team maintains a line-for-line reimplementation of the
native programs, and until native programs are moved to BPF, those
implementations must exactly match their Agave counterparts.
If this PR represents a change to a native program implementation (not
tests), please include a reviewer from the Firedancer team. And please
keep refactors to a minimum.

@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 5 times, most recently from 43b7b38 to 221fd7d Compare September 3, 2024 08:18
@Lichtso Lichtso changed the title Rekey - enable_loader_v4 Refactor - Makes loader-v4 the default Sep 3, 2024
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 5 times, most recently from a1303e6 to f984bbc Compare September 3, 2024 13:38
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 2 times, most recently from eec5813 to 1cb4d44 Compare September 5, 2024 18:20
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 6 times, most recently from 8a2a279 to 19c1df9 Compare November 11, 2024 20:07
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 19c1df9 to 30f3fcb Compare November 12, 2024 10:51
@Lichtso Lichtso mentioned this pull request Nov 12, 2024
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 2 times, most recently from 95261f9 to 64c09b6 Compare November 14, 2024 14:47
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 64c09b6 to 2d4b884 Compare November 19, 2024 14:38
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 2d4b884 to 489694d Compare December 3, 2024 16:34
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 489694d to 33f0270 Compare December 12, 2024 14:57
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 33f0270 to fc55020 Compare January 9, 2025 14:01
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from fc55020 to aca3d37 Compare January 9, 2025 14:34
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch 4 times, most recently from aa485fa to 8a2d4bc Compare January 15, 2025 20:43
@Lichtso Lichtso force-pushed the rekey/enable_loader_v4 branch from 8a2d4bc to f7b5eb0 Compare January 16, 2025 02:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant