現在、Hookのindex.mdを翻訳している者です。 翻訳が完了したのでtextlintで表記のチェックを行おうと考えたのですが、textlintを実行できないためコミットできずにいます。 状況は以下のとおりです。 <img width="1007" alt="image" src="https://github.com/reactjs/ja.react.dev/assets/32128205/6431f55b-bf42-466d-9d5b-bcc5e93ee613"> エラーの指示通り`yarn install`で依存関係をインストールすると、ロックファイルも書き換えてしまいます。 <img width="1059" alt="image" src="https://github.com/reactjs/ja.react.dev/assets/32128205/dd2aca10-1b39-45d3-b721-98b8c6b7bc0a"> 環境変数を設定することでこのエラーを回避可能ですが、別のパースエラーが発生します。 <img width="1158" alt="image" src="https://github.com/reactjs/ja.react.dev/assets/32128205/69571865-b0cf-4a18-b9e3-9b842d2678db"> ## 環境 - Node `v12.22.12`とyarn `v3.6,1` - Node `v18.16.1`とyarn `4.0.0-rc.48` の2つの環境で調査しましたが結果は変わりませんでした。
Activity
smikitky commentedon Jul 6, 2023
最初に #580 が main にマージされてからこの辺りの仕組みは何も変えていないのですが、#580 にあるとおり、仕組み的にやや特殊なことをしています。こちらは Yarn 1.x 系を使っているのでおそらくそのあたりが影響している可能性が高そうです。
Yarn 1.x の準備が難しい場合、textlint というディレクトリがあるので、そちらに
cdで移動してからyarn,yarn textlintとやっていただくと、流石に動くのではと思っているのですが如何でしょうか。(2.x 以降は使ったことがないので間違っていたら申し訳ありません)Hayao0819 commentedon Jul 10, 2023
ありがとうございます。動きました。
Yarnのバージョンを上げていない理由はなにかあるのでしょうか?
smikitky commentedon Jul 15, 2023
@Hayao0819 単に私が普段 NPM を使っており、Yarn については「動いてればいいや、2 でなんかすごい変更があったらしい」程度の知識しかないからです…。新しいバージョンでも動く方法をご存じであれば PR を作ってくださると助かります。
MamonYoshioka commentedon Jul 12, 2025
@Hayao0819
@smikitky
はじめまして。質問の内容ですが、おそらくYarn1系を使用する理由としては、以下のような理由があるのではないかと考えております。(あくまで個人の調査結果です。)
依存関係など、専門的な知見はないため、そこらへんはご了承くだいさい。
【考えられる理由】
1系: node_modulesディレクトリにパッケージをインストールします。これはnpmと同じ一般的な方式。
2系以降: デフォルトで Plug'n'Play (PnP) という仕組みが採用されます。これはnode_modulesディレクトリを作成せず、.pnp.cjs(または.pnp.js)という単一のファイルで依存関係を解決する。
影響: ツール(IDE、リンター、TypeScript、テストフレームワークなど)がnode_modulesの存在を前提としている場合、それらのツールが正しく動作しなくなる可能性があります。多くのツールはPnPに対応するための設定変更や、プラグインの導入が必要になります。既存のCI/CDパイプラインも大幅な調整が必要になる。