One way Mozilla aims to advance the state of the web platform is with new features. Always ask: ''Is this good for the web?''
If you aim to expose a new feature to the web or change an existing feature, please follow the these steps below. Note that trivial changes might not need to worry about this.:
# Email [https://lists.mozilla.org/listinfo/dev-platform dev-platform] declaring your [[#Intent to prototype|intent to prototype]] or [[#Intent . (It is okay to ship|intent to ship]]skip this step for small changes. )## If you are implementing a feature that is working its way through a standards body process such as the W3C's, it's best to email as soon as possible (i.e., before [http://www.w3.org/2005/10/Process-20051014/tr#q74 W3C CR status] if possible).
# Implement as normal. Code review rounds will take place, etc. Module owners or their designated peers will provide a super-review for all interface changes.
## [https://blog.mozilla.org/security/2018/01/15/secure-contexts-everywhere/ Restrict the feature to secure contexts].## Ensure the feature has [https://github.com/w3c/web-platform-tests web-platform-tests] coverage.## Land potentially disruptive features behind a preference which is off by default.# Email [https://lists.mozilla.org/listinfo/dev-platform dev-platform] declaring your [[#Intent to ship|intent to ship]].# If there's no negative feedback, ship.
==Intent to prototype==
It's acceptable to merge the "intent to prototype" into the "intent to ship" email as long as all the relevant requirements are met.
=Removing features=