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

구성원 자격

현재 구성원 자격에는 두 단계가 있습니다.

  • 구성원: r+ 권한, 봇 권한, 인프라 접근 권한을 가진 정기적인 기여자
  • 메인테이너: 컴파일러의 품질과 컴파일러 팀의 건전한 운영에 힘쓰기로 약속한 구성원

구성원이 되는 과정

컴파일러에 기여하려는 사람은 보통 두 가지 방법 중 하나로 시작합니다. “일회성” 이슈를 해결하거나, 기존 워킹 그룹 중 하나에 참여할 수 있습니다. 이들은 아직 컴파일러를 잘 알지 못하며 특별한 권한도 없습니다. 이들은 triagebot을 통해 이슈를 배정받고, (보통) 멘토나 멘토링 안내에 따라 작업합니다.

컴파일러 팀 구성원

한동안 꾸준히 기여한 사람은 컴파일러 팀 구성원으로 승격될 수 있습니다(아래 의사 결정 방식 절을 참고하십시오). 이 직함은 해당 인물이 꾸준히 기여하는 사람임을 나타냅니다.

이러한 승격이 적절한 시점의 정확한 조건을 정의하기는 어렵습니다. 구성원으로 승격되는 것은 단순히 여러 항목을 충족했는지 확인하는 문제가 아닙니다. 다만 일반적으로는 다음 세 가지를 보여 주었을 때 준비가 되었다고 봅니다.

  • “지속성” – 어떤 방식으로든 꾸준히 기여하고 있어야 합니다. 예를 들어 몇 가지 프로젝트를 완료했다는 뜻일 수 있습니다.
  • “독립성과 숙련도” – 적어도 워킹 그룹의 범위 안에서는 작업을 맡을 때 어느 정도 독립적으로 움직여야 합니다. 간단한 PR에 대해서는 다른 사람을 멘토링할 수 있을 정도여야 합니다.
  • “친절함” – 컴파일러 팀 구성원은 Rust 조직의 일원이 되며, 행동 강령에 관해 더 높은 기준을 적용받습니다. 행동 강령의 문구뿐 아니라 그 정신도 지켜야 합니다.

구성원으로 승격되면 다음과 같은 여러 권한을 얻습니다.

  • 구성원은 r+(풀 리퀘스트 승인) 권한을 가지며 리뷰를 할 수 있습니다(앞서 설명한 것처럼 이 권한을 적절히 사용해야 합니다). 또한 perf/rustc-timer 및 이와 비슷한 봇을 제어할 수 있습니다. bors와 r+에 관한 문서는 https://bors.rust-lang.org에서 확인하십시오.

    팁: bors 권한에 관한 기본 규칙은 다음과 같습니다. 악성 코드가 있는지 먼저 확인하지 않았다면 try 빌드를 하지 말고, 해당 코드를 효과적으로 리뷰할 수 있다는 충분한 확신이 없다면 r+를 하지 마십시오.

  • 컴파일러 팀 구성원은 Rust 조직의 일원이므로 레이블을 수정하고 이슈를 배정받을 수 있습니다.

  • 구성원은 GitHub의 rust-lang/compiler 팀에 소속되므로, 누군가 팀 전체를 호출할 때 핑을 받습니다.

  • 구성원은 rust-lang.org 웹 페이지에 이름이 게시됩니다.

또한 몇 가지 의무도 따릅니다(일부는 선택 사항입니다).

  • 구성원은 리뷰어 순번에 추가되기를 원하는지 질문을 받게 됩니다.
  • 구성원은 팀을 돕기 위해 그 밖의 다양한 메인테이너 활동에 참여할 수 있습니다.
  • 구성원에게는 행동 강령에 관해 일반인보다 더 높은 기준이 적용됩니다.

컴파일러 팀 구성원이 된다는 것의 의미

