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

안정화 보고서 템플릿

이것은 무엇입니까?

이것은 언어 기능의 안정화 보고서를 위한 템플릿입니다. 이 질문들은 가장 자주 필요한 세부 사항을 이끌어 내는 것을 목표로 합니다. 이러한 세부 사항은 리뷰어가 잠재적인 문제를 미리 파악하는 데 도움이 됩니다. 템플릿의 모든 부분이 모든 안정화에 해당하지는 않습니다. 질문이 해당하지 않는 경우, 그 이유를 간략히 설명하십시오.

구분선 이후의 모든 내용을 복사하여 Markdown으로 편집하십시오. 각 TODO를 여러분의 답변으로 바꾸십시오.


안정화 보고서

요약

이 기능이 무엇이며 어떤 가치를 제공하는지 다시 한번 설명해 주십시오. 이 안정화에 이르기까지의 경위를 이야기해 주십시오.

예를 들어, 다음을 참고하십시오.

TODO

추적:

  • TODO (추적 이슈 링크)

Reference PR:

  • TODO (Reference PR 링크)

cc @rust-lang/lang @rust-lang/lang-advisors

안정화되는 것

안정화되는 각 동작을 설명하고, 이제 허용되는 코드의 짧은 예시를 제시하십시오.

#![allow(unused)]
fn main() {
todo!()
}

안정화되지 않는 것

기능 중 안정화되지 않는 부분을 설명하십시오. 나중에 하고자 할 수 있는 것과 이를 위해 열어 두는 여지에 대해 이야기하십시오. 안정화하지 않는 부분이 사용자에게 예상치 못한 결과를 초래할 수 있다면, 특히 그 점에 대해 이야기하십시오.

설계

Reference

Reference에는 어떤 업데이트가 필요합니까? 각 PR에 대한 링크를 제공하십시오. 이 기능을 설명하는 데 필요한 내용이 Reference에 빠져 있다면 그 점을 논의하십시오.

  • TODO

RFC 이력

이 기능에 대해 어떤 RFC가 승인되었습니까?

  • TODO

미해결 질문에 대한 답변

RFC에서 해결되지 않고 남은 질문은 무엇입니까? 그 질문들에는 어떻게 답이 내려졌습니까? 관련된 lang 결정이 있다면 링크를 제공하십시오.

TODO

RFC 이후의 변경 사항

RFC가 승인된 이후 사용자에게 드러나는 다른 변경 사항으로는 무엇이 있었습니까? lang 팀이 승인한 변경 사항(해당 결정에 대한 링크 포함)과 이 안정화 보고서에서 팀에 처음 제시되는 변경 사항을 모두 설명하십시오.

TODO

핵심 논점

어떤 결정이 가장 어려웠으며, 안정화할 동작 중 어떤 것이 가장 논쟁적이었습니까? 모든 측의 주요 인자를 요약하고 이전 문서와 논의에 링크하십시오.

TODO

Nightly 확장

이 기능의 확장 중 여전히 불안정한 상태로 남아 있는 것이 있습니까? 그러한 확장을 실수로 확정하지 않는다는 것을 어떻게 알 수 있습니까?

TODO

닫히는 문

이 안정화는 향후 언어 변경에 대해 어떤 문을 닫습니까? 예를 들어, 이 안정화로 인해 다른 RFC, 언어 실험 또는 진행 중인 것으로 알려진 제안을 나중에 수행하기가 더 어려워지거나 불가능해집니까?

피드백

테스트 요청

“테스트 요청(call for testing)“이 이루어졌습니까? 그렇다면 어떤 피드백을 받았습니까?

TODO

nightly 사용

이 기능을 사용하는 것으로 알려진 nightly 사용자가 있습니까? GitHub에서 grep으로 #![feature(FEATURE_NAME)]의 사용 사례 수를 세어 보면 유용한 정보를 얻을 수 있습니다.

TODO

구현

주요 부분

구현의 주요 부분을 요약하고, 코드와 관련 PR로 연결되는 링크를 제공하십시오.

예를 들어, async 클로저의 주요 부분을 다음과 같이 세분화한 내용을 참고하십시오:

TODO

커버리지

이 기능의 테스트 커버리지를 요약하십시오.

이 기능의 “경계“가 무엇인지 고려하십시오. 저희는 특히 이 기능과 인접한 것 중 정확히 무엇을 안정화하지 않는지 확인해 주는 테스트를 보고 싶습니다. 물론 테스트는 기능이 동작한다는 것을 포괄적으로 입증해야 합니다. 흔한 실수를 저질러 기능을 잘못 사용했을 때 나타나는 진단 메시지를 보여 주는 것도 고려하십시오.

각 테스트의 맨 위에 테스트의 목적과 입증하고자 하는 불변 조건들을 설명하는 주석을 포함하십시오. 이는 저희의 리뷰에 큰 도움이 됩니다.

테스트 커버리지에서 알려져 있거나 의도적으로 비워 둔 부분을 설명하십시오.

테스트 폴더와 개별 테스트에 대한 맥락을 설명하고 링크를 제공하십시오.

TODO

해결되지 않은 버그

