misskey-dev / misskey

🌎 A completely free and open interplanetary microblogging platform 🚀
https://misskey-hub.net/
GNU Affero General Public License v3.0
10.11k stars 1.38k forks source link

turborepoにする #9955

Open Neko7sora opened 1 year ago

Neko7sora commented 1 year ago

Summary

gulp関連は、メンテナンス面や脆弱性対応の面で難がある状態になっている

Turborepoは、インクリメンタルビルドが使えて速い

ビルドの並列実行

タスクパイプラインにより、monorepo でどのタスクが相互に依存しているかを定義できる

futchitwo commented 1 year ago
tamaina commented 1 year ago

Turborepoのいいところをもうちょっと言っていこうぜ大会をしないとしゅいろが納得しないと思われる

EbiseLutica commented 1 year ago

タスクパイプラインにより、monorepo でどのタスクが相互に依存しているかを定義できる

これをうまくやってあげると、lint→build→testの工程について、並列にできるところをとことん並列にすることができて高速化できる(参照 https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks

現状、CIが結構遅いから、これをやり遂げるとCIが高速化しそう もちろんローカルや実運用環境にも恩恵があって美味しい

問題はこれをできるほどturborepoに強い人が今のところいない

acid-chicken commented 1 year ago

turborepo, Node.js を nvm みたいな複数バージョンで管理している環境でたまに PATH を解決できなくなり何もできない(弊環境など)みたいなことが起こり険しい

acid-chicken commented 1 year ago

(これ) image

Neko7sora commented 1 year ago

(これ) image

Node.jsに標準バンドルされているCorepackを使用すると画像のように複数バージョンで管理している環境で起こることがあります。 ワークアラウンドとして、「Corepackのpnpm」ではなく、「npmを使用してインストールしたpnpm」を使用してみてください。 https://pnpm.io/ja/installation#npm-を使用

私の環境は、Voltaで管理して「npmを使用してインストールしたpnpm」を使用しています。

acid-chicken commented 1 year ago

なるほど、ありがとうございます。これは Corepack 環境で必ず起きるものですか?または他の条件付きで起こるものですか?

Neko7sora commented 1 year ago

なるほど、ありがとうございます。これは Corepack 環境で必ず起きるものですか?または他の条件付きで起こるものですか?

他の条件付きで起こるものであり、

Corepack 環境で必ず起きるものとはいえない。(Geek Uninstallerなど使って関連ファイルごとアンインストールして、再インストールしたら直ると思われる....)