Какая первая цифра в версионировании

Ответ

Первая цифра в семантическом версионировании (SemVer) — это MAJOR. Она увеличивается при несовместимых изменениях API. Формат: MAJOR.MINOR.PATCH (например, 2.1.3).

Пример:

  • 1.0.0 → Первый стабильный релиз.
  • 2.0.0 → Ломающие изменения, код может перестать работать.
  • 2.1.0 → Добавлена функциональность без ломающих изменений.
  • 2.1.1 → Исправлены баги, обратная совместимость сохранена.

Ответ 18+ 🔞

Вот ты сидишь, пишешь свой код, всё работает, красота. И тут тебе говорят: "А давай-ка по семантическому версионированию, для порядка". И ты такой: "А, ну, окей, SemVer, чё там сложного".

А потом начинается пиздец, Карл.

Смотри, есть три цифры, идут через точки: МАЖОР.МИНОР.ПАТЧ (типа 2.1.3). И первая, мажорная — это, блядь, главная. Царица бала, хуле.

Вот эта первая цифра — MAJOR. Она поднимается только тогда, когда ты настолько всё обосрал с API, что обратной совместимости — ноль ебать. Ты такой взял и всем, кто на твой код завязан, спокойной жизни не оставил. Раньше функция makeTea() возвращала чайник, а теперь, сука, отправляет асинхронный запрос на чайник в облако и возвращает промис. Всё, пизда. Код у всех, кто обновляется, ломается в хлам. Вот для таких, ёпта, "приятных" сюрпризов и существует увеличение мажорной версии. С 1.0.0 скачешь сразу на 2.0.0. Как бы кричишь миру: "ВСЁ, ПЕРЕПИСЫВАЙТЕ СВОИ СКРИПТЫ, Я ГЕНИЙ ИЛИ ИДИОТ, НЕ РАЗБЕРЁШЬ!"

А теперь примеры, чтобы в голове уложилось, а то я вижу, ты уже глазами хлопаешь:

  • 1.0.0 — Ну вот, родился, сука. Первый стабильный релиз. Ура. Шампанского. Можно начинать от него плясать.
  • 2.0.0 — А вот тут я, блядь, взял и всё поломал. API теперь другое. Всем, кто обновился — соболезную, идите нахуй, чините свои интеграции. Это и есть ломающее изменение.
  • 2.1.0 — О, а тут я молодцом. Добавил новую фичу, но старый код всё ещё работает. Никого не обидел. Минорку подкрутил — все довольны.
  • 2.1.1 — Ну тут вообще мелочь. Какой-то косяк поправил, багу пофиксил. Ничего не поменял, только подлатал. Патч-версия, всё окей.

Короче, запомни: первая цифра — это уровень твоего бесстрашия (или ебанутости). Поднял её — готовься к тому, что тебя могут начать хуями крошить в ишью-трекере. А если не готов — крути минор с патчами, как мартышлюшка.