Labs/Jetpack/Reboot/JEP: Difference between revisions

(Created page with '= What is a JEP? = JEP stands for Jetpack Enhancement Proposal. A JEP is a design document providing information to the Jetpack community, or describing a new feature for Jetpac…')
 
Line 1: Line 1:
= What is a JEP? =
= What is a JEP? =


JEP stands for Jetpack Enhancement Proposal. A JEP is a design document providing information to the Jetpack community, or describing a new feature for Jetpack or its processes or environment. The JEP should provide a concise technical specification of the feature and a rationale for the feature.
JEP stands for Jetpack Enhancement Proposal. A JEP is a design document for enhancements to the Jetpack development platform. The JEP should provide a concise technical specification of the feature, including dependencies, use-cases, possible implementations hurdles, and updates on status.


We intend JEPs to be the primary mechanisms for proposing new features, for collecting community input on an issue, and for documenting the design decisions that have gone into Jetpack. The JEP author is responsible for building consensus within the community and documenting dissenting opinions.
We intend JEPs to be the primary mechanisms for proposing, cataloging, and technically assessing features. The JEP author is the responsible party for building consensus within the community and transcribing feedback into actionable documentation.
 
Because the JEPs are maintained on the Mozilla Wiki, the revision history is the historical record of the feature proposal.


The JEP process begins with a new idea for Jetpack. It is highly recommended that a single JEP contain a single key proposal or new idea. The more focused the JEP the better.
The JEP process begins with a new idea for Jetpack. It is highly recommended that a single JEP contain a single key proposal or new idea. The more focused the JEP the better.


Each JEP must have a champion -- someone who writes the JEP, shepherds the discussions in the appropriate forums, and attempts to build community consensus around the idea. The JEP champion (a.k.a. Author) should first attempt to ascertain whether the idea is JEP-able. Posting to <mozilla-labs-jetpack@googlegroups.com> is recommended. Small enhancements or patches can generally be put directly into the Jetpack development flow with a patch submission to the [http://bit.ly/5Qq83 Jetpack Bugzilla instance].
Each JEP must have a champion: Someone who writes the JEP, shepherds the discussions in the appropriate forums, and attempts to build community consensus around the idea. The JEP champion (a.k.a. Author) should first attempt to ascertain whether the idea is JEP-able. Posting to <mozilla-labs-jetpack@googlegroups.com> is recommended. Small enhancements or patches can generally be put directly into the Jetpack development flow with a patch submission to the [http://bit.ly/5Qq83 Jetpack Bugzilla instance].


Once (or before) a JEP has been accepted by the Jetpack module owners, it is recommended to also make a reference implementation of the JEP and link to it from the JEP's header.
Once (or before) a JEP has been accepted by the Jetpack module owners, it is recommended to also make a reference implementation of the JEP and link to it from the JEP's header.
''The idea and description of JEPs is borrowed directly from the Python community, often word for word, and their use of [http://www.python.org/dev/peps/pep-0001/ PEPs].''


= Documentation =
= Documentation =
1,273

edits