From 4194333c8820dd634d15d5746ac4d28de735bf3e Mon Sep 17 00:00:00 2001 From: Zelda Hessler Date: Wed, 1 Jun 2022 10:41:29 -0500 Subject: [PATCH] add: rfc template (#1428) add: info about RFC process update: CONTRIBUTING.md to mention RFCs --- CONTRIBUTING.md | 3 ++- design/src/rfcs/overview.md | 10 +++++++++ design/src/rfcs/rfc_template.md | 37 +++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 design/src/rfcs/rfc_template.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e151b5afe..7e9a0ce81 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -25,7 +25,8 @@ Contributions via pull requests are much appreciated. Before sending us a pull r 1. You are working against the latest source on the *main* branch. 2. You check existing open, and recently merged, pull requests to make sure someone else hasn't addressed the problem already. -3. You open an issue to discuss any significant work - we would hate for your time to be wasted. +3. **You open an issue to discuss any significant work** - we would hate for your time to be wasted. Alternatively, you + may submit an RFC. You can learn about our RFC process [here](./design/src/rfcs/overview.md). To send us a pull request, please: diff --git a/design/src/rfcs/overview.md b/design/src/rfcs/overview.md index 5955227b5..6243df804 100644 --- a/design/src/rfcs/overview.md +++ b/design/src/rfcs/overview.md @@ -1,5 +1,15 @@ # RFCs +**What is an RFC?:** An RFC is a document that proposes a change to `smithy-rs` or the AWS Rust SDK. Request for Comments means a request for discussion and oversight about the future of the project from maintainers, contributors and users. + +**When should I write an RFC?:** The AWS Rust SDK team proactively decides to write RFCs for major features or complex changes that we feel require extra scrutiny. However, the process can be used to request feedback on any change. Even changes that seem obvious and simple at first glance can be improved once a group of interested and experienced people have a chance to weigh in. + +**Who can submit an RFC?:** An RFC can be submitted by anyone. In most cases, RFCs are authored by SDK maintainers, but everyone is welcome to submit RFCs. + +**Where do I start?:** If you're ready to write and submit an RFC, please start a GitHub discussion with a summary of what you're trying to accomplish first. That way, the AWS Rust SDK team can ensure they have the bandwidth to review and shepherd the RFC through the whole process before you've expended effort in writing it. Once you've gotten the go-ahead, start with the [RFC template](./rfc_template.md). + +## Previously Submitted RFCs + - [RFC-0001: AWS Configuration](./rfc0001_shared_config.md) - [RFC-0002: Supporting multiple HTTP versions for SDKs that use Event Stream](./rfc0002_http_versions.md) - [RFC-0003: API for Presigned URLs](./rfc0003_presigning_api.md) diff --git a/design/src/rfcs/rfc_template.md b/design/src/rfcs/rfc_template.md new file mode 100644 index 000000000..c6d511358 --- /dev/null +++ b/design/src/rfcs/rfc_template.md @@ -0,0 +1,37 @@ + +RFC: Your RFC +============= + + +> Status: RFC + + +For a summarized list of proposed changes, see the [Changes Checklist](#changes-checklist) section. + + +This RFC defines how... + + +Terminology +----------- + +- **Some Term**: A definition for that term + + +The user experience if this RFC is implemented +---------------------------------------------- + +In the current version of the SDK, users do X like this... +Once this RFC is implemented, users will do X like this instead... + + +How to actually implement this RFC +---------------------------------- + +In order to implement this feature, we need to add X and update Y... + + +Changes checklist +----------------- + +- [x] Create new struct `NewFeature` -- GitLab