pnpm lane
Додано у: v11.13.0
Керує лініями випуску для окремих пакунків. Лінія — це паралельний канал випуску: поки пакунок перебуває на одній із ліній, команда pnpm version -r випускає його як попередню версію X.Y.Z-<lane>.N, тоді як решта робочого простору продовжує випускати стабільні версії. Переміщення пакунка назад на головну (main) лінію призводить до випуску його накопиченої стабільної версії під час наступного запуску.
pnpm lane
pnpm lane <name> --filter <pattern>
pnpm lane main --filter <pattern>
Налаштування членства зберігаються в ключі versioning.lanes файлу pnpm-workspace.yaml; ця команда є зручним редактором для цього ключа.
Використання
Показати приналежність до лінії
pnpm lane
Lanes:
alpha:
@example/cli
@example/napi
Якщо жодному пакунку не було призначено лінію, на екрані з’явиться повідомлення: All packages are on the main lane (Усі пакунки знаходяться на лінії main).
Переміщення пакунків до лінії
pnpm lane alpha --filter @example/cli
--filter є обовʼязковим параметром — він визначає пакунки, які потрібно переместити. Назви ліній можуть містити лише літери, цифри та дефіси; вони не можуть складатися виключно з цифр.
Переміщення пакунків назад до лінії main
pnpm lane main --filter @example/cli
main є зарезервованою назвою для лінії за замовчанням. Усі пакунки знаходяться в цьому списку, якщо їх не віднесено до іншої категорії, і пакунки з цього списку випускають стабільні версії. Переведення пакунка до стабільного статусу призводить до випуску стабільної версії, до якої готувалися попередні версії, під час наступного запуску команди pnpm version -r.
Версії ліній
Пакунок на лінії випускає X.Y.Z-<lane>.N, де X.Y.Z — це стабільна версія, до якої веде збірка на цій лінії, а N — послідовний номер, що починається з 0:
| Поточна версія | Очікуваний намір | Лінія | Нова версія |
|---|---|---|---|
2.0.0 | minor | alpha | 2.1.0-alpha.0 |
2.1.0-alpha.0 | patch | alpha | 2.1.0-alpha.1 |
2.1.0-alpha.1 | major | alpha | 3.0.0-alpha.0 |
3.0.0-alpha.0 | — | main | 3.0.0 |
N починається з 0 щоразу, коли змінюється стабільна ціль. Коли bump підвищує рівень цілі — наприклад, коли лінія, що формувала минорну ціль, переходить на major — ціль перераховується, а лічильник обнуляється.
Пакунки в одній фіксованій групі повинні переміщатися між лініями разом.
Параметри
--filter <package_selector>
Визначає пакунки, які потрібно переместити між лініями. Є обовʼязковим під час призначення лінії.