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 Multi-Role-Based TimelockController Reference Implementation #195

Merged
merged 51 commits into from
Feb 1, 2024

Conversation

cairoeth
Copy link
Contributor

@cairoeth cairoeth commented Jan 17, 2024

πŸ•“ Changelog

Adds a new contract TimelockController (closes #178), with unit, fuzz, and invariant tests. Contains code sourced from AccessControl β€” ideally, it would import it instead of duplicating functions (they are unedited).

NOTE: Some unrelated Solidity tests/files were "modified" because I ran the Forge formatter. We can modify the formatter settings to follow a specific sol style if there's one. (Note by @pcaversaccio: simply run pnpm prettier:fix to format all files).

(Note by @pcaversaccio) This PR also contains small documentation improvements regarding code comments and also fixes a small issue about a missing @view decorator in the _check_role function of the AccessControl contract. Eventually, it also fixes a small issue with the glob syntax in the package.json scripts to ensure OS-independent interpretation (see prettier-solidity/prettier-plugin-solidity#978).

🐢 Cute Animal Picture

https://www.norfolkwildlifetrust.org.uk/getmedia/a32b9358-00fb-4930-863c-92968ec153d6/Weasel,-Buckenham,-Mark-Ollett,-1-November-2011-(Custom).jpg.aspx?width=810&height=540&ext=.jpg

@pcaversaccio pcaversaccio added the feature πŸ’₯ New feature or request label Jan 17, 2024
@pcaversaccio pcaversaccio added this to the 0.0.5 milestone Jan 17, 2024
@pcaversaccio pcaversaccio self-assigned this Jan 17, 2024
@pcaversaccio pcaversaccio self-requested a review January 17, 2024 09:20
@pcaversaccio pcaversaccio changed the title ✨ Add TimelockController πŸ’₯ Add TimelockController Reference Implementation Jan 18, 2024
pcaversaccio and others added 3 commits January 18, 2024 15:49
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Copy link
Owner

@pcaversaccio pcaversaccio left a comment

Choose a reason for hiding this comment

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

I quickly fixed the prettier issue: you can simply run pnpm prettier:fix to have to format the files. I don't use forge fmt for multiple reasons. I also quickly fixed some typos. Will dive into the code either today or tomorrow hopefully.

.gitignore Outdated Show resolved Hide resolved
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
@pcaversaccio pcaversaccio changed the title πŸ’₯ Add TimelockController Reference Implementation πŸ’₯ Add Multi-Role-Based TimelockController Reference Implementation Jan 18, 2024
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
@pcaversaccio pcaversaccio added the refactor/cleanup ♻️ Code refactorings and cleanups label Jan 21, 2024
@pcaversaccio pcaversaccio added the documentation πŸ“– Improvements or additions to documentation label Jan 21, 2024
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
@cairoeth cairoeth requested a review from pcaversaccio January 24, 2024 01:57
pcaversaccio and others added 12 commits January 29, 2024 10:10
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
@pcaversaccio pcaversaccio merged commit ed49a04 into pcaversaccio:main Feb 1, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation πŸ“– Improvements or additions to documentation feature πŸ’₯ New feature or request refactor/cleanup ♻️ Code refactorings and cleanups
Projects
None yet
Development

Successfully merging this pull request may close these issues.

πŸ’₯ TimelockController Contract
2 participants