TGViewer
Заметки Андрея Романова Заметки Андрея Романова @andrew_r_notes · 1.23K subscribers
Post #161 4.66K
​​Автоматизация релизов с помощью semantic-release

На работе мне регулярно нужно публиковать NPM-пакет и вести для него список изменений. Раньше я делал это вручную, и поэтому на это уходило ощутимое количество времени: нужно было сформировать список изменений, определить следующую версию, выполнить npm publish, дождаться прогона всех тестов и самой публикации.

Если вы столкнулись (или в будущем столкнётесь) с такой же проблемой, сразу внедряйте semantic-release: он автоматизирует всю рутину и максимально исключает человеческий фактор (например, неправильный выбор следующей версии пакета). semantic-release встраивается в CI, так что для публикации новой версии пакета достаточно просто запушить код в репозиторий.

Что особенно круто — процесс публикации максимально абстрагирован и разбит на шаги, а вся специфичная логика реализуется через плагины. Это позволяет делать публикацию куда угодно, а не только в NPM, да и вообще кастомизировать процесс публикации: например, можно реализовать отправку списка изменений в Slack после публикации.

Единственное, что от вас потребуется — один раз настроить инструмент и затем выполнять соглашения по именованию коммитов, по которым он будет автоматически определять следующую версию пакета и формировать список изменений. Кстати, требования к именованию коммитов — ещё одно косвенное преимущество: история изменений становится чище и читабельнее.
  • ❤ 1
More from @andrew_r_notes
  1. Dec 31, 2025С наступающим 2026 Пришло время подвести итоги года, в очередной раз делюсь новостями и ре…
  2. Feb 23, 2025Мониторинг падений браузера В рабочем чате недавно интересовались, можно ли как-то отследи…
  3. Dec 31, 2024С наступающим 2025 Давно ничего не писал, собрался с силами и вернулся к давно забытому жа…
  4. Feb 20, 2022Как упростить кодревью Делюсь проверенными на личном опыте способами упростить ревью вашег…
  5. Jun 2, 2021Список сделанных рабочих задач Рутинная, но крайне полезная практика — ведение списка сдел…
  6. Jan 12, 2021​Подход Fail Fast В разработке есть довольно здравые и широко применимые подходы, о которы…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →