Semantic Versioning sucks - but we can fix it
- 세만틱 버전닝의 문제점: 기존 방식은 숫자의 로그 스케일 인식으로 인해 실제 변경의 중요성을 제대로 반영하지 못함. 🤯
- 에폭 세만틱 버전닝 제안: 주요 버전 변경을 작은 단위 업데이트로 나누어 점진적인 변화를 가능하게 함. 🌱
- 0.x.x 버전닝 전략: 주요 버전을 0으로 유지하여 작은 breaking change를 쉽게 적용하고, 사용자에게 큰 부담을 주지 않음. 👶
- 점진적 배포의 중요성: 모든 부분을 연결한 후 점진적으로 배포하여 문제 발생 시 원인 파악 및 해결 용이. 🔍
- 버전 번호의 본질: 단순한 숫자가 아닌, 코드베이스의 특정 시점을 나타내는 마커이자 사용자와의 소통 수단. 📌
- breaking change의 상대성: 모든 변경이 모든 사용자에게 breaking change가 되는 것은 아님. 개별 사용자의 상황에 따라 다름. 🧑💻
- 선행 0 버전의 특수 규칙: 선행 0 버전에서는 모든 마이너 버전 변경이 breaking change로 간주됨. ⚠️