Sementic Versioning

비고
major, minor, patch 각각의 의미는?
Tags
Select
 

Semantic Versioning

버전 관련 팁
 
Node.js랑 nvm 모듈들은 Semantic Versioning을 따른다.
  • MAJOR : API 호환성이 깨질 수 있음.
  • MINOR : 하위 호환성 유지한 채 기능만 추가
  • PATCH : 하위 호환성 유지한 채 버그만 픽스
notion image
 

활용 사례

버전 정보가 주는 의미를 이해하고, 문제를 해결했던 사례를 적는다.
 
브랜치가 붙으면서 yarn.lock 이 변경되었는데 이로 인해 yarn install이 실패하던 사례
notion image
 
notion image
execa 7.1.1^16.14.0과 호환되는데, 프로젝트 세팅으로는 16.13.0으로 되어있었음.
그래서 yarn install이 실패한다.
 
담당자 분은 노드 버전 업그레이드 하는 것을 엄청난 리스크라고 생각하고 최대한 피하려고 하였고,따라서 execa 버전을 낮추는 방향으로 이것저것 시도를 하셨다.
 
하지만 사실 MINOR 버전은 하위호환성을 유지한 채 기능만 추가하는 거라 16.13.016.14.0 으로 업그레이드하는 것은 큰 문제가 되지 않음.
그래서 프로젝트 버전업을 하는 것으로 문제를 해결하였다.