JavaScript向けパッケージマネージャ「Yarn 1.0」リリース
米FacebookのYarnプロジェクトは9月7日、JavaScriptパッケージマネージャ「Yarn 1.0」を公開した。Workspacesの導入などの機能が加わっている。
Yarnはnpmの代替としてFacebookが開発するJavaScript向けのパッケージマネジャー。高速で信頼性があり、かつ安全な依存管理を実現するという。一度パッケージをインストールするとオフラインでも再インストールができるというオフラインモード、依存関係のバージョン不整合の解決により重複を回避するフラットモード、ネットワークの効率的な利用などの機能も備える。2016年の秋にオープンソースとして公開した。ライセンスは2条項BSDライセンス。
Facebookによると、GitHubにはYarnが利用するファイルである「yarn.lock」ファイルをルートディレクトリに持つプロジェクトは17万5000以上あるという。FacebookではメインのFacebookのWebサイト、Instagram、Oculus、WhatsAppなどで使われており、米Twitter、それに米Microsoftも「outlook.com」で採用しているとのこと。
Yarn 1.0では、Workspaces導入が大きな特徴となる。package.jsonファイルから様々な依存性をアグリゲートして一度でインストールするもので、コードベースを単一のリポジトリにすることで依存性の同期や最新のコードを使うよう強制できる。
yarnインストールを走らせることでロックファイル(yarn.lock)でのマージの衝突を自動的に解決する自動マージ機能も加わった。
また、package.jsonファイルのresolutionsフィールドで特定のバージョンの依存性バージョンを特定できるSelective Version Resolutionsも加わった。重要なバグが発行された場合、直接依存性を利用していなくても速やかに適応できるという。
このほか、インタラクティブなアップグレードを強化し、ファイル一貫性のチェックも高速になるなど、多数の強化が加わった。バグの修正も行われている。
Yarn 1.0はプロジェクトのページより入手できる。
Yarn
https://yarnpkg.com/