이 기능과 관련된 해결되지 않은 버그에는 어떤 것이 있습니까? 해당 버그를 나열하십시오. 이 중 안정화를 블록해야 하는 것이 있습니까? 그렇게 판단한 이유를 논의하십시오.

TODO

  • TODO
  • TODO
  • TODO

해결되지 않은 FIXME

해당 기능의 코드에 아직 남아 있는 FIXME는 무엇이며, 이를 그대로 두어도 괜찮은 이유는 무엇입니까?

TODO

도구 변경 사항

이 기능을 지원하기 위해 다른 도구에 어떤 변경이 필요합니까? 이 작업은 완료되었습니까? 관련된 모든 PR과 이슈의 링크를 제공하십시오.

  • rustfmt
    • TODO
  • rust-analyzer
    • TODO
  • rustdoc(JSON 및 HTML 모두)
    • TODO
  • cargo
    • TODO
  • clippy
    • TODO
  • rustup
    • TODO
  • docs.rs
    • TODO

TODO

호환성을 깨는 변경

이 안정화가 알려진 호환성을 깨는 변경에 해당한다면, crater 보고서, crater 보고서 분석, 그리고 이 호환성 깨짐의 영향을 받는 생태계 프로젝트에 우리가 제출한 모든 PR에 대한 링크를 제공하십시오. 우리가 파악하거나 수정할 수 있는 범위에 어떤 한계가 있는지 논의하십시오.

TODO

Crater 보고서:

  • TODO

Crater 분석:

  • TODO

영향을 받는 크레이트에 제출한 PR:

  • TODO
  • TODO
  • TODO

타입 시스템, 연산 의미론

컴파일 타임 검사

정의되지 않은 동작을 방지하기 위해 필요한 컴파일 타임 검사로는 어떤 것들이 수행됩니까?

이러한 검사가 수행되고 있음을 보여 주는 테스트의 링크를 제시하십시오.

TODO

  • TODO
  • TODO
  • TODO

타입 시스템 규칙

이 기능에 대해 어떤 타입 시스템 규칙이 강제되며, 각 규칙의 목적은 무엇입니까?

TODO

기본적으로 건전합니까?

이 기능의 구현에 UB를 방지하기 위한 특정한 검사가 필요합니까, 아니면 기본적으로 건전하며 위험한/unsafe 연산을 수행하려면 명시적인 옵트인이 필요합니까? 기본적으로 건전하지 않다면, 그 근거는 무엇입니까?

TODO

추상 기계(AM)를 깨뜨립니까?

사용자가 이 기능을 사용하여 정의되지 않은 동작을 일으키거나, Rust의 추상화를 깨뜨리고 그 아래에 있는 어셈블리 수준의 구현을 드러낼 수 있습니까? 그렇다면 이를 설명하십시오.

TODO

일반적인 상호 작용

임시 값

이 기능은 임시 값을 생성할 수 있는 새로운 표현식을 도입합니까? 그러한 임시 값의 스코프는 무엇입니까?

TODO

드롭 순서

이 기능은 값을 드롭해야 하는 순서에 관한 의문을 제기합니까? 여기서 내려진 결정과, 그 결정이 이전의 결정들과 어떻게 일관되는지 설명하십시오.

TODO

확장 전 / 확장 후

이 기능은 확장 전에 허용되어야 하는 것(예: #[cfg(false)]로 덮인 코드)과 확장 후에 허용되어야 하는 것에 관한 의문을 제기합니까? 이에 관해 어떤 결정이 내려졌습니까?

TODO

에디션 위생

이 기능이 에디션에 따라 제한된다면, 토큰의 에디션 위생 측면에서 코드를 허용할지 거부할지를 어떻게 결정합니까? 예를 들어, 결정할 때 어떤 토큰을 기준으로 삼습니까?

TODO

SemVer에 미치는 영향

이 기능으로 인해 라이브러리 작성자가 마이너 버전을 릴리스할 때 다운스트림이 깨지지 않도록 새롭게 주의해야 하는 부분이 생깁니까? 그러한 부분을 설명하십시오. 이러한 새로운 위험 요소는 RFC 1105에 따르면 “메이저“입니까, “마이너“입니까?

TODO

다른 기능의 노출

이 기능으로 인해 어떤 식으로든 동작이 노출될 수 있는 다른 불안정 기능이 있습니까? 그럴 위험이 가장 큰 기능은 무엇입니까?

TODO

경과

지금에 이르기까지의 과정을 이해하는 데 중요한 이슈와 PR을 나열하십시오.

  • TODO
  • TODO
  • TODO

감사의 말

공로를 인정하고 안정화 소식을 알릴 수 있도록 이 기능에 기여한 사람들을 이름과 함께 정리하십시오. 이 작업에 참여한 사람 중 지금 안정화해야 한다고 생각하지 않는 사람이 있습니까? 그렇다면 그 의견을 듣고 싶습니다.

TODO

미결 항목

안정화 전에 완료되어야 하지만 아직 완료되지 않은 것으로 알려진 항목을 모두 나열하십시오.

  • TODO
  • TODO
  • TODO