jenniferabowd / jest_webpack_example

MIT License
63 stars 25 forks source link

Upgrade React version #7

Closed jenniferabowd closed 1 year ago

jenniferabowd commented 1 year ago

Hi, this example has become a bit stale. I'm hoping someone can help modernize this example to help others during Hacktoberfest. If it doesn't happen, that is okay, but maybe this can be a good chance for someone to participate. I'm making several tickets to help break this up into chunks. I'm happy to help people, but I don't have much time to re-write this code.

It would be really helpful for someone to upgrade this to the current version of React.

brandonmcconnell commented 1 year ago

@jenniferabowd Which "chunk" is this, or which example, so I can get a sense of the work involved? Thanks!

jenniferabowd commented 1 year ago

Right now this is on React 16.2.0. I'd like to get it up to React 18.x.x. I think the right move would be to try to upgrade it to React 17. You might need to gradually do that within React 16, but once you get to the most recent version of React 16, you should be able to jump to React 17 and then 18. If you go straight to upgrading to React 18, you will get some errors related to other dependencies. I'm trying to also strip out Redux, so you can either do that or upgrade Redux in the process. If you want to create multiple PRs for upgrading/removing the redux, that is totally cool.

Basically, this repo has value to people, but I've neglected it for years. I'm trying to modernize it. But sitting down and doing all the stuff to modernize it sounds like a major time suck. I figured maybe some people would be willing to help out during Hacktoberfest and if we chunk it out, it probably wouldn't be too bad.

brandonmcconnell commented 1 year ago

@jenniferabowd Thanks for all the background on this. I'm up for the challenge! Could you assign me to this issue? I'll probably stick to React for this PR, but if you could create a separate issue for stripping/updating Redux, I could try converting that to use React's Context API instead or simply update Redux if the switch becomes too complicated or messy.

brandonmcconnell commented 1 year ago

Nvm about the Redux stuff. I see you already created that via #9 👏🏼

I'll leave that one alone for now and circle back to it after this if no one's scooped it up by then

jenniferabowd commented 1 year ago

I honestly don't even think we need to use Context for this (although we can). I figured people coming to this repo are focused on the Webpack portion, so why convolute it with Redux, context, a server, etc?

jenniferabowd commented 1 year ago

Also, thank you so much for helping out with this!

brandonmcconnell commented 1 year ago

Sure thing! I saw the warnings about peer dependencies you mentioned, @jenniferabowd, however, I saw those both when upgrading to v17 and then to v18. Everything appears to work as expected, so it may just be a matter of updating those other dependencies as well to silence those warnings.

More notes on my PR #13, so we can move the discussion there.

brandonmcconnell commented 1 year ago

Btw I resolved the peer dependencies now too. New comment re that in my PR #13. Ready for your check!

Also leaving comments on #9, #10, #11, and #12 👀