-
Notifications
You must be signed in to change notification settings - Fork 533
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Propose an RFCs Process #1731
Propose an RFCs Process #1731
Conversation
Thanks for pinging me on this PR. I had a few nits inline and some more general comments/questions below.
Some questions:
|
This presupposes we can stabilize the upstream metadata, for some definition of stability. We're still trying to figure out how to do that. Suggestions welcome. 😉
This should be for new feature research and development beyond the scope of what I’m working on right now (metadata processing and component authoring), providing a process by which more people can get involved with the project. For example, someone might want to propose a more comprehensive solution for string handling or metadata partitioning. Naturally, we'll have to see how this plays out and adjust accordingly.
The
The
Other than me, no. But hopefully that will change over time. 😊 |
I think @kennykerr does a good job of answering the specific questions, but I will add one more general point that I tried to make clear in the RFC itself: while the RFC process can help achieve stabilization it is not meant as a stabilization mechanism itself. The RFC process ultimately reduces churn where churn is the introduction of changes that are then reverted, modified, or reintroduced quickly and often thereafter. Reducing churn means reducing the amount of change that comes simply from not taking the time to thoroughly discuss proposed changes, not considering alternatives, and not getting buy-in from stakeholders. How features are then stabilized is a separate question, albeit one that can (and should IMO) be answered through an RFC proposal. In other words, a lot of the questions brought up here about stability are really good questions that we need to find answers to, but they're orthogonal to an RFC process. |
I think the value in reducing churn is diminished if the crate remains unstable (0.x) and cannot be relied upon due to breakage concerns. But I generally agree. |
As the windows-rs project has grown, we have moved from a model of shipping code as fast as possible to a community centered collaborative approach. With this transition it becomes useful to add a little bit of process for handling large and complex changes to the project. This PR proposes adding an RFC process that is deliberating modeled very closely on the Rust RFC process. For large and complex changes, this process will hopefully lead to better designs, less churn, and more community buy-in. I look forward to all of your feedback!