ethereum-solidity-course-updated-code icon indicating copy to clipboard operation
ethereum-solidity-course-updated-code copied to clipboard

Solidity 0.8 Update

Open istrupin opened this issue 3 years ago • 6 comments

First of all, I just wanted to say thank you for picking this up and carrying on @StephenGrider 's fantastic course! I was just curious if you had any plans to update the code/docs to Solidity 0.8.2, or at least cover the breaking changes.

istrupin avatar Mar 09 '21 05:03 istrupin

Hi @istrupin yes I do plan to start updating this repo this coming weekend. Work has been keeping me busy since I started this repo but it really is in dire need of my attention, especially since this is a field that's moving at such a fast pace.

So my plan, starting this weekend is as follows:

  • I'll create a new (orphan/empty) branch for the upgrade, leaving the existing main branch untouched.
  • I'll rewrite the solutions for @StephenGrider's course using the latest versions of Solidity, web3.js, Truffle and React. Specifically I'll opt for using React's functional components and hooks, rather than class components.
  • Once this branch is completed I'll make it the main branch and rename the current master branch to outdated.

owanhunte avatar Mar 09 '21 12:03 owanhunte

I'm happy to hear that! If you need a hand on some of the React stuff when you get to it, let me know and I can jump in if I have any free time.

istrupin avatar Mar 09 '21 16:03 istrupin

@istrupin just wanted to let you know that I've begun working on updating this repo, with a slightly different approach to what I described in the above comment https://github.com/owanhunte/ethereum-solidity-course-updated-code/issues/20#issuecomment-793838335. The approach is now as follows:

  • I've renamed the default branch from master to main.
  • I created a new branch named update_solidity_0_8 which I'm committing all the updated code to.
  • As I make progress, I'm merging this branch back into the main branch.
  • I'm still opting for using React's functional components and hooks, rather than class components, except for any case where a class component is a more sensible option.

I'm going to leave this issue open for tracking any important notes/points related to this update.

owanhunte avatar Jun 13 '21 17:06 owanhunte

@owanhunte thanks for the update, that sounds great! Let me know if you need any help!

istrupin avatar Jun 30 '21 14:06 istrupin

Hey all, just dropping an update here in this issue to advise that the my efforts to bring this entire repo up-to-date with Solidity 0.8 and all the latest versions of all the packages and frameworks used to build out the code examples is near completion. Specifically, I've completed updates to the following:

  • Inbox smart contract and all it's associated Node.js scripts and unit tests
  • Lottery smart contract and all it's associated Node.js scripts and unit tests
  • Lottery React web app
  • Kickstart app's CampaignFactory and Campaign smart contracts

What's still to be done:

  • Node.js scripts and unit tests for the CampaignFactory and Campaign smart contracts to be updated
  • Next.js implementation of the Kickstart/CrowdCoin web app to be updated to latest Next.js version (v13)

Once these remaining updates are finished, this issue will be closed.

owanhunte avatar Feb 22 '23 01:02 owanhunte

Hey all, just dropping an update here in this issue to advise that the my efforts to bring this entire repo up-to-date with Solidity 0.8 all the latest versions of all the packages and frameworks used to build out the code examples is near completion. Specifically, I've completed updates to the following:

  • Inbox smart contract and all it's associated Node.js scripts and unit tests
  • Lottery smart contract and all it's associated Node.js scripts and unit tests
  • Lottery React web app
  • Kickstart app's CampaignFactory and Campaign smart contracts

What's still to be done:

  • Node.js scripts and unit tests for the CampaignFactory and Campaign smart contracts to be updated
  • Next.js implementation of the Kickstart/CrowdCoin web app to be updated to latest Next.js version (v13)

Once these remaining updates are finished, this issue will be closed.

@owanhunte thank you so much for doing that, I'm really looking forward to it!

istrupin avatar Feb 22 '23 01:02 istrupin