This repository has been archived by the owner on Dec 4, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 536
Deploy burn contract by default on EIP-1559 enabled #1648
Merged
Stefan-Ethernal
merged 13 commits into
develop
from
EVM-715-deploy-burn-contract-by-default-on-1559-enabled
Jun 26, 2023
Merged
Deploy burn contract by default on EIP-1559 enabled #1648
Stefan-Ethernal
merged 13 commits into
develop
from
EVM-715-deploy-burn-contract-by-default-on-1559-enabled
Jun 26, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Stefan-Ethernal
force-pushed
the
EVM-715-deploy-burn-contract-by-default-on-1559-enabled
branch
3 times, most recently
from
June 22, 2023 13:51
a975890
to
9ed8f1f
Compare
Stefan-Ethernal
changed the title
Evm 715 deploy burn contract by default on 1559 enabled
Deploy burn contract by default on EIP-1559 enabled
Jun 22, 2023
Stefan-Ethernal
force-pushed
the
EVM-715-deploy-burn-contract-by-default-on-1559-enabled
branch
from
June 23, 2023 13:23
458a21f
to
c47f504
Compare
I have some questions here:
|
Correct.
Correct. cc @DannyS03 for docs update. |
vcastellm
reviewed
Jun 26, 2023
vcastellm
approved these changes
Jun 26, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Nemanja0x
approved these changes
Jun 26, 2023
Stefan-Ethernal
deleted the
EVM-715-deploy-burn-contract-by-default-on-1559-enabled
branch
August 18, 2023 10:42
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Context
This PR adds functionality of deploying default burn contract at genesis time if the native token is non mintable.
Burn contract related behavior is following:
1. Mintable native token
it is allowed to specify only
0x0
address for--burn-contract
flag in this case. This is because, for mintable native token, default burn contract is not applicable (since tokens originate from the Supernets itself). However we are allowing transfers to0x0
address (note that as of now, burning tokens would not imply in native token's total supply reduction).2. Non-mintable native token
only one burn contract can be specified, and that address will be used to deploy the default contract. Also, destination address for default burn contract can be specified in --burn-contract flag and it will be used for initialization of the default contract. If destionation address is not set in --burn-contract flag, default burn contract will be initialized with zero address as a destination address.
If burn contract is not specified, EIP1559 feature will be disabled, london fork will be disabled, BaseFee and BaseFeeEM would not be set, tokens would not be burned.
Later, user can deploy some custom burn contract and update the burn contracts by:
2.1 setting the burnContracts using address of a custom deployed contract. Destination address is not needed here since it is only used when predeploying default burn contract at genesis time
2.2 enabling london fork
Changes include
Checklist
Testing
Manual tests
Please complete this section if you ran manual tests for this functionality, otherwise delete it
Documentation update
Please link the documentation update PR in this section if it's present, otherwise delete it
Additional comments
Please post additional comments in this section if you have them, otherwise delete it