Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

백포트를 위한 풀 리퀘스트 자동 상정

컴파일러나 표준 라이브러리(또는 기타 구성 요소)의 회귀가 수정되면, 해당 패치를 회귀가 발생한 릴리스 채널(beta 또는 stable, 백포트 참고)로 백포트할지 평가합니다. 관련 팀이 수정 사항을 검토하고 백포트를 수락하거나 거절합니다.

중요한 회귀를 수정하는 패치의 가시성을 높이고 팀의 의사 결정을 돕기 위해, Zulip 채팅에 논의 주제를 자동으로 열 수 있습니다(예시).

백포트를 위한 풀 리퀘스트 자동 상정 기능은 git 저장소의 모든 새 패치를 검사하여 첫 코멘트에서 텍스트 표식(예: “Fixes #123”, GitHub 문서 참고)을 찾도록 구성할 수 있습니다. 그러한 텍스트가 발견되고, 수정되는 이슈가 P-high 또는 P-critical로 분류되어 있으며 required-issue-label 레이블(예: regression-from-*) 중 하나를 가지고 있으면, 핸들러가 구성된 add-labels 레이블을 적용합니다.

설정

triagebot.toml에 [backport.<foo>] 테이블이 하나 이상 구성되어 있으면 해당 저장소에서 자동 백포트 레이블 지정이 활성화됩니다:

[backport.foo]
required-pr-labels = ["T-compiler"]
required-issue-label = "regression-from-stable-to-beta"
add-labels = ["beta-nominated"]

[backport.bar]
required-pr-labels = ["T-compiler"]
required-issue-label = "regression-from-stable-to-stable"
add-labels = ["beta-nominated", "stable-nominated"]

[backport.baz]
required-pr-labels = ["T-libs"]
required-issue-label = "regression-from-stable-to-stable"
add-labels = ["stable-nominated"]

foo, bar, baz는 테이블을 서로 구분하기 위한 고유 식별자의 예시이며, 어떤 값이든 사용할 수 있습니다.

필드 설명:

  • required-pr-labels: 풀 리퀘스트가 열릴 때 반드시 가지고 있어야 하는 레이블 목록입니다(팀 레이블 T-* 사용을 권장합니다).
  • required-issue-label: 회귀로 식별되기 위해 해당 회귀가 반드시 가지고 있어야 하는 레이블입니다. regression-from-stable-to-nightly, regression-from-stable-to-beta, regression-from-stable-to-stable 중 하나를 사용할 수 있습니다.
  • add-labels: 모든 조건이 충족될 경우 풀 리퀘스트에 지정될 레이블 목록입니다.

구현

src/handlers/backport.rs를 참고하십시오.