ExposureGuidelines: Difference between revisions

→‎Adding features: separate prototype and ship steps
(Make it clearer what the strings are that address "other browsers")
(→‎Adding features: separate prototype and ship steps)
Line 3: Line 3:
One way Mozilla aims to advance the state of the web platform is with new features. Always ask: ''Is this good for the web?''
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 steps below. Note that trivial changes might not need to worry about this.
If you aim to expose a new feature to the web or change an existing feature, please follow these steps:


# Email [https://lists.mozilla.org/listinfo/dev-platform dev-platform] declaring your [[#Intent to prototype|intent to prototype]] or [[#Intent to ship|intent to ship]]. 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).
# Email [https://lists.mozilla.org/listinfo/dev-platform dev-platform] declaring your [[#Intent to prototype|intent to prototype]]. (It is okay to 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.
# 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].
## [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.
## 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.
## 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==
==Intent to prototype==
Line 53: Line 56:


It's acceptable to merge the "intent to prototype" into the "intent to ship" email as long as all the relevant requirements are met.
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=
=Removing features=
Confirmed users
112

edits