-
Notifications
You must be signed in to change notification settings - Fork 119
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0057d79
commit 774d065
Showing
3 changed files
with
70 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
--- | ||
- Feature Name: (fill me in with a unique ident, `my_feature_name`) | ||
- Start Date: (fill me in with today's date, YYYY-MM-DD) | ||
- RFC PR(s): (add the reference to the PR where this RFC was proposed and discussed, can only be added after the PR has been created) | ||
- Issue(s): (reference issue related with RFC proposal) | ||
--- | ||
|
||
# RFC Name | ||
|
||
## Summary | ||
|
||
[summary]: #summary | ||
|
||
This is a one paragraph explanation of the issue and the proposal. | ||
|
||
## Motivation | ||
|
||
[motivation]: #motivation | ||
|
||
This section details why we are doing something, what use cases it supports, and what we expect the outcome to be. | ||
|
||
## Guide Implementation | ||
|
||
[guide-level-explanation]: #guide-level-explanation | ||
|
||
This is a high-level overview of the process. In this section, explain the proposal like you were teaching it to a new community member. That means you're probably including: | ||
|
||
* Introduction of new named concepts | ||
* Explain things in terms of examples | ||
* Explain the impact and how the feature and its goals can be approached at implementation. | ||
* If applicable, provide sample errors / warnings / or migration guidance | ||
|
||
## Reference Implementation | ||
|
||
[reference-level-explanation]: #reference-level-explanation | ||
|
||
This section provides space for deep technical details as required in the RFC. You need to hit on the following points in your reference implementation: | ||
|
||
* It's interaction with other features | ||
* It is reasonably clear how this would be implemented | ||
* Corner cases are addressed through example | ||
You can (and should) expand on the examples you used in the Guide Implementation and provide additional context. | ||
|
||
## Drawbacks | ||
|
||
[drawbacks]: #drawbacks | ||
|
||
You should explain why we _wouldn't_ do this. There is a cost associated with these changes, and while there wouldn't be an RFC if the benefits didn't outweigh the drawbacks, your readers might not know all of the tradeoffs being made. | ||
|
||
## Rationale / Alternatives | ||
|
||
[rationale-and-alternatives]: #rationale-and-alternatives | ||
|
||
You need to answer why this design is the right design. To do so, you need to understand all of the possible alternatives. You should list alternate designs and ideas and why they weren't considered for the solution. This ensures due diligence has been done on the proposal. | ||
|
||
## Unresolved Questions | ||
|
||
[unresolved-questions]: #unresolved-questions | ||
|
||
You should gather any open questions and either list them in the document (folks often use markdown quoting) or add them to this section at the end of the document. If you want to mark unresolved options inline | ||
|
||
**Open Question:** this is an open question | ||
|
||
Is the common format used. The quote and bold combination (plus its indent) makes it easy to spot when reading through the document. |