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

chore: fix pnpm version in package.json #475

Closed
wants to merge 1 commit into from

Conversation

teppeis
Copy link

@teppeis teppeis commented Oct 20, 2023

📑 Summary

このリポジトリでcorepack環境下のpnpmを利用するとエラーになります。

ERR_PNPM_UNSUPPORTED_ENGINE  Unsupported environment (bad pnpm and/or Node.js version)

Your pnpm version is incompatible with "/Users/teppei_sato/src/github.com/zenn-dev/zenn-editor".

Expected version: >=8
Got: 7.19.0

#460 の修正漏れです。
engines"pnpm": ">=8"なのに、packageManagerではv7のままなので、corepackを使っているとエラーになりpnpmを利用不可能な状態になってます。

バージョンを更新する場合は、corepack upまたはcorepack installを実行してpackageManagerフィールドを更新する必要があります。

📋 Tasks

プルリクエストを作成いただく際、お手数ですが以下の内容についてご確認をお願いします。

  • 📖 Contribution Guide を読んだ
  • 👩‍💻 canary ブランチに対するプルリクエストである
  • zenn-cli で実行して正しく動作しているか確認する
  • 不要なコードが含まれていないか( コメントやログの消し忘れに注意 )
  • XSS になるようなコードが含まれていないか
  • モバイル端末での表示が考慮されているか
  • Pull Reuqest の内容は妥当か( 膨らみすぎてないか )

より詳しい内容は Pull Request Policy を参照してください。

@cm-igarashi-ryosuke cm-igarashi-ryosuke added the chore 機能以外のささいな修正 label Oct 23, 2023
@cm-igarashi-ryosuke
Copy link
Member

cm-igarashi-ryosuke commented Oct 23, 2023

@teppeis PRありがとうございます!

corepack 0.20.0 以降( corepack up または corepack install が追加されたバージョン)で問題が再現することを確認できました。

1点ご質問させていただきたいのですが。
corepackはNode.jsにバンドルされたものを使うことが多いと思います。corepackのバージョンはNode.jsのバージョンに依存しますので、このプロジェクトでもNode.jsの最低バージョンを指定したほうが良いでしょうか?

@teppeis
Copy link
Author

teppeis commented Oct 29, 2023

@cm-igarashi-ryosuke corepack v0.19 以下でも発生しますよ。
例えば Node v18.18.2 にバンドルされている corepack v0.19.0 で corepack enable pnpm すると pnpm v7.19.0 がインストールされ、pnpm install等を実行すると同様のエラーになりました。

Nodeバージョンについては、今回の事案では関係ないと思います。

@teppeis
Copy link
Author

teppeis commented Oct 29, 2023

別の修正方法として、packageManagerフィールド自体を削除してしまっても良いと思います。
特定のバージョンを指定することに強い意図がなければ、今後アップデートしていくのも面倒なので削除した方が楽かもしれません。

@cm-igarashi-ryosuke
Copy link
Member

@teppeis

corepack v0.19 以下でも発生しますよ。

ありがとうございます。再現できました。わたしの環境ではグローバルインストールされたpnpmがあったので、 pnpm install 等ではそちらが優先され、エラーにならなかったようです。

別の修正方法として、packageManagerフィールド自体を削除してしまっても良いと思います。

たしかに、 packageManager フィールドがなくてもcorepackの使用に問題ないですね。
今のところpnpmのバージョン指定はメジャーバージョンレベルで十分ですので、 packageManager フィールドを削除することにしようと思います。
こちらで対応しますので、対応後にこのPRはクローズします。

Node.jsのバージョンについては、別で頂いていたIssue #476 の件もありますので、別途考えようと思います。

いろいろとアドバイスいただいて感謝です!

@teppeis
Copy link
Author

teppeis commented Nov 1, 2023

了解です。ではこちらのPRはクローズします。

@teppeis teppeis closed this Nov 1, 2023
@teppeis teppeis deleted the fix-pnpm-version branch November 1, 2023 08:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore 機能以外のささいな修正
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants