A place to improve your RFC writing skills and collaborate on writing RFCs
Switch branches/tags
Nothing to show
Clone or download
KodrAus and nrc Default values for struct fields (#7)
* initial thoughts on default fields

* address some feedback

* more work on feedback

* work on alternatives section

* clean up later sections

* elaborate expectations

* address some feedback

* remove manual wrapping

* address some feedback

* rework and move default to alternatives

* work on intro para

* rework grammar

* speell chek

* fix a few syntax issues

* add examples for validity

* add example for private defaults

* address some feedback

* address some more feedback

* add ctor and builder example

* fix typo in grammar

* keep flow through examples

* clarify errors

* clarify default derive

* rename examples section

* add trailing comma

* replace doc comments with comments

* remove builder example

* work on some feedback

* add extra note on field privacy
Latest commit e9a3b01 Nov 30, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
default-fields Default values for struct fields (#7) Dec 1, 2016
0000-template.md Add README, FAQ, and templates Oct 4, 2016
README.md Add README, FAQ, and templates Oct 4, 2016
faq.md Add README, FAQ, and templates Oct 4, 2016

README.md

RFC mentoring

Interested in the Rust RFC process? This is a place to improve your RFC writing skills and collaborate on writing RFCs.

If you want to improve Rust, writing an RFC is an important stage in the process. RFCs are the gateway for major changes to the language, core libraries, and tools. However, writing a good RFC is difficult and can be intimidating (it can be quite a complex process to navigate and the quality bar is high). Writing an RFC should be accessible to the whole community. This repo is a step towards making that a reality.

Here, you can work on real RFCs which will go through the RFC process and hopefully get accepted. We'll collaborate on RFCs and you'll get feedback and mentoring.

The initial emphasis will be on language RFCs (since I believe these are the hardest for people to work on). If this is successful, I hope we can expand to other areas.

Mentoring is open to anyone - you don't need to have contributed to the RFC process, compiler, or other parts of the project before. However, to get the most from this, you should know Rust pretty well, and should be interested in getting deeply involved.

How it works

We'll work on one RFC at a time, you can find the current RFC here. There will (hopefully) be multiple people collaborating on each RFC. Once an RFC is ready for submission, we'll start work on the next one.

There will be issues for mentored RFCs to work on. The issue will describe the subject of the RFC and link to any previous discussion. It will cover some of the points that should be considered and discussed in the RFC (e.g., tricky edge cases, or overlap with other potential features). An issue will be assigned to a mentor, you don't need to be assigned to work on the RFC.

You should ask any questions about an RFC or the RFC process in the issue.

There will be a directory for the current RFC (and for previous ones, for the curious). All work should be in that directory. You should submit drafts of parts of the RFC at a time (don't wait until you've written the whole RFC, and don't polish too much before submitting initial drafts). Send PRs for your work, you'll get most of the feedback as reviews of your PR. Feel free to give constructive feedback on other people's PRs. Don't worry about duplicating work.

We'll pick the best bits from all the drafts to start the RFC. We will then collaborate (again with PRs) to improve the RFC until it is ready for submission. The mentor will then either submit the RFC into the RFC process, or ask one of the collaborators to do so. The mentor will then shepherd the RFC. Collaborators should take part in the RFC discussion and keep improving the RFC through the RFC process.

Getting started

There should be enough info on the issue to get started. See the FAQ (WIP) for more general info. If you're still not sure, ask on the issue.

Requesting an RFC for mentoring

RFCs to work on in the future are queued. If there's one you're keen to work on, show your interest by voting with emoji.

If there's an RFC that you'd like to see mentored, file a new issue (we'll label it requested-rfc). To be a suitable RFC for this mentoring project, it should have a good chance of being accepted (which means it should be motivated by the Rust roadmap), there should be an appropriate mentor, and it should be of general enough interest that we'd expect others to want to work on it. If it doesn't meet these criteria, but you'd like help with writing the RFC, don't hesitate to reach out to me (@nrc) or a member of the appropriate team.