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

add foundry formatter #88

Open
wants to merge 63 commits into
base: main
Choose a base branch
from
Open

Conversation

donaldinho
Copy link
Collaborator

Adding in vscode workspace config and foundry settings to enforce common style and not wrap lines too aggressively

* Two step transfer system

* Added events
* WIP

* Refactor - split into own files

* wip

* wip

* wip

* wip, still need some custom errors and coverage

* Most coverage in

* Still needs custom errors

* Custom errors

* Rename param on storePatch
* phase 1 - IPatchworkProtocol

* Prot on interface entirely now, base contracts updated

* More splitting refactorings

* All base implementations split
* Fixing linter errors before splitting to save lots of time

* Split off PatchworkNFT specific tests

* Split tests

* Moved interface tests to specific test contracts and expanded on ERC compliance
* WIP renaming current fragment to single

* Begin splitting single/multi assignable logic

* Rename unassignNFT to unassignSingleNFT

* Changing signatures to work WIP

* more sigs

* multi data structure starting

* Multi WIP

* First multi contract

* basic multi working

* recover gas on unassign

* Made unique assignment checking global

* Allow cross user assignments for multi

* Multi assign and unassign permissions and test coverage

* comments

* Assignment count and paginated getter

* Failing test for cross scope case - needs some additions to enable

* Target scope multi permissions and cross scope support

* Added by field so a multi assignable fragment can whitelist certain actors for specific actions

* small linter fix

* Assign permission principles

* Refactoring to common logic for unassign

* coverage

* coverage

* coverage

* Coverage complete
* Initial changes to support weak refs

* Fragments can be patches now
* Allow any ownership of a patch

* Coverage
* 1155 Patch WIP

* rename to account

* Finalizing a few 1155 things

* coverage
* Changed metadata type for array length

* WIP

* Dynamic array basic operations in

* More dynamic array work

* Batch add reference implementation

* mostly working

* Oops, fixed copy paste

* let's not bother with that right now
* Basic refactoring and API changes done to enable multi ref pools

* coverage
* Implementation for all

* test coverage
* Make unique patches global

* first draft

* converting test nfts to mintables

* More mintable conversions

* test mintables updated

* Some progress

* Lots of interface tweaks, mint/fee events

* Refactored IPatchworkScoped interface

* Non reentrancy

* Coverage

* proxyable mint functions
* first big renaming

* Renamings

* More renaming

* smaller renaming

* More renaming

* Added all slots metadata store/load to base 721

* More renaming
* coverage

* coverage

* coverage

* Protocol with full coverage again

* coverage

* Coverage
* small bugfix in test

* Set foundry to use latest solc version
robdoesstuff and others added 27 commits January 7, 2024 10:08
* wip

* events

* Timelock working for protocol fees

* May not claim empty scope

* Timelock fee changes applied to fee overrides

* update #1

* Feedback changes
* Clean up assignment struct

* Making structs more consistent in the patch implementations
* Base patch reversible

* Resolving all reversibles
* Moved interfaces and hopefully fixed payable critical error

* Refactoring patch targets and payables

* Seeing if this helps Zeppelin Defender calm down

* All patches payable so they can proxy from a public call

* Standardizing patch targets across types

* More standardizing

* Patch field renaming

* Make manager immutable
* OZ5

* forge install: openzeppelin-foundry-upgrades

* forge install: openzeppelin-contracts-upgradeable

v5.0.1

* Updates for OpenZeppelin 5

* small refactor
* Update to latest forge-std

* Moved implicit owner out to support create2 on PP and 721
* Added mint fees to mint events

* all fees in and doAssign restructuring'
* First stab at delegate contract

* Clean up submodules

* Update solidity spec to 0.8.23

* Refactor and natspec

* Timelock delegate change code in

* Delegate upgrade tests

* small fixup
* deploy stub

* deploy + verify

* verify wip

* enoceded constructor args

* constructor args

* manual verificatin steps

* Small trial and error updates

* Working completely with new delegate

* removed file that shouldn't have been there

---------

Co-authored-by: Kevin Day <[email protected]>
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