Семантическая версия NPM для альфа / бета-пакетов - PullRequest
0 голосов
/ 25 сентября 2019

У нас есть несколько внутренних пакетов - как Nuget, так и NPM - которые мы используем в ряде внутренних приложений.Все эти пакеты рассматриваются как своего рода бета / ранний доступ - нет формальных требований и т. Д., И изменения вносятся в каждом конкретном случае.

С чем мы боремся, так это версионированием.Насколько я понимаю, по крайней мере для пакетов NPM номера версий должны быть major.minor.patch или Break-changes.new-features.bug-fixes.

Мы обнаруживаем, что существуеттенденция вносить критические изменения в пакеты и просто увеличивать пакет исправлений, что приводит к путанице.Одним из аргументов является то, что мы должны увеличивать основную версию каждый раз, когда у нас происходят серьезные изменения.Другим аргументом является то, что, поскольку мы до версии 1.0, ожидаются критические изменения, поэтому приращения патча / минорной версии вполне приемлемы.

Последнее осложнение заключается в том, что некоторые из этих пакетов зависят от других пакетов,скажем, угловой.При обновлении до более поздних версий Angular мы обнаруживаем, что еще больше боремся с управлением версиями, поскольку есть желание выровнять приращения версий Angular, но при этом поддерживать возможность увеличения основных версий для прерывания изменений.В настоящее время мы обсуждаем переход на angular-version.breaking-changes.nonbreaking изменения способ управления версиями наших пакетов.

Любопытно услышать некоторые мысли о семантическом версионировании от любого, кто думает, что он понял это правильно,Как ты делаешь это?Когда вы переходите от -beta до 1.0?Используете ли вы майор / минор / патч версионирование по назначению?

...