[prev in list] [next in list] [prev in thread] [next in thread] 

List:       webkit-dev
Subject:    [webkit-dev] Proposal for an "intent to" process for web-exposed features
From:       Frédéric Wang <fwang () igalia ! com>
Date:       2020-02-27 6:33:28
Message-ID: bb713f7f-d07e-ef2d-9f6e-7fe8b281cc51 () igalia ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hi,

The idea of an "intent to" process has been raised several times in the
past(e.g. in our 2020 goals [1])and some people already use it
informally, but it does not seem that we have any agreement right now.
Such a process would help to coordinate changes internally (between port
maintainers and contributors) and externally (with standard groups,
users and other implementers). For the former point, see [2][3][4] for
examples of how coordination is not smooth right now.The latter point
will give a better understanding of what's happening in WebKit and help
web developer advocacy.

The Mozilla and Chromium projects have their own process [5] [6]. We can
probably start with minimal rules and refine them in the future. We can
even make it mandatory only for new web platform features developed
under a runtime preference for now (i.e. excluding small features for
which it's not worth introducing a flag, behavior changes or
deprecation/removal). Below is a proposal based on Mozilla's one.

WDYT?

Frédéric, on behalf of Igalia's web platform team

[1] https://trac.webkit.org/wiki/WebKitGoalsfor2020
[2] Behavior change: https://bugs.webkit.org/show_bug.cgi?id=201641#c49
[3] Deprecation/Removal: https://bugs.webkit.org/show_bug.cgi?id=204125#c7
[4] New feature: https://bugs.webkit.org/show_bug.cgi?id=157743landed in
April 2019 and only enabled in
https://bugs.webkit.org/show_bug.cgi?id=203644
[5] https://wiki.mozilla.org/ExposureGuidelines
[6] https://www.chromium.org/blink/launching-features

------------------------------------------------------------

I/ General process

1. Email webkit-dev with an intent to prototype.
2. Implement the feature normally behind a off-by-default preference.
3. Email webkit-dev with an intent to ship.
4. If there's no negative feedback, ship (ports maintainer can still
disable the feature if they want to).

II/ Intent to prototype template

Subject: Intent to prototype: <your feature goes here> 

Summary: Elevator pitch for the new functionality.
Bug: Link to https://bugs.webkit.org
Standard: Link to standard or public discussions with other browser vendors.
Preference: name of flag.
Status in other browsers: "shipped", "intent emailed" or "considering".
web-platform-tests: Test suite for this feature.

III/ Intent to ship template

Subject: Intent to ship: <your feature goes here> 

As of <today + 1 week> I intend to turn <name of feature> on by default:
<link to https://bugs.webkit.orgto turn the flag on>. This has
originally been proposed in <link to
https://lists.webkit.org/pipermail/webkit-devintent to prototype>.*If
anything changed since that thread please include that information in
this email*.

It's acceptable to merge the "intent to prototype" into the "intent to
ship" email as long as all the relevant requirements are met.


[Attachment #5 (text/html)]

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <span class="">Hi,</span>
    <div id="magicdomid5" class=""><br>
    </div>
    <div id="magicdomid92" class="ace-line"><span class="">The idea of
        an "intent to" process has been raised several times in the past</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju"> (e.g. in our
        2020 goals [1])</span><span class=""> and some people already
        use it informally, but it does not seem that we have any
        agreement right now. Such a process would help to coordinate
        changes internally (between port maintainers and contributors)
        and externally (with standard groups, users and other
        implementers). </span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">For the former
        point, s</span><span class="">ee [</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">2</span><span
        class="">][</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">3</span><span
        class="">][</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">4</span><span
        class="">] for examples of how coordination is not smooth right
        now.</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju"> The latter
        point will give a better understanding of what's happening in
        WebKit and help web developer advocacy.</span></div>
    <div id="magicdomid7" class=""><br>
    </div>
    <div id="magicdomid94" class="ace-line"><span class="">The Mozilla
        and Chromium projects have their own process [</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">5</span><span
        class="">] [</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">6</span><span
        class="">]. We can probably start with minimal rules and refine
        them in the future. We can even make it mandatory only for new
        web platform features </span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">developed under
        a runtime preference </span><span class="">for now (i.e. </span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">excluding small
        features for which it's not worth introducing a flag, behavior
        changes or deprecation/removal</span><span class="">). Below is
        a proposal based on Mozilla's one.</span></div>
    <div id="magicdomid9" class=""><br>
    </div>
    <div id="magicdomid10" class=""><span class="">WDYT?</span></div>
    <div id="magicdomid11" class=""><br>
    </div>
    <div id="magicdomid12" class=""><span class="">Frédéric, on behalf
        of Igalia's web platform team</span></div>
    <div id="magicdomid13" class=""><br>
    </div>
    <div id="magicdomid76" class="ace-line"><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">[1] </span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju url"><a
          href="https://trac.webkit.org/wiki/WebKitGoalsfor2020">https://trac.webkit.org/wiki/WebKitGoalsfor2020</a></span></div>
  <div id="magicdomid77" class="ace-line"><span class="">[</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">2</span><span
        class="">] Behavior change: </span><span class=" url"><a
          href="https://bugs.webkit.org/show_bug.cgi?id=201641#c49">https://bugs.webkit.org/show_bug.cgi?id=201641#c49</a></span></div>
  <div id="magicdomid79" class="ace-line"><span class="">[</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">3</span><span
        class="">] Deprecation/Removal: </span><span class=" url"><a
          href="https://bugs.webkit.org/show_bug.cgi?id=204125#c7">https://bugs.webkit.org/show_bug.cgi?id=204125#c7</a></span></div>
  <div id="magicdomid81" class="ace-line"><span class="">[</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">4</span><span
        class="">] New feature: </span><span class=" url"><a
          href="https://bugs.webkit.org/show_bug.cgi?id=157743">https://bugs.webkit.org/show_bug.cgi?id=157743</a></span><span
  class=""> landed in April 2019 and only enabled in </span><span
        class=" url"><a
          href="https://bugs.webkit.org/show_bug.cgi?id=203644">https://bugs.webkit.org/show_bug.cgi?id=203644</a></span></div>
  <div id="magicdomid83" class="ace-line"><span class="">[</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">5</span><span
        class="">] </span><span class=" url"><a
          href="https://wiki.mozilla.org/ExposureGuidelines">https://wiki.mozilla.org/ExposureGuidelines</a></span></div>
  <div id="magicdomid85" class="ace-line"><span class="">[</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">6</span><span
        class="">] </span><span class=" url"><a
          href="https://www.chromium.org/blink/launching-features">https://www.chromium.org/blink/launching-features</a></span></div>
  <div id="magicdomid20" class=""><br>
    </div>
    <div id="magicdomid21" class=""><span \