컴파일러 팀의 구성원이 되면 다음과 같은 여러 가지 일이 일어납니다.

  • 내부 논의가 이루어지거나 아주 초기 단계의 아이디어가 공유되는 비공개 Zulip 스트림에 접근할 수 있게 됩니다. 새로운 팀 구성원들에게 인사를 건네 보십시오!

  • 여러 GitHub 저장소를 구독하게 되며 쓰기 권한도 얻게 됩니다. 이제 어떤 저장소에 접근할 수 있는지 이 GitHub 페이지에서 확인하십시오. 그중 일부는 활동이 거의 없거나 더 이상 쓰이지 않으므로 전부 신경 쓰실 필요는 없습니다.

    팁: GitHub는 쓰기 권한을 얻은 모든 저장소에 여러분을 자동으로 구독자로 추가합니다. 이 동작은 설정(여기)에서 끌 수 있습니다.

  • 또한 all@rust-lang.org 메일링 리스트에도 구독됩니다. 메일링 리스트 구독이 어떻게 이루어지는지는 이 파일을 참고하십시오. 이 메일링 리스트는 메일이 매우 드물게 오며(아마 1년에 몇 통 정도), 모든 기여자에게 소식을 전하는 수단입니다. 이 주소로 스팸을 보내는 일은 없을 것입니다.

메인테이너

컴파일러 팀 구성원으로 1년을 활동한 뒤에는 컴파일러 팀 메인테이너가 되기를 요청하거나 요청받을 수 있습니다. 이는 단순히 꾸준한 기여자일 뿐만 아니라 팀이나 컴파일러의 일부(또는 여러 부분)의 방향을 적극적으로 이끌어 가는 데 도움을 주고 있다는 뜻입니다.

  • 컴파일러 팀 메인테이너는 적어도 하나 이상의 유지보수 활동에 참여할 것으로 기대됩니다.
  • 컴파일러 팀 메인테이너는 rust-lang 웹사이트에서 “Maintainer” 역할로 표시됩니다.

승격 결정 방식

어떤 사람이 한동안 컴파일러에 기여해 왔다면, 기존 컴파일러 팀 구성원이 그 사람을 추천할 수도 있고, 본인이 컴파일러 팀 리드에게 자신의 기여 이력이 팀 구성원이 되기에 충분한지 물어볼 수도 있습니다.

컴파일러 팀 리드는 그 사람에게 구성원 초대를 보내는 데 우려 사항이 있는지 나머지 컴파일러 팀 구성원들에게 확인합니다. 반대 의견이 없으면 초대를 보냅니다. 일주일 이내에 답변하는 것을 목표로 하지만, 더 오래 걸릴 수도 있습니다(대개 결정 자체와는 무관한 이유 때문입니다).

당사자가 초대를 수락하면 컴파일러 팀 리드는 새로운 역할을 반영하도록 team 저장소를 업데이트합니다.

코드만이 전부가 아닙니다

컴파일러 팀의 구성원이 된다고 해서 반드시 PR을 작성해야 하는 것은 아니라는 점을 강조해 둘 만합니다. 컴파일러를 지원하기 위해 해야 하는 일은 매우 다양하며, 이러한 일도 구성원 자격의 근거가 되어야 합니다. 그러한 일에는 회의 준비, 회의 참여, 이슈 bisect 및 트리아지, 문서 작성, rustc-dev-guide 작업 등이 포함됩니다.

특히 컴파일러 팀 구성원이 되기 위한 가장 중요한 기준은 규칙적이고 꾸준한 참여입니다. 컴파일러 팀 메인테이너의 경우 가장 중요한 기준은 팀이나 컴파일러의 방향을 적극적으로 이끌어 가는 것입니다.

전임 구성원 상태

컴파일러 팀 구성원이나 메인테이너가 언제든 참여를 잠시 쉬고 싶다면, 스스로 전임 구성원 상태로 전환하는 것을 선택할 수 있습니다. 전임 구성원 상태가 되면 GitHub 별칭 등에서 제외되므로, 핑이나 메시지에 신경 쓰지 않아도 됩니다. 또한 r+ 권한도 갖지 않습니다. 다만 전임 구성원도 GitHub 조직 전체의 구성원으로는 계속 남습니다.

