1*69fecf4eSNick Fitzgerald# RFC Process
2*69fecf4eSNick Fitzgerald
3*69fecf4eSNick FitzgeraldFor changes that will significantly affect Wasmtime's or Cranelift's internals,
4*69fecf4eSNick Fitzgeralddownstream projects, contributors, and other stakeholders, a [Bytecode Alliance
5*69fecf4eSNick FitzgeraldRFC](https://github.com/bytecodealliance/rfcs/) should be used to gather
6*69fecf4eSNick Fitzgeraldfeedback on the proposed change's design and implementation, and to build
7*69fecf4eSNick Fitzgeraldconsensus.
8*69fecf4eSNick Fitzgerald
9*69fecf4eSNick FitzgeraldIt is recommended that regular Wasmtime and Cranelift contributors, as well as
10*69fecf4eSNick Fitzgeraldany other project stakeholders, subscribe to notifications in [the RFC
11*69fecf4eSNick Fitzgeraldrepository](https://github.com/bytecodealliance/rfcs/) to stay up to date with
12*69fecf4eSNick Fitzgeraldsignificant change proposals.
13*69fecf4eSNick Fitzgerald
14*69fecf4eSNick Fitzgerald## Authoring New RFCs
15*69fecf4eSNick Fitzgerald
16*69fecf4eSNick FitzgeraldThe RFC repository has two templates that can help you author new proposals:
17*69fecf4eSNick Fitzgerald
18*69fecf4eSNick Fitzgerald1. [A draft RFC
19*69fecf4eSNick Fitzgerald   template](https://github.com/bytecodealliance/rfcs/blob/main/template-draft.md),
20*69fecf4eSNick Fitzgerald   for seeking early feedback on ideas that aren't yet fully baked. It is
21*69fecf4eSNick Fitzgerald   expected that as the discussion evolves, these draft RFCs will grow into
22*69fecf4eSNick Fitzgerald   fully-formed RFCs.
23*69fecf4eSNick Fitzgerald
24*69fecf4eSNick Fitzgerald2. [A full RFC
25*69fecf4eSNick Fitzgerald   template](https://github.com/bytecodealliance/rfcs/blob/main/template-full.md),
26*69fecf4eSNick Fitzgerald   for building consensus around a mature proposal.
27*69fecf4eSNick Fitzgerald
28*69fecf4eSNick FitzgeraldYou can also look at historical Wasmtime RFCs in [the repository's `accepted`
29*69fecf4eSNick Fitzgeraldsubdirectory](https://github.com/bytecodealliance/rfcs/tree/main/accepted) and
30*69fecf4eSNick Fitzgeraldtheir associated discussions in its [merged pull
31*69fecf4eSNick Fitzgeraldrequests](https://github.com/bytecodealliance/rfcs/pulls?q=is%3Apr+is%3Amerged+)
32*69fecf4eSNick Fitzgeraldto gather inspiration for your new RFC. A few good examples include:
33*69fecf4eSNick Fitzgerald
34*69fecf4eSNick Fitzgerald* Add a Long Term Support (LTS) Channel of Releases for Wasmtime -
35*69fecf4eSNick Fitzgerald  [RFC](https://github.com/bytecodealliance/rfcs/blob/main/accepted/wasmtime-lts.md) -
36*69fecf4eSNick Fitzgerald  [Discussion](https://github.com/bytecodealliance/rfcs/pull/42)
37*69fecf4eSNick Fitzgerald* Pulley: A Portable, Optimizing Interpreter for Wasmtime -
38*69fecf4eSNick Fitzgerald  [RFC](https://github.com/bytecodealliance/rfcs/blob/main/accepted/pulley.md) -
39*69fecf4eSNick Fitzgerald  [Discussion](https://github.com/bytecodealliance/rfcs/pull/35)
40*69fecf4eSNick Fitzgerald* Debugging Support in Wasmtime -
41*69fecf4eSNick Fitzgerald  [RFC](https://github.com/bytecodealliance/rfcs/blob/main/accepted/wasmtime-debugging.md) -
42*69fecf4eSNick Fitzgerald  [Discussion](https://github.com/bytecodealliance/rfcs/pull/34)
43*69fecf4eSNick Fitzgerald* Redesign Wasmtime's API -
44*69fecf4eSNick Fitzgerald  [RFC](https://github.com/bytecodealliance/rfcs/blob/main/accepted/new-api.md) -
45*69fecf4eSNick Fitzgerald  [Discussion](https://github.com/bytecodealliance/rfcs/pull/11)
46*69fecf4eSNick Fitzgerald
47*69fecf4eSNick FitzgeraldAfter creating a pull request for your new RFC, advertise its existence by
48*69fecf4eSNick Fitzgeraldcreating a new thread in the relevant
49*69fecf4eSNick Fitzgerald[Zulip](https://bytecodealliance.zulipchat.com/) channels (e.g. `#wasmtime` or
50*69fecf4eSNick Fitzgerald`#cranelift`).
51