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

Refactor contracts to use composition where not burdensome #13

Closed
payprmoney opened this issue Oct 18, 2020 · 0 comments · Fixed by #14
Closed

Refactor contracts to use composition where not burdensome #13

payprmoney opened this issue Oct 18, 2020 · 0 comments · Fixed by #14
Labels
enhancement New feature or request

Comments

@payprmoney
Copy link
Contributor

payprmoney commented Oct 18, 2020

Inheritance causes problems with upgradeability because you are not able to control the order of storage. Use structs and libraries where not burdensome. When not, be explicit about imports to specify the order.

@payprmoney payprmoney added the enhancement New feature or request label Oct 18, 2020
@payprmoney payprmoney changed the title Refactor contracts to use composition where possible Refactor contracts to use composition where not burdensom Oct 20, 2020
@payprmoney payprmoney changed the title Refactor contracts to use composition where not burdensom Refactor contracts to use composition where not burdensome Oct 20, 2020
mdnorman added a commit that referenced this issue Oct 21, 2020
…ts to ensure order for upgrades

BREAKING CHANGE: storage locations could have changed for any of these contracts, which means old contracts cannot be safely upgraded.
payprmoney added a commit that referenced this issue Oct 21, 2020
refactor: [#13] extract logic into libraries and include base contracts to ensure order for upgrades
mdnorman added a commit that referenced this issue Oct 23, 2021
…ability

chore(deps): update dependency yargs-parser to 18.1.2 [security]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant