Download the template here.

GEP X — Template and Instructions#

Author

First Author, Second Author

Status

<Draft | Active | Accepted | Provisional | Deferred | Rejected Withdrawn | Final | Superseded>

Type

<Standards Track | Process>

Created

<date created on, in yyyy-mm-dd format>

Resolution

One of Accepted | Rejected | Withdrawn once resolution has been found

Abstract#

The abstract should be a short description of what the GEP will achieve.

Note that the — in the title is an elongated dash, not - (a minus sign).

Motivation and Scope#

This section describes the need for the proposed change. It should describe the existing problem, who it affects, what it is trying to solve, and why. This section should explicitly address the scope of and key requirements for the proposed change.

Usage and Impact#

This section describes how users of GETTSIM will use features described in this GEP. It should be comprised mainly of code examples that wouldn’t be possible without acceptance and implementation of this GEP, as well as the impact the proposed changes would have on the ecosystem. This section should be written from the perspective of the users of GETTSIM, and the benefits it will provide them; and as such, it should include implementation details only if necessary to explain the functionality.

Backward compatibility#

This section describes the ways in which the GEP breaks backward compatibility.

The #GEPs stream will contain the GEP up to and including this section. This is to avoid losing users who are not interested in implementation details and instead focus the discussion on usage and impact of the intended features.

Detailed description#

This section should provide a detailed description of the proposed change. It should include examples of how the new functionality would be used, intended use-cases and pseudo-code illustrating its use.

Implementation#

This section lists the major steps required to implement the GEP. Where possible, it should be noted where one step is dependent on another, and which steps may be optionally omitted. Where it makes sense, each step should include a link to related pull requests as the implementation progresses.

Any pull requests or development branches containing work on this GEP should be linked to from here. (A GEP does not need to be implemented in a single pull request if it makes sense to implement it in discrete phases).

Alternatives#

If there were any alternative solutions to solving the same problem, they should be discussed here, along with a justification for the chosen approach.

Discussion#

This section may just be a bullet list including links to any discussions regarding the GEP:

  • Links to relevant GitHub issues, pull requests.

  • Discussion on XXX

References and Footnotes#