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

fix(contracts): OZ-L1-L02 Initialization Not Disabled for Implementation Contracts #639

Merged

Conversation

zimpha
Copy link
Member

@zimpha zimpha commented Jul 12, 2023

Purpose or design rationale of this PR

This PR fix the bug (L02 Initialization Not Disabled for Implementation Contracts) reported by OpenZeppelin. The following are the details:

Throughout the codebase, implementation contracts are used behind proxies for upgradeability. Hence, many contracts have an initialize function that sets up the proxy. It is a good practice to not leave implementation contracts uninitialized. Hence, consider calling the _disableInitializers function of the inherited Initializable contract in the constructor to prevent the initialization of the implementation contract.

PR title

Your PR title must follow conventional commits (as we are doing squash merge for each PR), so it must start with one of the following types:

  • build: Changes that affect the build system or external dependencies (example scopes: yarn, eslint, typescript)
  • ci: Changes to our CI configuration files and scripts (example scopes: vercel, github, cypress)
  • docs: Documentation-only changes
  • feat: A new feature
  • fix: A bug fix
  • perf: A code change that improves performance
  • refactor: A code change that doesn't fix a bug, or add a feature, or improves performance
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
  • test: Adding missing tests or correcting existing tests

Deployment tag versioning

Has tag in common/version.go been updated?

  • No, this PR doesn't involve a new deployment, git tag, docker image tag
  • Yes

Breaking change label

Does this PR have the breaking-change label?

  • No, this PR is not a breaking change
  • Yes

@zimpha zimpha self-assigned this Jul 12, 2023
@github-actions
Copy link

github-actions bot commented Jul 12, 2023

LCOV of commit 59ff873 during Contracts #1136

Summary coverage rate:
  lines......: 51.3% (894 of 1744 lines)
  functions..: 67.9% (203 of 299 functions)
  branches...: no data found

Files changed coverage rate: n/a

Thegaram
Thegaram previously approved these changes Jul 13, 2023
@HAOYUatHZ HAOYUatHZ merged commit 523cc2c into develop Jul 20, 2023
3 checks passed
@HAOYUatHZ HAOYUatHZ deleted the fix/initialization_not_disable_for_implementation_contracts branch July 20, 2023 13:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants