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

next、react、react-domのバージョンを上げる #152

Closed
wants to merge 6 commits into from

Conversation

takashi0602
Copy link
Member

@takashi0602 takashi0602 commented Feb 18, 2023

概要

タイトル通りnext、react、react-domのバージョンを上げましたのでご確認よろしくお願いします。
また、nodeもlatestLTSである18.14.1まで上げましたので、ローカルのnodeのバージョンを上げて確認お願いします。
(ついでにTSもあげた)

  • next ... 12系の最新
  • react / react-dom ... 18.2.0(latest)
  • TypeScript ... 4.9.5(latest)

その他

Storybook で React v18 を使用するには v7 系を使用する必要があるが、ベータ版なのと変更点が多いためこのPRには含めない

@takashi0602 takashi0602 self-assigned this Feb 18, 2023
@takashi0602 takashi0602 marked this pull request as draft February 18, 2023 17:40
@takashi0602
Copy link
Member Author

Nextjs を v13 系にしてみるため Draft にしました

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 19, 2023

また、nodeもlatestである18.14.1まで上げましたので

細かいけどLTSの最新な気がする: https://nodejs.org/ja/

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 19, 2023

  • Node.js 12.22.0 または、それ以降
  • MacOS, Windows (WSL を含む)、そして Linux をサポート

Next.jsのシステム要件的にもNodeのバージョンは上げても問題無さそう(という感想w): https://nextjs-ja-translation-docs.vercel.app/docs/getting-started#%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E8%A6%81%E4%BB%B6

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 19, 2023

TypeScript ... 4.9.5(latest)

これ、問題は無さそうなんだけど、どこを探してもTSのEOLのスケジュールとか見当たらなかった、、、
今、どのバージョン以降でパッチの適用が行われているとかってどこを見ればいいんだろう、、、(LTSみたいな概念もなさそう?)
あとはNode.jsとかNext.jsとの依存関係とかってどんな感じなんだろう(例えばTS x.y.zを使うならNode.jsのx.y.z以上のバージョンが必要みたいな)

@tyokinuhata
Copy link
Member

Storybook で React v18 を使用するには v7 系を使用する必要があるが、ベータ版なのと変更点が多いためこのPRには含めない

これ、Reactのバージョンだけ18系に上げてもStorybookの動作には影響無い感じ?

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 19, 2023

個人的にはまずNext12系の最新版の状態でマージしてしまって、13系の対応は別PRでやっても良いのかなという気がしてます。
というのも #150#149 の前段として、とりあえず今のNext.jsのバージョンを明示して分かりやすくする + そのバージョンで動作していることを保証するって部分が大きいのかなと

@takashi0602 takashi0602 marked this pull request as ready for review February 19, 2023 14:36
@takashi0602
Copy link
Member Author

#152 (comment)
内部見た感じ @types/react が使ってるTSのバージョンが4.2系だったのでrevertしました🙏


これ、Reactのバージョンだけ18系に上げてもStorybookの動作には影響無い感じ?

React の18系やと createRoot を使ってレンダリングするねんけど、Storybook内やと17系のような形で render 使ってレンダリングしてそうで、以下の警告出てる感じっすね

Warning: ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot

参考: https://reactjs.org/blog/2022/03/08/react-18-upgrade-guide.html#updates-to-client-rendering-apis

@tyokinuhata
Copy link
Member

内部見た感じ @types/react が使ってるTSのバージョンが4.2系だったのでrevertしました🙏

逆に @types/react を上げて今のTSのバージョンに追随する路線もありそう

    "@types/node": "^15.0.2",
    "@types/react": "^17.0.2",
    "@types/react-dom": "^17.0.2",

その場合、このへんもまとめて上げる必要があるのかな?

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 20, 2023

React の18系やと createRoot を使ってレンダリングするねんけど、Storybook内やと17系のような形で render 使ってレンダリングしてそうで、以下の警告出てる感じっすね

なるほど、、、Nextが求めるReactの最小のシステム要件でwarning出るの辛いな、、、
ただStorybook内では17系の互換性モードみたいな感じで動作しているなら問題ないのかな(いつStorybookのベータ外れるんだろうw)

@takashi0602
Copy link
Member Author

takashi0602 commented Feb 21, 2023

逆に @types/react を上げて今のTSのバージョンに追随する路線もありそう

以下みたいな形で修正してます🙏
@types/reactv18.0.28 内で使われているTSのバージョンが4.2系という感じです🙏

"@types/node": "18.14.0",
"@types/react": "18.0.28",
"@types/react-dom": "18.0.11",

ただStorybook内では17系の互換性モードみたいな感じで動作しているなら問題ないのかな(いつStorybookのベータ外れるんだろうw)

一応問題なく動作はしてるな
7系で記述が変わるので対応辛そうというところだけ共有しておきます😢

@tyokinuhata
Copy link
Member

tyokinuhata commented Feb 21, 2023

以下みたいな形で修正してます🙏
@types/react の v18.0.28 内で使われているTSのバージョンが4.2系という感じです🙏

これ、 @types/node とかだとまた別のTSのバージョンが使われてるって感じよな:thinking-face:
TS自体は4.2系で入ってるっぽいけど、大丈夫なんかなと思った: https://github.com/uyupun/official/blob/main/package.json#L59

@tyokinuhata
Copy link
Member

一応問題なく動作はしてるな
7系で記述が変わるので対応辛そうというところだけ共有しておきます😢

なるほどな、Storybook以外だとなにか候補あるんだろうか、、、Storybookの7系に上げるほうが楽なんだろうか、、、

@takashi0602
Copy link
Member Author

こちら最新のNextjsのバージョンに上げる方針になったためCloseします

@tyokinuhata tyokinuhata deleted the chore/150_update-next branch April 30, 2023 18:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants