Skip to content

Erc1155 implementation#145

Merged
maxnorm merged 31 commits into
Perfect-Abstractions:mainfrom
FrankiePower:ERC1155-Implementation
Oct 31, 2025
Merged

Erc1155 implementation#145
maxnorm merged 31 commits into
Perfect-Abstractions:mainfrom
FrankiePower:ERC1155-Implementation

Conversation

@FrankiePower

@FrankiePower FrankiePower commented Oct 28, 2025

Copy link
Copy Markdown
Contributor

Summary

Changes Made

Checklist

Before submitting this PR, please ensure:

  • Code follows the Solidity feature ban - No inheritance, constructors, modifiers, public/private variables, external library functions, using for directives, or selfdestruct

  • Code follows Design Principles - Readable, uses diamond storage, favors composition over inheritance

  • Code matches the codebase style - Consistent formatting, documentation, and patterns (e.g. ERC20Facet.sol)

  • Code is formatted with forge fmt

  • Tests are included - All new functionality has comprehensive tests

  • All tests pass - Run forge test and ensure everything works

  • Documentation updated - If applicable, update relevant documentation

Make sure to follow the CONTRIBUTING.md guidelines.

Additional Notes

@maxnorm maxnorm self-requested a review October 28, 2025 14:43
@github-actions

github-actions Bot commented Oct 28, 2025

Copy link
Copy Markdown
Contributor

Coverage Report

Coverage

Metric Coverage Details
Lines 38% 485/1278 lines
Functions 55% 120/217 functions
Branches 21% 51/243 branches

Last updated: Fri, 31 Oct 2025 13:47:18 GMT for commit a885f2a

@maxnorm maxnorm left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Great work! @aapsi @FrankiePower Please check the comment for request changes & fix the formatting errors in the CI.

I think we need to handle the receiver check for minting for built-in security. OZ do it be internally using _updateWithAcceptanceCheck . I asked @mudgen, let's see.

Comment thread src/interfaces/IERC1155.sol Outdated
Comment thread src/interfaces/IERC1155.sol Outdated
Comment thread src/token/ERC1155/LibERC1155.sol
Comment thread src/token/ERC1155/LibERC1155.sol Outdated
@maxnorm maxnorm linked an issue Oct 28, 2025 that may be closed by this pull request
@FrankiePower FrankiePower requested a review from maxnorm October 30, 2025 12:31
@FrankiePower

Copy link
Copy Markdown
Contributor Author

@maxnorm the tests are included in another PR which will be raised by @aapsi

@FrankiePower FrankiePower marked this pull request as ready for review October 30, 2025 12:46
@FrankiePower FrankiePower requested a review from mudgen October 30, 2025 12:46

@maxnorm maxnorm left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Great work! @FrankiePower & @aapsi . Everything good except a small misunderstanding coming from my last review (check the comment for detail)

Once this is done, we can merge it

Comment thread src/token/ERC1155/LibERC1155.sol Outdated
Comment thread src/token/ERC1155/ERC1155Facet.sol Outdated
@aapsi

aapsi commented Oct 30, 2025

Copy link
Copy Markdown
Contributor

@FrankiePower Please review the implementation once

@FrankiePower

Copy link
Copy Markdown
Contributor Author

@mudgen @maxnorm i've implemeted the safe transfer requirements and we've resolved the uri handling. review pls

@github-actions

github-actions Bot commented Oct 30, 2025

Copy link
Copy Markdown
Contributor

Gas Report

No gas usage changes detected between main and ERC1155-Implementation.

All functions maintain the same gas costs. ✅

Last updated: Fri, 31 Oct 2025 13:47:36 GMT for commit a885f2a

Comment thread src/token/ERC1155/LibERC1155.sol Outdated
Comment thread src/token/ERC1155/LibERC1155.sol Outdated
Comment thread src/token/ERC1155/LibERC1155.sol
…safeBatchTransferFrom, and adjust baseURI handling in ERC1155Storage
@FrankiePower FrankiePower requested a review from maxnorm October 31, 2025 09:12

@maxnorm maxnorm left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

great work everyone! thanks for the contributions

after this minor change, it's ready for the merge.

Comment thread src/token/ERC1155/LibERC1155.sol
@FrankiePower FrankiePower requested a review from maxnorm October 31, 2025 13:36
@maxnorm

maxnorm commented Oct 31, 2025

Copy link
Copy Markdown
Collaborator

@FrankiePower I saw that you had issues with the formatting when running forge fmt

We got similar issues. It was related to the foundry version. Different versions can result to different formatting rules. The CI use 1.4.3-stable for foundry. What i suggest for a quick fix is to upgrade your foundry version, if possible.

In the meantime, i'm currently researching for a fix to avoid mismatch formatting and avoid requiring everyone to upgrade.

@maxnorm maxnorm left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

i have nothing else to add. great jobs to both of you @FrankiePower & @aapsi.

as always, thanks for the contribution. we really appreciate your help.

@aapsi, for the extension, let's open new issues for them

@maxnorm maxnorm merged commit 61e301c into Perfect-Abstractions:main Oct 31, 2025
4 checks passed
JackieXu pushed a commit to JackieXu/Compose that referenced this pull request Nov 6, 2025
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.

Implement ERC1155

5 participants