전임 구성원 상태인 사람은 언제든지 “활동” 상태로 복귀를 요청할 수 있습니다. 이 요청은 특별한 사정이 없는 한 보통 자동으로 승인됩니다.

전임 구성원 상태인 사람도 여전히 이전에 도달했던 수준의 팀 구성원이며 이를 공개적으로 밝힐 수 있지만, 활동했던 기간도 함께 밝혀야 합니다.

메인테이너 역할 맡기 및 내려놓기

컴파일러 팀 구성원이 메인테이너가 되어 컴파일러를 적극적으로 유지 관리하기로 약속한 후에도, 이러한 지속적인 책임에서 일시적으로 또는 무기한으로 물러나고 싶을 수 있습니다. 어느 경우든 메인테이너는 컴파일러 팀 리드에게 알리거나 team 저장소에 직접 PR을 열어, 메인테이너 마커 팀에서 자신을 제외하고 전임 구성원 목록에 자신을 추가할 수 있습니다.

이후 이전 메인테이너가 유지 관리 업무를 재개하고 싶다면, 컴파일러 팀 리드에게 복귀를 요청할 수 있습니다. 이 요청은 특별한 사정이 없는 한 보통 자동으로 승인됩니다.

컴파일러 팀 전임 구성원

마찬가지로 컴파일러 팀의 구성원 누구든 기여와 팀과의 교류를 장기간 쉬고 싶다면, 컴파일러 팀 리드에게 알리거나 team 저장소에 직접 PR을 열어 자신을 전임 구성원 상태로 옮길 수 있습니다.

전임 구성원이 이후 컴파일러 팀 구성원 자격을 재개하고 싶다면, 컴파일러 팀 리드에게 복귀를 요청할 수 있으며 이는 보통 승인됩니다.

6개월 동안 활동하지 않으면 자동으로 전임 구성원 상태로 전환

구성원이나 메인테이너가 컴파일러에서 6개월간 활동하지 않았다면, 전임 구성원 상태로 전환할 의향이 있는지 본인에게 묻습니다. 그렇다고 답하거나 응답이 없으면 전임 구성원 상태로 전환될 수 있습니다. 활동 상태를 유지하고 싶다면 그래도 괜찮지만, 계속 활동하지 않는다면 주기적으로 다시 질문을 받게 됩니다.

절차: 새 팀 구성원 추가하기

기존 구성원들이 팀 구성원 후보를 상정하면, 팀 리드가 새 팀 구성원을 추가하기 위해 따를 수 있는 표준 절차가 있습니다:

  1. 팀 리드가 모더레이션 팀에 연락하여 알고 있는 반대 사유가 있는지 묻습니다. 반대 사유가 없고 팀 구성원들이 동의하면, 새 기여자에게 합류를 요청합니다.

  2. 후보자에게 연락하여 팀 합류에 관심이 있는지 묻습니다:

Hey $name, you've been nominated for compiler team membership by a few people on the compiler
team! The [compiler team re-org RFC][rfc] has the full details as to what this means. This would
grant you permission to resources like bors and such.

This would not require you to take on additional work or responsibilities (though joining the
review queue is encouraged), and is just public recognition of the great work you've already been
doing around the compiler!

If you would like to accept, please let me know and I can update the teams repo accordingly.

[rfc]: https://rust-lang.github.io/rfcs/3599-compiler-team-reorganisation.html#team-members
  1. 새 후보자를 teams 저장소와 컴파일러 팀에 추가합니다. 이 작업은 Zulip, GitHub 등과 동기화되어 새 팀 구성원에게 접근 권한과 각종 권한을 부여합니다.

  2. 새 팀 구성원을 소개하는 Inside Rust 블로그 게시물의 초안을 작성합니다. 템플릿은 이전 예시를 참고하십시오.