class="">------------------------------------------------------------</span></div>  \
<div id="magicdomid22" class=""><br>  </div>
    <div id="magicdomid23" class=""><span class="">I/ General process</span></div>
    <div id="magicdomid24" class=""><br>
    </div>
    <div id="magicdomid25" class=""><span class="">1. Email webkit-dev
        with an intent to prototype.</span></div>
    <div id="magicdomid26" class=""><span class="">2. Implement the
        feature normally behind a off-by-default preference.</span></div>
    <div id="magicdomid27" class=""><span class="">3. Email webkit-dev
        with an intent to ship.</span></div>
    <div id="magicdomid28" class=""><span class="">4. If there's no
        negative feedback, ship (ports maintainer can still disable the
        feature if they want to).</span></div>
    <div id="magicdomid29" class=""><br>
    </div>
    <div id="magicdomid30" class=""><span class="">II/ Intent to
        prototype template</span></div>
    <div id="magicdomid31" class=""><br>
    </div>
    <div id="magicdomid32" class=""><span class="">Subject: Intent to
        prototype: &lt;your feature goes here&gt; </span></div>
    <div id="magicdomid33" class=""><br>
    </div>
    <div id="magicdomid34" class=""><span class="">Summary: Elevator
        pitch for the new functionality.</span></div>
    <div id="magicdomid35" class=""><span class="">Bug: Link to </span><span
        class=" url"><a \
href="https://bugs.webkit.org">https://bugs.webkit.org</a></span></div>  <div \
                id="magicdomid36" class=""><span class="">Standard: Link to
        standard or public discussions with other browser vendors.</span></div>
    <div id="magicdomid37" class=""><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">Preference:
        name of flag.</span></div>
    <div id="magicdomid38" class=""><span class="">Status in other
        browsers: "shipped", "intent emailed" or "considering".</span></div>
    <div id="magicdomid39" class=""><span class="">web-platform-tests:
        Test suite for this feature.</span></div>
    <div id="magicdomid40" class=""><br>
    </div>
    <div id="magicdomid41" class=""><span class="">III/ Intent to ship
        template</span></div>
    <div id="magicdomid42" class=""><br>
    </div>
    <div id="magicdomid43" class=""><span class="">Subject: Intent to
        ship: &lt;your feature goes here&gt; </span></div>
    <div id="magicdomid44" class=""><br>
    </div>
    <div id="magicdomid45" class=""><span class="">As of &lt;t</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">oday + 1 week</span><span
        class="">&gt; I intend to turn &lt;name of feature&gt; on by
        default: &lt;link to </span><span class=" url"><a
          href="https://bugs.webkit.org">https://bugs.webkit.org</a></span><span
        class=""> to turn the flag on&gt;. This has originally been
        proposed in &lt;link to </span><span class=" url"><a
          href="https://lists.webkit.org/pipermail/webkit-dev">https://lists.webkit.org/pipermail/webkit-dev</a></span><span
  class=""> intent to prototype&gt;.</span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju"> </span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju b"><b>If
          anything changed since that thread please include that
          information in this email</b></span><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">.</span></div>
    <div id="magicdomid46" class=""><br>
    </div>
    <div id="magicdomid47" class=""><span
        class="author-a-0j7z68zd2xz86zyez65zz81zz87zbju">It's acceptable
        to merge the "intent to prototype" into the "intent to ship"
        email as long as all the relevant requirements are met.</span></div>
    <div id="magicdomid48" class=""><br>
    </div>
  </body>
</html>



_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic