Tokyo-Metro-Gov / covid19

東京都 新型コロナウイルス感染症対策サイト / Tokyo COVID-19 Task Force website
https://stopcovid19.metro.tokyo.lg.jp/
MIT License
6.26k stars 1.97k forks source link

NuxtJS等のバージョンアップ #4896

Closed goki90210 closed 4 years ago

goki90210 commented 4 years ago

改善詳細 / Details of Improvement

ということで、6月19日にNuxtJSが2.13.0になり(6月24日に2.13.1、近々6月27日に2.13.2になるようですりました。) 今使っているバージョン2.11.0からマイナーバージョンが2つ上がっているのでバージョンアップを考えてもよいかと思います。 (2.13.xのバージョンアップのペース早すぎますか?) https://github.com/nuxt/nuxt.js/releases

そのほかでは、 @nuxt/types: 0.6.4 → 2.13.12 (一見メジャーバージョンアップに見えますが、nuxtのバージョン表記に合わせただけのようです。)

cross-env: 5.2.0 → 7.0.2 メジャーバージョンが2つ上がっていますが、内容はnode.js 8以前のサポート停止と依存関係の見直しなので問題なし。 https://github.com/kentcdodds/cross-env/releases

nodemon: 1.18.9 → 2.0.4 https://github.com/remy/nodemon/releases chokidar@3へのアップグレードのためなので問題なし

nuxt-purgecss: 0.2.1 → 1.0.0 https://github.com/Developmint/nuxt-purgecss/blob/master/CHANGELOG.md (確認中ですが悪いことはしてなさそうに見えます。)

babel-jest: 24.1.0 → 25.5.1 jest: 24.1.0 → 25.5.4 vue-jestを4.0.0-beta3にするとjest: ^25.x < 26となるため https://github.com/vuejs/vue-jest/releases

prettierがメジャーアップグレード(1.19.1→2.0.5)していますが、 適用するとESLintで大量にエラーが出る(jsonで末尾に必ず","を書くように修正されるため) 保留です。

スクリーンショット / Screenshot

期待する見せ方・挙動 / Expected behavior

動作環境・ブラウザ / Environment

mcdmaster commented 4 years ago

私も、かねてからアップデートしたいと思っていたコンポーネントがいくつかあります。

最後の項目を除くと、いずれもコンパイルの都度出てくる deprecated とか no longer maintained とかといったワーニングが気になっていたものです。 後でイシュー& PR 起こしてみますね

goki90210 commented 4 years ago

@mcdmaster

  • その他、@mdi/font, nuxt-i18n などの最新化

こちらについては今回のPRでバージョンアップしています。

devDependenciesに追加

などです。 ESLint以外はワーニングが出ないようにすべてバージョンを変えています。 ESLintについては6.8.0のままでも7.3.1にしてもワーニングが出るのであえて上げています。

  • core-js3 へのアップグレード
  • vue-server-renderer から @vue/server-renderer への変更
  • source-map-resolve 0.6.0 へのアップグレードと、"resolutions" セクション(package.json)への切り出し

これについては本体の修正も必要になるという認識ですがあってますか?

kaizumaki commented 4 years ago

@goki90210 @mcdmaster 詳細と検証、ありがとうございます!提出いただいたPR #4898 のあともライブラリのアップデートおよび調整は続くということでよかったでしょうか?

mcdmaster commented 4 years ago

@goki90210 情報ありがとうございます。

core-js3, @vue/server-renderer, source-map-resolve 0.6.0 は、ご認識の通りですね。 とはいえ、為念「本体」の主旨については確認させてください。 たとえば nuxt のようなコア中のコアな部分のアップグレードが不可避とか、あるいはソースに手を入れる必要があるとか、そういったことを指しておいででしょうか?

[Update] @kaizumaki ひとつのイシューや PR が残り続けるのも好ましくないので、私が作業に着手できそうなときは個別にイシューと PR を起こそうと思っています

goki90210 commented 4 years ago

@mcdmaster

ソースに手を入れる必要がある

こちらの意図です。 これまでの私の作業では、package.json, yarn.lock以外では

@kaizumaki 今後NuxtJSなどがバージョンアップしたら追随するための作業が必要になるという認識ですが、 これについては別にPRを起こします。このIssueで対応するのは今日時点のバージョンまでとします。

mcdmaster commented 4 years ago

@goki90210

理解できました。ありがとうございます。挙げていただいたコンフィグ系のファイル

から見える範囲に限定する、なおかつそれによって上記以外を触るべき影響が出ないことが確認できるなら、「歯止め」となる効果が期待できます