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

컴파일러 팀이 관리하는 저장소

rust-lang/rust 저장소가 컴파일러 코드의 대부분을 가지고 있지만, 컴파일러 팀이 책임지는 다른 크레이트/의존성을 포함한 몇 가지 추가 저장소가 있습니다:

이 저장소들 중 어디에서든 발생하는 긴급한 이슈에 팀이 대응할 수 있도록, 컴파일러 팀의 모든 구성원은 풀 리퀘스트를 생성하고 병합할 수 있는 권한을 가지고 있습니다. 다만, 각 저장소에는 일반적으로 해당 저장소를 가장 잘 아는 팀 구성원들이 있으며, 이들이 주요 메인테이너 역할을 합니다.

  • 컴파일러를 해킹하는 데 관심 있는 사람들을 위한 진입점 문서인 rustc 개발 가이드입니다.
  • 팀 자체의 저장소로, 컴파일러 또는 인접 툴링 및 구성 요소에 대한 변경 제안을 등록하는 데 사용됩니다.
  • Cranelift를 기반으로 한 실험적인 rustc 백엔드인 cranelift입니다. 이는 디버그 모드에서 컴파일 시간을 개선할 잠재력이 있습니다. 현재 bjorn3가 관리하고 있습니다. 이는 디버그 모드에서 컴파일 시간을 개선할 잠재력이 있습니다. 현재 bjorn3가 관리하고 있습니다.
  • 컴파일러 팀이 관리하는 LLVM::APFloat 라이브러리의 Rust 포트입니다. LLVM 라이브러리의 포트로서, 이 저장소는 다른 저장소들과 미묘하게 다른 라이선스 체계를 가지고 있습니다. rustc_apfloat#licensing을 참조하십시오.
  • LLVM 및 MLIR용 고성능 자동 미분기인 Enzyme의 포크입니다(자세한 정보는 이 링크 참조). 이 포크는 ZuseZ4가 관리하고 있습니다.
  • GNU 확장 및 DWARF 5 패키지 형식을 지원하는 DWARF 패키징 유틸리티인 thorin입니다. 주로 davidtwco가 관리하고 있습니다.
  • 여러분이 읽고 있는 문서 웹사이트인 Rust Forge입니다. Rust 프로젝트가 공동으로 관리하고 있습니다. Rust 프로젝트가 공동으로 관리하고 있습니다.
  • ar_archive_writer: 다른 LLVM::APFloat 라이브러리와 마찬가지로, 이 라이브러리의 라이선스는 다른 저장소들과 약간 다릅니다. ar_archive_writer#licensing을 참조하십시오.
  • 다른 Rust 프로그램에 임베드되도록 의도된 경량 Datalog 엔진인 datafrog입니다(TODO: 상태?)
  • ena는 Rust로 구현된 union-find / 합동 폐쇄(congruence-closure)로, 우리 추론 변수 테이블의 기저 구현을 포함합니다. 즉 추론 변수의 인스턴스화와 병합을 추적하는 역할을 합니다.
  • literal-escaper는 문자열 리터럴을 언이스케이프하는 라이브러리입니다. 이는 rustc_lexerproc_macro에서 사용됩니다.
  • miri는 Rust의 중간 수준 중간 표현(mid-level intermediate representation)을 위한 인터프리터입니다. 안전 요구 사항을 지키지 못하는 unsafe 코드를 탐지합니다. 안전성 요구 사항을 지키지 못하는 안전하지 않은 코드를 탐지합니다.
  • measuremerustc 이벤트를 기록하고 바이너리 형식으로 직렬화하는 라이브러리입니다. 현재는 rustc 자체 내부용으로만 사용됩니다.
  • odht는 사전 디코딩 없이 디스크에서 메모리로 매핑할 수 있는 해시 테이블을 위한 크레이트입니다. 현재는 rustc 자체 내부용으로만 사용됩니다.
  • rustc-demangle: rustc 심볼을 위한 디맹글링입니다(문서).
  • rustc-hashrustc가 사용하는 비암호화 해싱 알고리즘입니다
  • rustc-rayon은 Rust용 Rayon 데이터 병렬화 라이브러리의 포크입니다. 이는 rustc 컴파일을 병렬화하기 위한 지속적인 노력의 일환입니다. 자세한 내용은 저희의 working areas를 참조하십시오.
  • rustc-stable-hashrustc가 사용하는 크로스 플랫폼, 결정론적이며 안전하지 않은 해싱 알고리즘입니다.
  • stacker는 스택이 공간 부족에 이르렀을 때 스택을 늘리는 데 도움을 주는 라이브러리입니다. 문서를 참고하십시오.

내부용 도구를 담은 그 밖의 저장소는 다음과 같습니다:

  • cargo-bisect: rust 컴파일러의 회귀를 이분 탐색하는 도구로, 버그가 어디서 도입되었는지 찾는 데 매우 유용합니다.
  • 모든 팀이 회의 일정을 등록하는 캘린더가 있습니다. 캘린더 클라이언트는 .ics 파일을 가져와 업데이트를 받을 수 있습니다.
  • jobserver-rs: Rust를 위한 GNU Make jobserver 구현입니다. 문서를 참고하십시오.
  • josh-sync: rust-lang/rust 저장소에서 Josh 서브트리의 Just One Single History 동기화(pull 및 push)를 수행하는 라이브러리입니다.

Rust 프로젝트에 기여를 시작하려 하거나(또는 이미 기여하고 있으며) 이러한 저장소 중 어느 것에라도 전문 지식이나 관심이 있다면, 부담 없이 연락해 주십시오!