Pepper API Proposals (New APIs Start Here)
So you want to make a new pepper API? That's great!
You should expect three distinct phases for your API's development: Proposal, Development, and Going Live. You need to get an LGTM from the pepper-dev@chromium.org mailing list for your API twice: once before implementation (proposal), and once after implementation (final review before Chrome stable).
Need help? Send an email to pepper-dev@chromium.org.
Have feedback on this proposal process? Send an email to mackinlay@chromium.org.
Proposal Phase
-
Fill out an API Proposal.
-
Add your API to the Chrome API tracking master document (or ask your reviewer to do so) with status "1:proposal" in the PPAPI column. Make sure to paste a link to your proposal in the appropriate column.
-
Email pepper-dev@chromium.org to say that you have a new API you'd like reviewed, and include a link to your proposal in the email.
-
You’ll get feedback on the pepper-dev mailing list. If things are looking good, David Michael (dmichael@chromium.org) or Yuzhu Shen (yzshen@chromium.org) will give an LGTM on the pepper-dev mailing list. If there’s a need to meet in person to resolve issues, David or Molly will sign you up for a formal review meeting for your API and will help you get your API through the meeting.
Development Phase
-
Update the Chrome API tracking master document (or ask your reviewer to do so) to change the status of your API to "2:coding" in the PPAPI column.
-
Code your pepper API according to the implementation guidelines. Your implementation must be kept behind its own feature flag until it works and is secure. See chrome/common/extensions/feature_switch.h.
-
After your implementation both works and is secure, you should enable your API on the dev channel as described in the implementation guidelines.
-
Encourage usage of the API in the dev channel; the more adoption during dev, the easier your final approval will be.
-
Remain restricted to the dev channel for a full release cycle (in most cases).
-
After receiving and addressing feedback from a few major extensions or apps, proceed to the going live phase.
Going Live Phase
-
Make sure that your API is properly represented in the Chrome API tracking master document (or ask your reviewer to do so).
-
Email pepper-dev@chromium.org to say that you'd like a final review for enabling your stable, well-tested API on all channels.
-
If things are looking good, David Michael (dmichael@chromium.org) or Yuzhu Shen (yzshen@chromium.org) will give an LGTM on the mailing list. If there’s a need to meet in person to resolve issues, David or Molly will sign you up for a formal review meeting for your API and will help you get your API through the meeting.
-
Ask Molly (mackinlay@chromium.org) to file a Type-Launch bug. Molly will usher the API through all of the launch reviews, including privacy and security.
-
Update all sample extensions/apps for your API.
-
Land a CL to enable the API for all channels, and change the Status of your item in the Chrome API tracking master document to "3: complete" in the PPAPI column.
-
Publicize the new API. Write a post for the Chromium blog about the API. Send an email to native-client-discuss@, and potentially chromium-extensions@chromium.org or chromium-apps@chromium.org if related. Talk to Joe Marini (joemarini@chromium.org) for advice around Apps and Extensions implications.
|