Could Someone help me regarding Creating Upgraded Smart Contracts with OpenZeppelin Updates Plugins?

Hello

I am currently working on a project that includes the use of downloadable smart contracts; and I am interested in using OpenZeppelin's Updates Plugins.

Before asking the question: I want to share about my project; I am using Truffle for development and Ganache for local testing. My contracts are written in Solidity 0.8.0. I plan to have a series of upgradeable contracts to enable feature additions and bug fixes.

  • What is the ideal way to arrange the setup functions in my contracts such that they can be correctly improved?
  • How should I handle the storage layout of my contracts to avoid problems during upgrades?
  • What are the best ways to secure upgradeable contracts?

Also; I have gone through some posts relevant to this: https://forum.openzeppelin.com/t/how-is-a-merkle-tree-with-proofs-better-than-just-signing-a-bunch-of-transactions/7894Uipath I would like to know if there are any practical tasks or examples that I can look at to understand more about how to use it.

I would appreciate someone giving me any suggestions; tips; or even just some pointers about it.

Thanks in advance for your support.

1 Like
  1. Truffle and Ganache are deprecated. Use Hardhat or Foundry instead.
  2. See https://docs.openzeppelin.com/upgrades-plugins/1.x/writing-upgradeable.
2 Likes