의존성
의존성 업데이트
우리는 Renovate GitLab Bot을 사용하여 몇몇 Node 및 Ruby 의존성을 자동으로 업데이트하는 복수 프로젝트에 대한 병합 요청을 자동으로 생성합니다. renovate 봇이 관리하는 프로젝트의 최신 목록은 해당 프로젝트의 README에서 찾을 수 있습니다.
renovate를 통해 업데이트된 일부 주요 의존성은 다음과 같습니다:
@gitlab/ui
@gitlab/svgs
@gitlab/eslint-plugin
- 그리고
@gitlab/
범위 내의 다른 모든 패키지
우리는 renovate를 사용하여 모든 의존성을 업데이트하는 것을 목표로 삼고 있습니다.
의존성을 자동으로 업데이트하는 것에는 여러 가지 이점이 있습니다. 이 예제 MR을 살펴보세요.
- 새 버전이 릴리스될 때 MR이 자동으로 생성됩니다.
- MR은 MR 설명의 확인란을 확인함으로써 간단하게 다시베이스(Rebase)될 수 있습니다.
- MR에는 변경 로그 요약과 다른 패키지 버전을 비교하는 링크가 포함되어 있습니다.
- MR을 의존성에 직접적으로 책임 있는 사람에게 할당할 수 있습니다.
커뮤니티 기여자에 의한 의존성 업데이트
단순히 의존성만을 업데이트하는 커뮤니티 기여는 거절해도 괜찮습니다. 위에서 제시된 이유로 인해 단순 의존성 업데이트는 자동으로 처리하는 편이 더 나은 결과를 가져옵니다. 커뮤니티 기여가 다시베이스 해야 하거나 충돌이 발생하거나 오래된 MR의 경우, 이를 수정할 지시를 하는 데 드는 노력은 종종 이점을 상쇄시킵니다.
주요 버전 업데이트로 인한 의미 있는 마이그레이션 노력을 동반한 의존성 업데이트의 경우 커뮤니티 기여를 받아들일 수 있습니다.
다음은 간단한 업데이트를 거절하는 이유를 커뮤니티 기여자에게 설명하는 데 사용할 수 있는 메시지입니다:
안녕하세요 기여자님!
이 기여에 대해 매우 감사합니다. 의존성 업데이트만 하는 것 같습니다.
의존성 업데이트가 버전 번호를 증가시키는 것만큼 간단하다면, 시간을 절약하기 위해 Bot이 이를 수행하는 게 좋습니다.
우리의 <a href="https://docs.gitlab.com/ee/development/fe_guide/dependencies.html#updating-dependencies">프론트엔드 개발 지침</a>에서 설명된 대로 이에는 일정한 이점이 있습니다.
현재 우리는 DEPENDENCY를 자동으로 업데이트하지 않을 수 있지만, [가까운 미래에](https://gitlab.com/gitlab-org/frontend/rfcs/-/issues/21) 그렇게 할 계획입니다.
이해해 주셔서 감사합니다. 이 병합 요청을 닫겠습니다.
/close