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

Feat/nft collection #1568

Open
wants to merge 47 commits into
base: master
Choose a base branch
from
Open

Feat/nft collection #1568

wants to merge 47 commits into from

Conversation

adjisb
Copy link
Contributor

@adjisb adjisb commented Aug 5, 2024

New NFTCollection based on the old AvatarCollection:

  • Added

    • OZ ERC2981.sol
    • batchMint(waveIndex, walletsAndAmounts) whenNotPaused onlyOwner so the admin can mint using less gas
    • waveMint(wallet, amount, waveIndex, signatureId, signature) whenNotPaused and cancelWave(waveIndex) onlyOwner so we can have multiple waves running at the same time.
    • safeBatchTransferFrom(from, to, ids, data) onlyAllowedOperator(from)
    • batchTransferFrom(from, to, ids) onlyAllowedOperator(from)
    • Custom errors
    • OZ v5 storage management
    • Fixed a known bug in ERC2771HandlerUpgradeable
    • Fixed the event emitted in setBaseURL
    • Changed the signature that was used in reveal so it is not the same as mint
    • Operator address in emitted events
    • We limit maxSupply by the amount of tokens minted (we ignore the burned tokens)
  • Removed

    • The token Ids were generated with a pseudo-random, now they are sequential.
    • Access control we only have Ownable2StepUpgradeable
    • ERC721EnumerableUpgradeable we don’t need the enumerable part we use ERC721Upgradeable
    • unchecked/safe math because we use a newer version of solc
    • DefaultMintingValuesSet and all the related functions: setMarketingMint, setAllowlistMint and setPublicMint
  • Kept

    • mint and personalize to be backward compatible with AvatarCollection
    • Burn tracking
    • OpenSea operator filterer now is disabled by default.
    • Pausable
    • We don’t have a way to revoke a signature

Copy link

openzeppelin-code bot commented Aug 5, 2024

Feat/nft collection

Generated at commit: 17c49f2de13cf2f43fb7c10edaee4e6ddef557b4

🚨 Report Summary

Severity Level Results
Contracts Critical
High
Medium
Low
Note
Total
3
1
0
6
28
38

For more details view the full report in OpenZeppelin Code Inspector

@adjisb adjisb force-pushed the feat/nft-collection branch 4 times, most recently from 658133a to 201b6e8 Compare August 9, 2024 14:57
@adjisb adjisb force-pushed the feat/nft-collection branch from 1e9d2d9 to f8cd396 Compare August 22, 2024 18:36
@adjisb adjisb force-pushed the feat/nft-collection branch 2 times, most recently from b44d0d7 to 2259967 Compare September 11, 2024 16:45
@adjisb adjisb force-pushed the feat/nft-collection branch from 684024e to 17c49f2 Compare October 16, 2024 13:18
@adjisb adjisb force-pushed the feat/nft-collection branch 2 times, most recently from 212ca09 to a268b9b Compare December 9, 2024 15:00
@adjisb adjisb force-pushed the feat/nft-collection branch from 2d2404c to 4291ff9 Compare December 16, 2024 16:46
Andres Adjimann added 3 commits December 16, 2024 13:55
- Use fully qualified names for contracts
- Add constructor arguments for verification
@adjisb adjisb marked this pull request as ready for review December 17, 2024 15:50
@adjisb adjisb requested a review from a team as a code owner December 17, 2024 15:50
Copy link
Member

@wojciech-turek wojciech-turek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few questions and comments.

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.

2 participants