このページ内容は2021年1月21日以降、再調査・再検証してません。実際に扱う際は最新の情報にアクセスしてください。

link
Berry

バージョン2以降のyarnのことをBerryと呼びます。機能が大きく変わっているため名前が変わりました。パッケージを.yarnフォルダでキャッシュするようになり、yarn1よりも高速でパッケージのインストールやビルドができるようになりました。ちなみに、.yarnフォルダはgit管理を推奨されています (サイズも小さいです)。

またBerryの掲げる目標として、ゼロインストールberry_zero_installという状態があります。これは、プロジェクトをクローンしたら、すぐに動かせるようになる状態のことです。yarn1のときはnpmレジストリから必要なパッケージをnode_modulesにインストールしていましたが、Berryは.yarnフォルダのキャッシュから依存関係を解決するようになります。つまり、ネットに繋がってなくても依存関係を解消でき、プロジェクトを動かすことができます。

このように、yarnのバージョンがプロジェクトごとに変わるような状況が出てくるため、yarn3.1からはパッケージマネージャーのバージョン管理ツール Corepackcorepackを組み込むようになりました。これはpackage.jsonにpackageManagerという項目を付けることで、特定バージョンのパッケージマネージャーのみしか動かせないように制限するものです。

1
{
2
"packageManager": "yarn@3.1.0"
3
}

その他にもnpx相当のyarn dlxコマンドや新しいインストールモードのpnpmなどが追加されています。詳しくはyarnのメンテナが書かれたブログを参考にしてください。yarn3.0yarn_30, yarn 3.1yarn_31

ちなみに、バージョン切り替えは以下のようにして簡単に切り替えできますyarn_check_version。実施するときはberryからyarn1.xに戻すために、実行前にyarnのバージョンを確認しておくことをお勧めします。

1
# 現在のバージョン確認 (元のバージョンに戻すときに必要なのでメモしておきます)
2
$ yarn --version
3
1.22.17
4
# berryに切り替える
5
$ yarn set version berry
6
# 元のバージョンに戻す
7
$ yarn set version 1.22.17

自己紹介
はじめまして Pilefortです。
東京でエソジニアをしてます。
興味のあるスタックは、JavaScript (React, Vue), TypeScript, Rust, WebAssembly, AWS, Pulumi, Serverless Frameworkです。
このブログでは、普段の業務や趣味で気になったことをまとめたり、フロントやAWS, GitHubやTwitterで見かけた面白い記事やニュースをまとめるためのものです。少しでも何かの役に立てば幸いです。
最近の活動
技術書典13 (2022.9.10 - 2022.9.25) で本を出しました。
2022年の1月から8月ぐらいまでに登場したり、大幅なアップデートがあったWebサービスや開発ツール、ライブラリ、フレームワークを紹介した本です。
うぇぶちぇんじろぐ2023part1
XMind8ファイルをMarkdownファイルに変換するツールを作りました。
公式のxmind-sdk-jsのバージョンを下げて作ってます (最新版だと一部メソッドが削除されてるため)。
技術書典12 (2022.1.22 - 2022.1.30) で本を出しました。
2021年に登場したり、大幅なアップデートがあったWebサービスや開発ツール、ライブラリ、フレームワークを紹介した本です。
うぇぶちぇんじろぐ2022
サイトマップ
Notes
業務や趣味での気づき・メモ
Scraps
雑記。ネットで見つけた面白い記事やニュース
Snippets
記事にするまでもないけど、便利なコマンドや豆知識
Works
同人誌一覧