feat: add enhancement template
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
This commit is contained in:
parent
92161abfdc
commit
38fe0f5319
2 changed files with 85 additions and 0 deletions
23
enhancements/README.md
Normal file
23
enhancements/README.md
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
# Enhancement Proposal
|
||||||
|
|
||||||
|
## Why do we need it?
|
||||||
|
|
||||||
|
Enhancement Proposal (EP) is a design document providing information to the community, or describing a new feature for Dex.
|
||||||
|
|
||||||
|
We intend EPs to be the primary mechanisms for proposing major new features.
|
||||||
|
This will make it easier for community to describe, track, and look through the history of changes that a going to affect the future development of a product.
|
||||||
|
|
||||||
|
## Process
|
||||||
|
|
||||||
|
### Before starting
|
||||||
|
1. Search GitHub for [previous issues](https://github.com/dexidp/dex/issues) and [EPs](https://github.com/dexidp/dex/tree/master/enhancements).
|
||||||
|
2. If an issue does not exist, [open it](https://github.com/dexidp/dex/issues/new?assignees=&labels=&template=feature_request.yaml).
|
||||||
|
3. Ensure that writing enhancement proposal is necessary for you change by discussing it with a community.
|
||||||
|
|
||||||
|
### Writing an enhancement proposal
|
||||||
|
|
||||||
|
1. Fork the repo.
|
||||||
|
2. Copy the [`enhancements/_title-YYYY-MM-DD-#issue.md`](enhancements/_title-YYYY-MM-DD-#issue.md) template with the appropriate
|
||||||
|
name.
|
||||||
|
3. Fill all sections according to hints in them. Provide as much information as you can.
|
||||||
|
4. Submit your PR and discuss it with the Dex team.
|
62
enhancements/_title-YYYY-MM-DD-#issue.md
Normal file
62
enhancements/_title-YYYY-MM-DD-#issue.md
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
# Enhancement Proposal (EP) <issue#> - <YYYY-MM-DD> - <title>
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
- [Summary](#summary)
|
||||||
|
- [Motivation](#motivation)
|
||||||
|
- [Goals/Pain](#goals)
|
||||||
|
- [Non-Goals](#non-goals)
|
||||||
|
- [Proposal](#proposal)
|
||||||
|
- [User Experience](#user-experience)
|
||||||
|
- [Implementation Details/Notes/Constraints](#implementation-detailsnotesconstraints)
|
||||||
|
- [Risks and Mitigations](#risks-and-mitigations)
|
||||||
|
- [Alternatives](#alternatives)
|
||||||
|
- [Future Improvements](#future-improvements)
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
|
||||||
|
- Provide a one-paragraph description of the expected change here.
|
||||||
|
|
||||||
|
## Context
|
||||||
|
|
||||||
|
- Link to any previous issues, RFCs, discussions, or briefs.
|
||||||
|
- Link to any ongoing or future work relevant to this change.
|
||||||
|
|
||||||
|
## Motivation
|
||||||
|
|
||||||
|
### Goals/Pain
|
||||||
|
|
||||||
|
- List work that is assumed to be done in the scope of this enhancement.
|
||||||
|
- Mention problems solve by this enhancement.
|
||||||
|
|
||||||
|
### Non-goals
|
||||||
|
|
||||||
|
- List work that is entirely out of the scope of this enhancement. Use this to define EP borders to keep work focused.
|
||||||
|
- All planned future enhancements should be listed in one of the following blocks - Future Improvements.
|
||||||
|
|
||||||
|
## Proposal
|
||||||
|
|
||||||
|
### User Experience
|
||||||
|
|
||||||
|
- Explain your change as if you were describing it to end-users.
|
||||||
|
- Explain the way users are supposed to use Dex with the proposed enhancement.
|
||||||
|
|
||||||
|
### Implementation Details/Notes/Constraints
|
||||||
|
|
||||||
|
- Explain your change as if you were at a development team meeting (give more technical and implementation details).
|
||||||
|
- When possible, demonstrate with pseudo-code, not text.
|
||||||
|
- Be specific. Be opinionated. Avoid ambiguity.
|
||||||
|
|
||||||
|
### Risks and Mitigations
|
||||||
|
|
||||||
|
- Mention all expected risks and migrations in detail here.
|
||||||
|
- Do not forget to mention if the proposed enhancement is a breaking change.
|
||||||
|
|
||||||
|
### Alternatives
|
||||||
|
|
||||||
|
- What other approaches have been considered, and why did you not choose them?
|
||||||
|
- What happens if this enhancement will never be accepted and implemented?
|
||||||
|
|
||||||
|
## Future Improvements
|
||||||
|
|
||||||
|
- List any future improvements.
|
Reference in a new issue