rc は 53 まであったようです
大きな変更はゼロインストール機能がデフォルトで無効になってるようです
ゼロインストールはそれ自体の ON/OFF はなくて PnP とオフラインミラーの両方を使うことで実現できるものです
PnP は Yarn4 でもデフォルトで有効なので オフラインミラーがオフになったようです
具体的には .yarnrc.yml の設定の enableGlobalCache のデフォルト値が true になりました
enableGlobalCache が true だとインストールするパッケージは 各プロジェクトのフォルダ内に保存されず全部のプロジェクトで共通になります
Linux 環境だと 「~/.yarn/berry/cache/」 に入ります
同じパッケージを複数のプロジェクトで使うときも実体はひとつなので効率的です
なのでデフォルト挙動としてはこっちで良いと思います
false にすると各プロジェクトフォルダに保存されるので Git にコミットしてゼロインストールにできます
他には yarnPath の代わりに Corepack が推奨されるようになったようです
とは言ってもまだ yarn init で作られる .yarnrc.yml に yarnPath の設定が記載されています
package.json には packageManager が追加されるようになっています
{
...
"packageManager": "yarn@4.0.0",
...
}
Constraints 機能にも変更があって JavaScript で書けるようになったようです
これまでは Prolog でしたが なぜ Prolog という状態でしたからね
記載する内容に適した言語なのでしょうけど Yarn を使うユーザー層を考えると全然違う言語過ぎて難しすぎました
気軽に使えるようになったのは良いですね