Lerna 6: 廃止されたオプション
NxとLernaは同じワークスペース内でシームレスに連携します。
LernaがNxでタスクを実行し、Nxターゲット設定を検出すると、Lernaは`lerna run`実行時にこの設定を尊重し、依存関係の検出をNxタスクランナーに委任します。
Nxは、作成されたタスクグラフに基づいて適切と判断した順序と並行性でタスクを実行します。詳細については、Nxメンタルモデル:タスクグラフを参照してください。
**この動作により、Nxは可能な限り効率的な方法でタスクを実行できますが、`lerna run`の既存のオプションの一部は廃止されることになります。**
廃止されたオプション
--sort
と--no-sort
Nxターゲットが設定されている場合、Lernaはプロジェクトとタスクの依存関係に関する知識に基づいて、常に適切と判断した順序でタスクを実行するため、--sort
と--no-sort
は効果がありません。
--parallel
Lernaはタスクグラフを使用して、並列実行できるタスクを自動的に判断して実行するため、--parallel
は効果がありません。
タスクの並行性を制限したい場合は、グローバルオプションのconcurrency を使用して実現できます。
--include-dependencies
Lerna 6は必要に応じて依存関係のあるタスクを自動的に先に実行するため、--include-dependencies
は廃止されました。ただし、このフラグは、必要のないタスクを含める場合(例:すべての依存プロジェクトのテストを実行する場合)にも引き続き使用できます。
--ignore
Nxと併用する場合、--ignore
は、タスクグラフで必須とみなされるタスクをlerna run
で除外することはありません。
上記のオプションへの影響は、以下の条件が満たされている場合にのみ適用されます。
- ルートに`nx.json`が存在し、`targetDefaults`プロパティが定義されている。
- ターゲットパッケージのpackage.jsonに`"nx"`プロパティが存在する。
それ以外の場合は、Lernaのレガシタスクランナーを使用する場合(`useNx`が`false`の場合)と同じように動作します。