-
Notifications
You must be signed in to change notification settings - Fork 3
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
New ERC20 token #8
Open
pmprete
wants to merge
32
commits into
master
Choose a base branch
from
albt2
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
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
Etherlime is deprecated Bump solidity version to 0.8 Update node version to 18 Use typescript and hardhat Bump open zeppelin version
Use harhat OptimizedTransparentProxy for upgrade Add automatic verification of contracts from etherscan Add .env variables
remove BatchTransfer
Fix linting WIP tests
ABT-01C: Enhancement of State Validation
We advise it to invoke super._mint instead and the _cap check to occur after the for loop by evaluating that the ERC20Upgradeable.totalSupply() is less-than-or-equal-to (<=) the value of _cap, significantly reducing the gas cost of the function.
[ABT-03C] Potential Batch Mint Optimization
We advise the increment / decrement operation to be performed in an unchecked code block as the last statement within the for loop to optimize its execution cost. Also rename AllianceBlockTest.test.js to AllianceBlock.test.js
ABT-02C: Loop Iterator Optimization
We advise the check to be relocated to the _beforeTokenTransfer function that is already validated, ensuring that both _mint and _transfer operations do not increase the balance of the contract itself.
ABT-02M: Insufficient Prevention of Contract Token Ownership
We advise a constructor to be introduced that invokes the initializer modifier of the Initializable contract to prevent the base implementation from ever being initialized. Created TestProxy to test ERC20 without fixture Imported @openzeppelin/contracts as @openzeppelin/contracts-upgreadables does not have transparent proxy Close #11
[ABT-01M] Inexistent Initialization Protection of Base Implementation
We advise some basic sanitization to be put in place by ensuring that each address specified is non-zero. Remove minter init argument as it wont be needed Close #10
[ABT-02S] Inexistent Sanitization of Input Addresses
Recommendation: We advise them to be set as calldata optimizing their read-access gas cost.
[ABT-02S] Inexistent Sanitization of Input Addresses
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This token is upgradable, pausable, mintable, supports eip-2612, creates snapshots and batch minting.
Remove deprecated etherlime, use hardhat instead.
Bump solidity version.
Deployment is deterministic