일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 2629
- 2482
- DP
- 여름인턴십
- 백준12015
- LIS 알고리즘
- 구간나누기
- 인턴십 면접
- 2228
- 최장증가수열
- 정상회담2
- 백준12738
- 가장긴증가하는 부분수열
- 단어수학
- 카카오
- Longest Increasing Subsequence
- 기술면접
- 카카오 자기소개서
- 백준11053
- 백준
- 카카오 인턴
- 카카오 서류전형
- 파이썬
- 카카오 면접
- Python
- 개발자 면접
- LIS
- 카카오 인턴십
- 1670
- 알고리즘
- Today
- Total
프로그래밍에 대한 고찰 및 생각
[2] Spring Boot Version Convention 본문
지난번 Semantic Version 에 이어 버전 옆에 붙는 태그들에 대해 알아보고자 한다.
GA (General Availability)
public 으로 배포된 버전을 의미한다.
CURRENT
GA 중에 가장 최신 버전을 의미한다. 이것은 보통 모든 새로운 프로젝트에 사용된다.
M (Milestone)
release 과정에서 주요한 stage를 마크할 때 사용되며 정해진 주기마다 배포된다.
SNAPSHOT
release 되기 전 버전을 의미한다.
예를 들어 1.0.0 버전이 배포되기 전에는 1.0.0-SNAPSHOT 이 존재하며 이 버전은 이후에 1.0.0 이 될 것이다.
Q. 실제 version 과 snapshot version은 어떤 차이가 있나?
A. snapshot version 은 수시로 업데이트 될 수 있다. 예를 들어 오늘 1.0-SNAPSHOT을 받았을 때 어제 받은 1.0-SNAPSHOT과 내일 받을 1.0-SNAPSHOT이 다를 수 있다.
PRE
아직 변경되지 않았지만 단지 개발자들이 다가오는 GA 릴리즈의 feature를 테스트하기 위해 배포한 것이다. 그것들은 몇몇 버그를 포함할 수 있는데 이것은 후에 같은 버전의 pre release에서 수정된다. (ex 2.0.0 M1 → fix → 2.0.0 M2, M = Milestone)
이렇게 보면 와닿지 않을 것 같다. 실제 버전 리스트를 보면서 확인해보자.
위 리스트는 2022.04.17 PM 02:48 기준 (UTC+09:00) Spring Security Version 목록이다. (https://spring.io/projects/spring-security#learn)
Spring Security
Spring Security is a framework that focuses on providing both authentication and authorization to Java applications. Like all Spring projects, the real power of Spring Security is found in how easily it can be extended to meet custom requirements
spring.io
버전 목록들을 살펴보면 현재 public 으로 배포된 버전들(GA)이 있고 그중 가장 최신 버전인 5.6.2 버전이 CURRENT 인 것을 알 수 있다.
Spring boot 프로젝트에 Spring Security를 새로 적용한다면 5.6.2 버전을 적용하면 될 것 같다.
6.0.0 5.6.3 5.5.6 버전의 경우 SNAPSHOT 이 붙어있다. (이 버전들은 release 되기 전이므로 GA 는 없음을 알 수 있다)
5.6.3-SNAPSHOT 버전을 클릭해보면 아래와 같은 경고 문구를 볼 수 있다.
해당 버전이 스냅샷으로 아직 안정되지 않았으므로 현재 가장 최신 GA 인 5.6.2 버전을 사용하라고 안내하고 있다.
PRE 버전인 6.0.0과 5.7.0도 확인할 수 있다. 이 역시도 안정된 버전이 아니므로 클릭해보면 위와 동일한 문구를 확인할 수 있다.
출처. https://stackoverflow.com/questions/5901378/what-exactly-is-a-maven-snapshot-and-why-do-we-need-it