1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
| | title: <The meaningful name of the proposal>
Issue: <number assigned by Debbugs>
Status: <pending|successful|withdrawn|deprecated>
Supporter: <Your Name>
Co-supporter(s): <Some> <Names>
date: <date when the process starts>
---
# Summary
A one-paragraph explanation. Main sales pitch.
# Motivation
Describe the problem·s this RFC attempts to address as clearly as possible and
optionally give an example. Explain how the status quo is insufficient or not
ideal.
# Detail Design
Main part. The sections answers What are the tradeoffs of this proposal
compared to status quo or potential alternatives? Explain details, corner
cases, provide examples. Explain it so that someone familiar can understand.
It is best to exemplify, contrived example too. If the Motivation section
describes something that is hard to do without this proposal, this is a good
place to show how easy that thing is to do with the proposal.
## The Cost Of Reverting
Will your proposed change cause a behaviour change? Assess the expected
impact on existing code on the following scale:
0. No breakage
1. Breakage only in extremely rare cases (exotic or unknown cases)
2. Breakage in rare cases (user living in cutting-edge)
3. Breakage in common cases
Explain why the benefits of the change outweigh the costs of breakage.
Describe the migration path. Consider specifying a compatibility warning for
one or more releases. Give examples of error that will be reported for
previously-working cases; do they make it easy for users to understand what
needs to change and why?
How will your proposed change evolve with time? What is the cost of changing
the approach later?
The aim is to explicitely consider beforehand potential Compatibility issues.
# Drawbacks or Open Questions
At submitting time, be upfront and trust that the community will help.
At the end of the process, this section will be empty. If not, please be
explicit with the known issues by adding a dedicated subsection under Detail
design.
The aim here is to ease when revisiting the topic. It will help to grasp the
essentials and invite to read all the discussion.
|