https://wiki.mozilla.org/api.php?action=feedcontributions&user=Felipc&feedformat=atomMozillaWiki - User contributions [en]2024-03-29T01:04:15ZUser contributionsMediaWiki 1.27.4https://wiki.mozilla.org/index.php?title=TestEngineering/Performance/Talos/Tests&diff=1208514TestEngineering/Performance/Talos/Tests2019-03-05T20:02:31Z<p>Felipc: Update sessionrestore section to reflect test changes</p>
<hr />
<div>= Talos Tests =<br />
<br />
== Where to get this information ==<br />
* Talos tests are defined in [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py test.py]<br />
* Treeherder abbreviations are defined in [https://dxr.mozilla.org/mozilla-central/source/taskcluster/ci/test/talos.yml#32 talos.yml]<br />
* Talos suites are configured for production in [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos.json talos.json]; these names are mapped to Treeherder via regexes: [https://github.com/mozilla/treeherder/blob/master/treeherder/etl/buildbot.py#L565 buildbot.py]<br />
<br />
== Talos Test Types ==<br />
<br />
There are two different species of Talos tests:<br />
<br />
* [[#Startup Tests]] : start up the browser and wait for either the load event or the paint event and exit, measuring the time<br />
* [[#Page Load Tests]] : load a manifest of pages<br />
<br />
In addition we have some variations on existing tests:<br />
* [[#Heavy Tests]]: Run tests with the heavy user profile instead of a blank one<br />
* [[#Web Extension Tests]]: Run tests with a web extension to see the perf impact extension have<br />
<br />
Some tests measure different things:<br />
* [[#Paint Tests]]: These measure events from the browser like moz_after_paint, etc.<br />
* [[#ASAP Tests]]: These tests go really fast and typically measure how many frames we can render in a time window<br />
* [[#Benchmarks]]: These are benchmarks that measure specific items and report a summarized score<br />
<br />
=== Startup Tests ===<br />
[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test Startup tests] launch Firefox and measure the time to the onload or paint events. We run this in a series of cycles (default to 20) to generate a full set of data. Tests that currently are startup tests are:<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#ts_paint ts_paint]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tpaint tpaint]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tresize tresize]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#sessionrestore.2Fsessionrestore_no_auto_restore.2Fsessionrestore_many_windows sessionrestore[_no_auto_restore/_many_windows]]<br />
<br />
=== Page Load Tests ===<br />
Many of the talos tests use the page loader to load a manifest of pages.<br />
These are tests that load a specific page and measure the time it takes to load the page, scroll the page, draw the page etc. In order to run a page load test, you need a manifest of pages to run. The manifest is simply a list of URLs of pages to load, separated by carriage returns, e.g.:<br />
<pre><br />
https://www.mozilla.org<br />
https://www.mozilla.com<br />
</pre><br />
Example: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svgx/svgx.manifest svgx.manifest]<br />
<br />
Manifests may also specify that a test computes its own data by prepending a <tt>%</tt> in front of the line:<br />
<pre><br />
% https://www.mozilla.org<br />
% https://www.mozilla.com<br />
</pre><br />
Example: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/v8_7/v8.manifest v8.manifest]<br />
<br />
The file you created should be referenced in your test config inside of [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l607 test.py]. For example, open test.py, and look for the line referring to the test you want to run:<br />
<pre><br />
tpmanifest = '${talos}/page_load_test/svgx/svgx.manifest'<br />
tpcycles = 1 # run a single cycle<br />
tppagecycles = 25 # load each page 25 times before moving onto the next page<br />
</pre><br />
<br />
=== Heavy Tests ===<br />
All our testing is done with empty blank profiles, this is not ideal for finding issues for end users. We recently undertook a task to create a daily update to a profile so it is modern and relevant. It browses a variety of web pages, and have history and cache to give us a more realistic scenario.<br />
<br />
The toolchain is documented on [https://github.com/tarekziade/heavy-profile github] and was added to Talos in {{bug|1407398}}.<br />
<br />
Currently we have issues with this on windows (takes too long to unpack the files from the profile), so we have turned this off there. Our goal is to run this on basic pageload and startup tests.<br />
<br />
=== Web Extension Tests ===<br />
Web Extensions are what Firefox has switched to and there are different code paths and APIs used vs addons. Historically we don't test with addons (other than our test addons) and are missing out on common slowdowns. In 2017 we started running some startup and basic pageload tests with a web extension in the profile ({{bug|1398974}}). We have updated the Extension to be more real world and will continue to do that.<br />
<br />
=== Paint Tests ===<br />
Paint tests are measuring the time to receive both the [https://developer.mozilla.org/en-US/docs/Web/Events/MozAfterPaint MozAfterPaint] and OnLoad event instead of just the OnLoad event. Most tests now look for this unless they are an ASAP test, or an internal benchmark<br />
<br />
=== ASAP Tests ===<br />
We have a variety of tests which we now run in ASAP mode where we render as fast as possible (disabling vsync and letting the rendering iterate as fast as it can using `requestAnimationFrame`). In fact we have replaced some original tests with the 'x' versions to make them measure. We do this with RequestAnimationFrame().<br />
<br />
ASAP Tests are:<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Basic_Compositor_Video basic_compositor_video]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#displaylist_mutate displaylist_mutate]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#glterrain glterrain]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#rasterflood_svg rasterflood_svg]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#rasterflood_gradient rasterflood_gradient]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tsvg.2C_tsvgx svgx]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tscroll.2C_tscrollx tscrollx]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tp5o_scroll tp5o_scroll]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tps tps]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#TART tart]<br />
<br />
=== Benchmarks ===<br />
Many tests have internal benchmarks which we report as accurately as possible. These are the exceptions to the general rule of calculating the suite score as a geometric mean of the subtest values (which are median values of the raw data from the subtests).<br />
<br />
Tests which are imported benchmarks are:<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#ares6 ARES-6]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#JSS.2FDomaeo_Tests Dromaeo]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#jetstream JetStream]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#kraken Kraken]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#motionmark MotionMark]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#speedometer speedometer]<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#stylebench stylebench]<br />
<br />
=== Row Major vs. Column Major ===<br />
<br />
To get more stable numbers, tests are run multiple times. There are two ways that we do this: row major and column major. Row major means each test is run multiple times and then we move to the next test (and run it multiple times). Column major means that each test is run once one after the other and then the whole sequence of tests is run again.<br />
<br />
More background information about these approaches can be found in Joel Maher's [https://elvis314.wordpress.com/2012/03/12/reducing-the-noise-in-talos/ Reducing the Noise in Talos] blog post.<br />
<br />
=== Page Sets ===<br />
We run our tests 100% offline, but serve pages via a webserver. Knowing this we need to store and make available the offline pages we use for testing.<br />
<br />
==== tp5pages ====<br />
Some tests make use of a set of 50 "real world" pages, known as the tp5n set. These pages are not part of the talos repository, but without them the tests which use them won't run.<br />
* To add these pages to your local setup, download [https://github.com/rwood-moz/talos-pagesets/tp5n.zip tp5n.zip], and extract it such that `'''tp5n'''` ends up as `testing/talos/talos/tests/'''tp5n'''`.<br />
* see also [[#tp5|tp5 test]].<br />
<br />
==== tp6 ====<br />
the tp6 pageset archives are also stored in their raw html (non-mitmdump archive) format on [https://github.com/rwood-moz/talos-pagesets github here]. If you wish to debug with the pagesets outside of mitmproxy then just clone that repo and you'll find them in the /talos-pagesets/tp6 folder.<br />
<br />
== Talos Test Descriptions ==<br />
<br />
'''Please keep these in alphabetical order'''<br />
<br />
=== a11y ===<br />
* contact: :surkov<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/a11y a11y.manifest]<br />
* type: PageLoader<br />
* measuring: ???<br />
* data: we load 2 pages 25 times each, collect 2 sets of 25 data points<br />
* summarization<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l627 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 2 subtest results.<br />
<br />
* reporting: test time in ms (lower is better)<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|a11yr<br />
|[[#Row_Major_vs._Column_Major|Row Major]] testing with 25 cycles per page<br />
|}<br />
<br />
This test ensures basic a11y tables and permutations do not cause performance regressions.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;dhtml.html;1584;1637;1643;1665;1741;1529;1647;1645;1692;1647;1542;1750;1654;1649;1541;1656;1674;1645;1645;1740;1558;1652;1654;1656;1654<br />
1;tablemutation.html;398;385;389;391;387;387;385;387;388;385;384;31746;386;387;384;387;389;387;387;387;388;391;386;387;388<br />
</pre><br />
|}<br />
<br />
=== about-preferences ===<br />
* contact: :jaws<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/about-preferences/about_preferences_basic.manifest]<br />
* type: PageLoader<br />
* measuring: first-non-blank-paint<br />
* data: We load 5 urls 1 time each, and repeat for 25 cycles; collecting 25 sets of 5 data points<br />
* summarization<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] five data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the rest; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l627 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the the subtest results.<br />
<br />
* reporting: test time in ms (lower is better)<br />
<br />
This test measures the performance of the Firefox about:preferences page. This test is a little different than other pageload tests in that we are loading one page (about:preferences) but also testing the loading of that same page's subcategories/panels (i.e. about:preferences#home).<br />
<br />
When simply changing the page's panel/category, that doesn't cause a new onload event as expected; therefore we had to introduce loading the 'about:blank' page in between each page category; that forces the entire page to reload with the specified category panel activated.<br />
<br />
For that reason, when new panels/categories are added to the 'about:preferences' page, it can be expected that a performance regression may be introduced, even if a subtest hasn't been added for that new page category yet.<br />
<br />
This test should only ever have 1 pagecycle consisting of the main about-preferences page and each category separated by an about:blank between. Then repeats are achieved by using 25 cycles (instead of pagecycles).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;preferences;346;141;143;150;136;143;153;140;154;156;143;154;146;147;151;166;140;146;140;144;144;156;154;150;140<br />
2;preferences#search;164;142;133;141;141;141;142;140;131;146;131;140;131;131;139;142;140;144;146;143;143;142;142;137;143<br />
3;preferences#privacy;179;159;166;177;173;153;148;154;168;155;164;155;152;157;149;155;156;186;149;156;160;151;158;168;157<br />
4;preferences#sync;148;156;140;137;159;139;143;145;138;130;145;142;141;133;146;141;147;143;146;146;139;144;142;151;156<br />
5;preferences#home;141;111;130;131;138;128;133;122;138;138;131;139;139;132;133;141;143;139;138;135;136;128;134;140;135<br />
</pre><br />
|}<br />
<br />
=== ARES-6 ===<br />
* contact: :jandem<br />
* source: [https://searchfox.org/mozilla-central/source/third_party/webkit/PerformanceTests/ARES-6 ARES-6]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: 6 cycles of the entire benchmark<br />
** [https://searchfox.org/mozilla-central/source/testing/talos/talos/output.py#259 geometric mean] self reported from the benchmark<br />
* '''Lower is better'''<br />
* unit: geometric mean / benchmark score<br />
<br />
=== Basic Compositor Video ===<br />
* contact: :milan<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/video video]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: 12 cycles of the entire benchmark, each subtest will have 12 data points (see below)<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 11; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 24 subtest results.<br />
* '''Lower is better'''<br />
* unit: ms/frame<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|basic_compositor_video<br />
|<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
;0;240p.120fps.mp4_scale_fullscreen_startup;11.112;11.071;11.196;11.157;11.195;11.240;11.196;11.155;11.237;11.074;11.154;11.282<br />
;1;240p.120fps.mp4_scale_fullscreen_inclip;10.995;11.114;11.052;10.991;10.876;11.115;10.995;10.991;10.997;10.994;10.992;10.993<br />
;2;240p.120fps.mp4_scale_1_startup;1.686;1.690;1.694;1.683;1.689;1.692;1.686;1.692;1.689;1.704;1.684;1.686<br />
;3;240p.120fps.mp4_scale_1_inclip;1.666;1.666;1.666;1.668;1.667;1.669;1.667;1.668;1.668;1.667;1.667;1.669<br />
;4;240p.120fps.mp4_scale_1.1_startup;1.677;1.672;1.673;1.677;1.673;1.677;1.672;1.677;1.677;1.671;1.676;1.679<br />
;5;240p.120fps.mp4_scale_1.1_inclip;1.667;1.668;1.666;1.667;1.667;1.668;1.667;1.667;1.667;1.667;1.668;1.668<br />
;6;240p.120fps.mp4_scale_2_startup;1.927;1.908;1.947;1.946;1.902;1.932;1.916;1.936;1.921;1.896;1.908;1.894<br />
;7;240p.120fps.mp4_scale_2_inclip;1.911;1.901;1.896;1.917;1.897;1.921;1.907;1.944;1.904;1.912;1.936;1.913<br />
;8;480p.60fps.webm_scale_fullscreen_startup;11.675;11.587;11.539;11.454;11.723;11.410;11.629;11.410;11.454;11.498;11.540;11.540<br />
;9;480p.60fps.webm_scale_fullscreen_inclip;11.304;11.238;11.370;11.300;11.364;11.368;11.237;11.238;11.434;11.238;11.304;11.368<br />
;10;480p.60fps.webm_scale_1_startup;3.386;3.360;3.391;3.376;3.387;3.402;3.371;3.371;3.356;3.383;3.376;3.356<br />
;11;480p.60fps.webm_scale_1_inclip;3.334;3.334;3.329;3.334;3.334;3.334;3.334;3.334;3.334;3.335;3.334;3.334<br />
;12;480p.60fps.webm_scale_1.1_startup;3.363;3.363;3.368;3.356;3.356;3.379;3.364;3.360;3.360;3.356;3.363;3.356<br />
;13;480p.60fps.webm_scale_1.1_inclip;3.329;3.334;3.329;3.334;3.333;3.334;3.334;3.334;3.340;3.335;3.329;3.335<br />
;14;480p.60fps.webm_scale_2_startup;4.960;4.880;4.847;4.959;4.802;4.863;4.824;4.926;4.847;4.785;4.870;4.855<br />
;15;480p.60fps.webm_scale_2_inclip;4.903;4.786;4.892;4.903;4.822;4.832;4.798;4.857;4.808;4.856;4.926;4.741<br />
;16;1080p.60fps.mp4_scale_fullscreen_startup;14.638;14.495;14.496;14.710;14.781;14.853;14.639;14.637;14.707;14.637;14.711;14.636<br />
;17;1080p.60fps.mp4_scale_fullscreen_inclip;13.795;13.798;13.893;13.702;13.799;13.607;13.798;13.705;13.896;13.896;13.896;14.088<br />
;18;1080p.60fps.mp4_scale_1_startup;6.995;6.851;6.930;6.820;6.915;6.805;6.898;6.866;6.852;6.850;6.803;6.851<br />
;19;1080p.60fps.mp4_scale_1_inclip;6.560;6.625;6.713;6.601;6.645;6.496;6.624;6.538;6.539;6.497;6.580;6.558<br />
;20;1080p.60fps.mp4_scale_1.1_startup;7.354;7.230;7.195;7.300;7.266;7.283;7.196;7.249;7.230;7.230;7.212;7.264<br />
;21;1080p.60fps.mp4_scale_1.1_inclip;6.969;7.222;7.018;6.993;7.045;6.970;6.970;6.807;7.118;6.969;6.997;6.972<br />
;22;1080p.60fps.mp4_scale_2_startup;6.963;6.947;6.914;6.929;6.979;7.010;7.010245327102808;6.914;6.961;7.028;7.012;6.914<br />
;23;1080p.60fps.mp4_scale_2_inclip;6.757;6.694;6.672;6.669;6.737;6.831;6.716;6.715;6.832;6.670;6.672;6.759<br />
</pre><br />
|}<br />
<br />
=== perf-reftest ===<br />
* contact: :bholley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest perf-reftest]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test loads 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] 5 data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l734 source: test.py]<br />
** suite: identical to subtest<br />
<br />
'''Important note:''' This test now requires an 'opt' build. If the perf-reftest is ran on a non-opt build, it will timeout (more specifically on innertext-1.html, and possibly others in the future).<br />
<br />
Style system performance test suite. The perf-reftest suite is a unique talos suite where each subtest loads two different test pages: a 'base' page (i.e. bloom_basic) and a 'reference' page (i.e. bloom_basic_ref), and then compares each of the page load times against eachother to determine the variance.<br />
<br />
Talos runs each of the two pages as if they are stand-alone tests, and then calculates and reports the variance; the test output 'replicates' reported from bloom_basic are actually the comparisons between the 'base' and 'reference' pages for each page load cycle. The suite contains multiple subtests, each of which contains a base page and a reference page.<br />
<br />
If you wish to see the individual 'base' and 'reference' page results instead of just the reported difference, the 'base_replicates' and 'ref_replicates' can be found in the PERFHERDER_DATA log file output, and in the 'local.json' talos output file when running talos locally. In production, both of the page replicates are also archived in the perfherder-data.json file. The perfherder-data.json file is archived after each run in production, and can be found on the Treeherder Job Details tab when the perf-reftest job symbol is selected.<br />
<br />
This test suite was ported over from the style-perf-tests (https://github.com/heycam/style-perf-tests).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
"replicates": [1.185, 1.69, 1.22, 0.36, 11.26, 3.835, 3.315, 1.355, 3.185, 2.485, 2.2, 1.01, 0.9, 1.22, 1.9,<br />
0.285, 1.52, 0.31, 2.58, 0.725, 2.31, 2.67, 3.295, 1.57, 0.3], "value": 1.7349999999999999, "unit": "ms",<br />
<br />
"base_replicates": [166.94000000000003, 165.16, 165.64000000000001, 165.04000000000002, 167.355, 165.175,<br />
165.325, 165.11, 164.175, 164.78, 165.555, 165.885, 166.83499999999998, 165.76500000000001, 164.375, 166.825,<br />
167.13, 166.425, 169.22500000000002, 164.955, 165.335, 164.45000000000002, 164.85500000000002, 165.005, 166.035]}],<br />
<br />
"ref_replicates": [165.755, 166.85000000000002, 166.85999999999999, 165.4, 178.615, 169.01, 168.64, 166.465,<br />
167.36, 167.265, 167.75500000000002, 166.895, 167.735, 166.985, 166.275, 166.54000000000002, 165.61, 166.115,<br />
166.64499999999998, 165.68, 167.64499999999998, 167.12, 168.15, 166.575, 166.335], <br />
</pre><br />
|}<br />
<br />
=== perf-reftest-singletons ===<br />
* contact: :bholley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest-singletons perf-reftest-singletons]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test loads 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] 5 data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l734 source: test.py]<br />
** suite: identical to subtest<br />
<br />
Individual style system performance tests. The perf-reftest-singletons suite runs the perf-reftest 'base' pages (i.e. bloom_basic) test individually, and reports the values for that single test page alone, NOT the comparison of two different pages. There are multiple subtests in this suite, each just containing the base page on its own.<br />
<br />
This test suite was ported over from the style-perf-tests (https://github.com/heycam/style-perf-tests).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
bloombasic.html;88.34000000000003;88.66499999999999;94.815;92.60500000000002;95.30000000000001;<br />
98.80000000000001;91.975;87.73500000000001;86.925;86.965;93.00500000000001;98.93;87.45000000000002;<br />
87.14500000000001;92.78500000000001;86.96499999999999;98.32000000000001;97.485;90.67000000000002;<br />
86.72500000000001;95.665;100.67;101.095;94.32;91.87<br />
</pre><br />
|}<br />
<br />
=== cpstartup ===<br />
* contact: :mconley<br />
* measuring: Time from opening a new tab (which creates a new content process) to having that new content process be ready to load URLs.<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/cpstartup cpstartup]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* bug: {{bug|1336389}}<br />
* data: 20 cycles of the entire benchmark<br />
* '''Lower is better'''<br />
* unit: ms<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;content-process-startup;877;737;687;688;802;697;794;685;694;688;794;669;699;684;690;849;687;873;694;689<br />
</pre><br />
|}<br />
<br />
=== DAMP ===<br />
<br />
* contact: :ochameau<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/devtools damp]<br />
* type: PageLoader<br />
* measuring: Developer Tools toolbox startup, shutdown, and reload performance<br />
* reporting: intervals in ms (lower is better) - see below for details<br />
* data: there are 36 reported subtests from DAMP which we load 25 times, resulting in 36 sets of 25 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 24 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l356 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 36 subtest results.<br />
<br />
To run this locally, you'll need to pull down the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5 page set] and run it in a local web server. See the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#tp5 tp5 section] or contact jmaher for more information.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;simple.webconsole.open.DAMP;1198.86;354.38;314.44;337.32;344.73;339.05;345.55;358.37;314.89;353.73;324.02;339.45;304.63;335.50;316.69;341.05;353.45;353.73;342.28;344.63;357.62;375.18;326.08;363.10;357.30<br />
1;simple.webconsole.reload.DAMP;44.60;41.21;25.62;29.85;38.10;42.29;38.25;40.14;26.95;39.24;40.32;34.67;34.64;44.88;32.51;42.09;28.04;43.05;40.62;36.56;42.44;44.11;38.69;29.10;42.00<br />
2;simple.webconsole.close.DAMP;27.26;26.97;25.45;27.82;25.98;26.05;38.00;26.89;24.90;26.61;24.90;27.22;26.95;25.18;24.24;25.60;28.91;26.90;25.57;26.04;26.79;27.33;25.76;26.47;27.43<br />
3;simple.inspector.open.DAMP;507.80;442.03;424.93;444.62;412.94;451.18;441.39;435.83;441.27;460.69;440.93;413.13;418.73;443.41;413.93;447.34;434.69;459.24;453.60;412.58;445.41;466.34;441.89;417.59;428.82<br />
4;simple.inspector.reload.DAMP;169.45;165.11;163.93;181.12;167.86;164.67;170.34;173.12;165.24;180.59;176.72;187.42;170.14;190.35;176.59;155.00;151.66;174.40;169.46;163.85;190.93;217.00;186.25;181.31;161.13<br />
5;simple.inspector.close.DAMP;44.40;42.28;42.71;47.21;41.74;41.24;42.94;43.73;48.24;43.04;48.61;42.49;45.93;41.36;43.83;42.43;41.81;43.93;41.38;40.98;49.76;50.86;43.49;48.99;44.02<br />
6;simple.jsdebugger.open.DAMP;642.59;464.02;540.62;445.46;471.09;466.57;466.70;511.91;424.12;480.70;448.37;477.51;488.99;437.97;442.32;459.03;421.54;467.99;472.78;440.27;431.47;454.76;436.86;453.61;485.59<br />
7;simple.jsdebugger.reload.DAMP;51.65;55.46;225.46;53.32;58.78;53.23;54.39;51.59;55.46;48.03;50.70;46.34;230.94;53.71;54.23;53.01;61.03;51.23;51.45;293.01;56.93;51.44;59.85;63.35;57.44<br />
8;simple.jsdebugger.close.DAMP;29.12;30.76;40.34;32.09;31.26;32.30;33.95;31.89;29.68;31.39;32.09;30.36;44.63;32.33;30.16;32.43;30.89;30.85;31.99;49.86;30.94;44.63;32.54;29.79;33.15<br />
9;simple.styleeditor.open.DAMP;758.54;896.93;821.17;1026.24;887.14;867.39;927.86;962.80;740.40;919.39;741.01;925.21;807.39;1051.47;729.04;1095.78;755.03;888.70;900.52;810.30;1090.09;869.72;737.44;893.16;927.72<br />
10;simple.styleeditor.reload.DAMP;57.32;178.13;59.23;60.82;71.45;78.86;74.35;60.11;66.43;77.41;61.96;69.22;65.97;45.53;67.88;74.76;124.61;60.01;36.66;59.24;65.01;165.68;34.61;69.02;71.42<br />
11;simple.styleeditor.close.DAMP;28.28;56.50;36.18;30.00;36.32;34.85;35.33;36.24;25.45;36.72;26.53;36.90;28.88;30.94;26.56;31.34;47.79;30.90;30.52;27.95;30.75;56.28;26.76;30.25;37.42<br />
12;simple.performance.open.DAMP;444.28;357.87;331.17;335.16;585.71;402.99;504.58;466.95;272.98;427.54;345.60;441.53;319.99;327.91;312.94;349.79;399.51;465.60;418.42;295.14;362.06;363.11;445.71;634.96;500.83<br />
13;simple.performance.reload.DAMP;38.07;33.44;35.99;70.57;64.04;106.47;148.31;29.60;68.47;28.95;148.46;75.92;32.15;93.72;36.17;44.13;75.11;154.76;98.28;75.16;29.39;36.68;113.16;64.05;135.60<br />
14;simple.performance.close.DAMP;23.98;25.49;24.19;24.61;27.56;40.33;33.85;25.13;22.62;25.28;41.84;25.09;26.39;25.20;23.76;25.44;25.92;30.40;40.77;25.41;24.57;26.15;43.65;28.54;30.16<br />
15;simple.netmonitor.open.DAMP;438.85;350.64;318.04;329.12;341.91;352.33;344.05;334.15;514.57;327.95;471.50;334.55;344.94;364.39;727.56;374.48;339.45;344.31;345.61;329.78;325.74;334.74;350.36;342.85;344.64<br />
16;simple.netmonitor.reload.DAMP;59.68;47.50;69.37;61.18;76.89;83.22;68.11;81.24;56.15;68.20;32.41;81.22;81.62;44.30;39.52;29.60;86.07;71.18;76.32;79.93;79.63;82.15;83.58;87.04;82.97<br />
17;simple.netmonitor.close.DAMP;38.42;39.32;52.56;43.37;48.08;40.62;51.12;41.11;59.54;43.29;41.72;40.85;51.61;49.61;51.39;44.91;40.36;41.10;45.43;42.15;42.63;40.69;41.21;44.04;41.95<br />
18;complicated.webconsole.open.DAMP;589.97;505.93;480.71;530.93;460.60;479.63;485.33;489.08;605.28;457.12;463.95;493.28;680.05;478.72;504.47;578.69;488.66;485.34;504.94;460.67;548.38;474.98;470.33;471.34;464.58<br />
19;complicated.webconsole.reload.DAMP;2707.20;2700.17;2596.02;2728.09;2905.51;2716.65;2657.68;2707.74;2567.86;2726.36;2650.92;2839.14;2620.34;2718.36;2595.22;2686.28;2703.48;2609.75;2686.41;2577.93;2634.47;2745.56;2655.89;2540.09;2649.18<br />
20;complicated.webconsole.close.DAMP;623.56;570.80;636.63;502.49;565.83;537.93;525.46;565.78;532.90;562.66;525.42;490.88;611.99;486.45;528.60;505.35;480.55;500.75;532.75;480.91;488.69;548.77;535.31;477.92;519.84<br />
21;complicated.inspector.open.DAMP;1233.26;753.57;742.74;953.11;653.29;692.66;653.75;767.02;840.68;707.56;713.95;685.79;690.21;1020.47;685.67;721.69;1063.72;695.55;702.15;760.91;853.14;660.12;729.16;1044.86;724.34<br />
22;complicated.inspector.reload.DAMP;2384.90;2436.35;2356.11;2436.58;2372.96;2558.86;2543.76;2351.03;2411.95;2358.04;2413.27;2339.85;2373.11;2338.94;2418.88;2360.87;2349.09;2498.96;2577.73;2445.07;2354.88;2424.90;2696.10;2362.39;2493.29<br />
23;complicated.inspector.close.DAMP;541.96;509.38;476.91;456.48;545.48;634.04;603.10;488.09;599.20;480.45;617.93;420.39;514.92;439.99;727.41;469.04;458.59;539.74;611.55;725.03;473.36;484.60;481.46;458.93;554.76<br />
24;complicated.jsdebugger.open.DAMP;644.97;578.41;542.23;595.94;704.80;603.08;689.18;552.99;597.23;584.17;682.14;758.16;791.71;738.43;640.30;809.26;704.85;601.32;696.10;683.44;796.34;657.25;631.89;739.96;641.82<br />
25;complicated.jsdebugger.reload.DAMP;2676.82;2650.84;2687.78;2401.23;3421.32;2450.91;2464.13;2286.40;2399.40;2415.97;2481.48;2827.69;2652.03;2554.63;2631.36;2443.83;2564.73;2466.22;2597.57;2552.73;2539.42;2481.21;2319.50;2539.00;2576.43<br />
26;complicated.jsdebugger.close.DAMP;795.68;616.48;598.88;536.77;435.02;635.61;558.67;841.64;613.48;886.60;581.38;580.96;571.40;605.34;671.00;882.02;619.01;579.63;643.05;656.78;699.64;928.99;549.76;560.96;676.32<br />
27;complicated.styleeditor.open.DAMP;2327.30;2494.19;2190.29;2205.60;2198.11;2509.01;2189.79;2532.05;2178.03;2207.75;2224.96;2665.84;2294.40;2645.44;2661.41;2364.60;2395.36;2582.72;2872.03;2679.29;2561.24;2330.11;2580.16;2510.36;2860.83<br />
28;complicated.styleeditor.reload.DAMP;2218.46;2335.18;2284.20;2345.05;2286.98;2453.47;2506.97;2661.19;2529.51;2289.78;2564.15;2608.24;2270.77;2362.17;2287.31;2300.19;2331.56;2300.86;2239.27;2231.33;2476.14;2286.28;2583.24;2540.29;2259.67<br />
29;complicated.styleeditor.close.DAMP;302.67;343.10;313.15;305.60;317.92;328.44;350.70;370.12;339.77;308.72;312.71;320.63;305.52;316.69;324.92;306.60;313.65;312.17;326.26;321.45;334.56;307.38;312.95;350.94;339.36<br />
30;complicated.performance.open.DAMP;477.99;537.96;564.85;515.05;502.03;515.58;492.80;689.06;448.76;588.91;509.76;485.39;548.17;479.14;638.67;535.86;541.61;611.52;554.72;665.37;694.04;470.60;746.16;547.85;700.02<br />
31;complicated.performance.reload.DAMP;2258.31;2345.74;2509.24;2579.71;2367.94;2365.94;2260.86;2324.23;2579.01;2412.63;2540.38;2069.80;2534.91;2443.48;2193.01;2442.99;2422.42;2475.35;2076.48;2092.95;2444.53;2353.86;2154.28;2354.61;2104.82<br />
32;complicated.performance.close.DAMP;334.44;516.66;432.49;341.29;309.30;365.20;332.16;311.42;370.81;301.81;381.13;299.39;317.60;314.10;372.44;314.76;306.24;349.85;382.08;352.53;309.40;298.44;314.10;315.44;405.22<br />
33;complicated.netmonitor.open.DAMP;469.70;597.87;468.36;823.09;696.39;477.19;487.78;495.92;587.89;471.48;555.02;507.45;883.33;522.15;756.86;713.64;593.82;715.13;477.15;717.85;586.79;556.97;631.43;629.55;581.16<br />
34;complicated.netmonitor.reload.DAMP;4033.55;3577.36;3655.61;3721.24;3874.29;3977.92;3778.62;3825.60;3984.65;3707.91;3985.24;3565.21;3702.40;3956.70;3627.14;3916.11;3929.11;3934.06;3590.60;3628.39;3618.84;3579.52;3953.04;3781.01;3682.69<br />
35;complicated.netmonitor.close.DAMP;1042.98;920.21;928.19;940.38;950.25;1043.61;1078.16;1077.38;1132.91;1095.05;1176.31;1256.83;1143.14;1234.61;1248.97;1242.29;1378.63;1312.74;1371.48;1373.15;1544.55;1422.51;1549.48;1616.55;1506.58<br />
</pre><br />
|}<br />
<br />
=== displaylist_mutate ===<br />
* contact: :mattwoodrow<br />
* source: [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/layout/benchmarks/displaylist_mutate.html displaylist_mutate.html]]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the displaylist_mutate.html page five times, measuring pageload each time, generating 5 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 4; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This measures the amount of time it takes to render a page after changing its display list. The page has a large number of display list items (10,000), and mutates one every frame. The goal of the test is to make displaylist construction a bottleneck, rather than painting or other factors, and thus improvements or regressions to displaylist construction will be visible. The test runs in ASAP mode to maximize framerate, and the result is how quickly the test was able to mutate and re-paint 600 items, one during each frame.<br />
<br />
=== Dromaeo Tests ===<br />
<br />
Dromaeo suite of tests for JavaScript performance testing. See the [https://wiki.mozilla.org/Dromaeo Dromaeo wiki] for more information. <br />
<br />
This suite is divided into several sub-suites. <br />
<br />
Each sub-suite is divided into tests, and each test is divided into sub-tests. Each sub-test takes some (in theory) fixed piece of work and measures how many times that piece of work can be performed in one second. The score for a test is then the geometric mean of the runs/second numbers for its sub-tests. The score for a sub-suite is the geometric mean of the scores for its tests.<br />
<br />
==== Dromaeo CSS ====<br />
* contact: :bz<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/dromaeo css.manifest]<br />
* type: PageLoader<br />
* reporting: speed in test runs per second (higher is better)<br />
* data: Dromaeo has 6 subtests which run internal benchmarks, each benchmark reports about 180 raw data points each<br />
summarization:<br />
* subtest: Dromaeo is a custom benchmark which has a lot of micro tests inside each subtest, because of this we use a custom [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#dromaeo dromaeo filter] to summarize the subtest. Each micro test produces 5 data points and for each 5 data points we take the mean, leaving 36 data points to represent the subtest (assuming 180 points). These 36 micro test means, are then run through a geometric_mean to produce a single number for the dromaeo subtest. [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l527 source: filter.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 6 subtest results.<br />
<br />
Each page in the manifest is part of the dromaeo css benchmark. Each page measures the performance of searching the DOM for nodes matching various CSS selectors, using different libraries for the selector implementation (jQuery, Dojo, Mootools, ExtJS, Prototype, and Yahoo UI).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;dojo.html;2209.83;2269.68;2275.47;2278.83;2279.81;4224.43;4344.96;4346.74;4428.69;4459.82;4392.80;4396.38;4412.54;4414.34;4415.62;3909.94;4027.96;4069.08;4099.63;4099.94;4017.70;4018.96;4054.25;4068.74;4081.31;3825.10;3984.20;4053.23;4074.59;4106.63;3893.88;3971.80;4031.15;4046.68;4048.31;3978.24;4010.16;4046.66;4051.68;4056.37;4189.50;4287.98;4390.98;4449.89;4450.20;4536.23;4557.82;4588.40;4662.58;4664.42;4675.51;4693.13;4743.72;4758.12;4764.67;4138.00;4251.60;4346.22;4410.12;4417.23;4677.53;4702.48;4714.62;4802.59;4805.33;4445.07;4539.91;4598.93;4605.45;4618.79;4434.40;4543.09;4618.56;4683.98;4689.51;4485.26;4496.75;4511.23;4600.86;4602.08;4567.52;4608.33;4615.56;4619.31;4622.79;3469.44;3544.11;3605.80;3647.74;3658.56;3101.88;3126.41;3147.73;3159.92;3170.73;3672.28;3686.40;3730.74;3748.89;3753.59;4411.71;4521.50;4633.98;4702.72;4708.76;3626.62;3646.71;3713.07;3713.13;3718.91;3846.17;3846.25;3913.61;3914.63;3916.22;3982.88;4112.98;4132.26;4194.92;4201.54;4472.64;4575.22;4644.74;4645.42;4665.51;4120.13;4142.88;4171.29;4208.43;4211.03;4405.36;4517.89;4537.50;4637.77;4644.28;4548.25;4581.20;4614.54;4658.42;4671.09;4452.78;4460.09;4494.06;4521.30;4522.37;4252.81;4350.72;4364.93;4441.40;4492.78;4251.34;4346.70;4355.00;4358.89;4365.72;4494.64;4511.03;4582.11;4591.79;4592.36;4207.54;4308.94;4309.14;4406.71;4474.46<br />
1;ext.html;479.65;486.21;489.61;492.94;495.81;24454.14;33580.33;34089.15;34182.83;34186.15;34690.83;35050.30;35051.30;35071.65;35099.82;5758.22;5872.32;6389.62;6525.38;6555.57;8303.96;8532.96;8540.91;8544.00;8571.49;8360.79;8408.79;8432.96;8447.28;8447.83;5817.71;5932.67;8371.83;8389.20;8643.44;7983.80;8073.27;8073.84;8076.48;8078.15;24596.00;32518.84;32787.34;32830.51;32861.00;2220.87;2853.84;3333.53;3345.17;3445.47;24785.75;24971.75;25044.25;25707.61;25799.00;2464.69;2481.89;2527.57;2534.65;2534.92;217793.00;219347.90;219495.00;220059.00;297168.00;40556.19;53062.47;54275.73;54276.00;54440.37;50636.75;50833.49;50983.49;51028.49;51032.74;10746.36;10972.45;11450.37;11692.18;11797.76;8402.58;8415.79;8418.66;8426.75;8428.16;16768.75;16896.00;16925.24;16945.58;17018.15;7047.68;7263.13;7313.16;7337.38;7383.22;713.88;723.72;751.47;861.35;931.00;25454.36;25644.90;25801.87;25992.61;25995.00;819.89;851.23;852.00;886.59;909.89;14325.79;15064.92;15240.39;15431.23;15510.61;452382.00;458194.00;458707.00;459226.00;459601.00;45699.54;46244.54;46270.54;46271.54;46319.00;1073.94;1080.66;1083.35;1085.84;1087.74;26622.33;27807.58;27856.72;28040.58;28217.86;37229.81;37683.81;37710.81;37746.62;37749.81;220386.00;222903.00;240808.00;247394.00;247578.00;25567.00;25568.49;25610.74;25650.74;25710.23;26466.21;28718.71;36175.64;36529.27;36556.00;26676.00;30757.69;31965.84;34521.83;34622.65;32791.18;32884.00;33194.83;33720.16;34192.66;32150.36;32520.02;32851.18;32947.18;33128.01;29472.85;30214.09;30708.54;30999.23;32879.51;23822.88;23978.28;24358.88;24470.88;24515.51<br />
2;jquery.html;285.42;288.57;292.66;293.75;294.14;10313.00;10688.20;13659.11;13968.65;14003.93;13488.39;13967.51;13980.79;14545.13;15059.77;4361.37;4488.35;4489.44;4492.24;4496.69;3314.32;3445.07;4412.51;5020.75;5216.66;5113.49;5136.56;5141.31;5143.87;5156.28;5055.95;5135.02;5138.64;5215.82;5226.48;4550.98;4551.59;4553.07;4557.77;4559.16;18339.63;18731.53;18738.63;18741.16;18806.15;1474.99;1538.31;1557.52;1703.67;1772.16;12209.94;12335.44;12358.32;12516.50;12651.94;1520.94;1522.62;1541.37;1584.71;1642.50;57533.00;59169.41;59436.11;59758.70;59872.40;8669.13;8789.34;8994.37;9016.05;9064.95;11047.39;11058.39;11063.78;11077.89;11082.78;6401.81;6426.26;6504.35;6518.25;6529.61;6250.22;6280.65;6304.59;6318.91;6328.72;5144.28;5228.40;5236.21;5271.26;5273.79;1398.91;1450.05;1456.39;1494.66;1519.42;727.85;766.62;844.35;858.49;904.87;9912.55;10249.54;14936.71;16566.50;16685.00;378.04;381.34;381.44;385.67;387.23;5362.60;5392.78;5397.14;5497.12;5514.83;213309.00;318297.00;320682.00;322681.00;322707.00;56357.44;67892.66;68329.66;68463.32;69506.00;418.91;424.49;425.19;425.28;426.40;9363.39;9559.95;9644.00;9737.07;9752.80;33170.83;33677.33;34950.83;35607.47;35765.82;44079.34;44588.55;45396.00;46309.00;46427.30;6302.87;6586.51;6607.08;6637.44;6642.17;9776.17;9790.46;9931.90;10391.79;10392.43;8739.26;8838.38;8870.20;8911.50;8955.15;8422.83;8786.21;8914.00;9135.82;9145.36;8945.28;9028.37;9035.23;9116.64;9137.86;6433.90;6688.73;6822.11;6830.08;6833.90;8575.23;8599.87;8610.91;8655.65;9123.91<br />
3;mootools.html;1161.69;1333.31;1425.89;1500.37;1557.37;6706.93;7648.46;8020.04;8031.36;8049.64;7861.80;7972.40;7978.12;7993.32;7993.88;1838.83;1862.93;1864.11;1866.28;1866.71;1909.93;1921.83;1928.53;1954.07;1969.98;1808.68;1820.01;1821.30;1825.92;1826.91;1849.07;1904.99;1908.26;1911.24;1912.50;1856.86;1871.78;1873.72;1878.54;1929.57;6506.67;6752.73;7799.22;7830.41;7855.18;4117.18;4262.42;4267.30;4268.27;4269.62;2720.56;2795.36;2840.08;2840.79;2842.62;699.12;703.75;774.36;791.73;798.18;11096.22;11126.39;11132.72;11147.16;11157.44;3934.33;4067.37;4140.94;4149.75;4150.38;9042.82;9077.46;9083.55;9084.41;9086.41;4431.47;4432.84;4437.33;4438.40;4440.44;3935.67;3937.31;3937.43;3940.53;3976.68;3247.17;3307.90;3319.90;3323.32;3330.60;1001.90;1016.87;1021.12;1021.67;1022.05;1016.34;1019.09;1036.62;1056.81;1057.76;7345.56;7348.56;7391.89;7393.85;7406.30;374.27;392.53;394.73;397.28;398.26;5588.58;5653.21;5655.07;5659.15;5660.66;9775.41;9860.51;9938.40;9959.85;9968.45;9733.42;9904.31;9953.05;9960.55;9967.20;6399.26;6580.11;7245.93;7336.96;7386.78;7162.00;7245.49;7249.38;7250.75;7304.63;8458.24;8583.40;8651.57;8717.39;8742.39;8896.42;8904.60;8927.96;8960.73;8961.82;7483.48;7747.77;7763.46;7766.34;7773.07;7784.00;7821.41;7827.18;7849.18;7855.49;7012.16;7141.57;7250.09;7253.13;7335.89;6977.97;7015.51;7042.40;7204.35;7237.20;7160.46;7293.23;7321.27;7321.82;7331.16;6268.69;6324.11;6325.78;6328.56;6342.40;6554.54;6625.30;6646.00;6650.30;6674.90<br />
4;prototype.html;237.05;251.94;256.61;259.65;263.52;4488.53;4676.88;4745.24;4745.50;4748.81;4648.47;4660.21;4666.58;4671.88;4677.32;3602.84;3611.40;3613.69;3615.69;3619.15;3604.41;3619.44;3623.24;3627.66;3628.11;3526.59;3589.35;3615.93;3616.35;3622.80;3624.69;3626.84;3628.47;3631.22;3632.15;3184.76;3186.11;3187.16;3187.78;3189.35;4353.43;4466.46;4482.57;4616.72;4617.88;4012.18;4034.84;4047.07;4047.82;4055.29;4815.11;4815.21;4816.11;4817.08;4820.40;3300.31;3345.18;3369.55;3420.98;3447.97;5026.99;5033.82;5034.50;5034.95;5038.97;3516.72;3520.79;3520.95;3521.81;3523.47;3565.29;3574.23;3574.37;3575.82;3578.37;4045.19;4053.51;4056.76;4058.76;4059.00;4714.67;4868.66;4869.66;4873.54;4878.29;1278.20;1300.92;1301.13;1301.17;1302.47;868.94;871.16;878.50;883.40;884.85;3874.71;3878.44;3881.61;3882.67;3886.92;4959.83;4968.45;4969.50;4971.38;4972.30;3862.69;3870.15;3871.79;3873.83;3878.07;2690.15;2711.66;2714.42;2715.39;2715.89;4349.04;4349.63;4351.33;4353.59;4355.46;4950.95;5101.08;5107.69;5120.21;5120.39;4336.63;4360.76;4361.96;4362.28;4365.43;4928.75;4939.41;4939.56;4943.95;4966.78;4869.03;4886.24;4888.85;4889.14;4895.76;4362.39;4362.78;4363.96;4365.00;4365.08;3408.00;3470.03;3476.37;3546.65;3547.34;4905.73;4926.21;4926.70;4926.93;4929.43;4682.88;4694.91;4696.30;4697.06;4699.69;4688.86;4691.25;4691.46;4698.37;4699.41;4628.07;4631.31;4633.42;4634.00;4636.00;4699.44;4796.02;4808.83;4809.95;4813.52;4719.10;4720.41;4722.95;4723.03;4723.53<br />
5;yui.html;569.72;602.22;627.02;647.49;692.84;9978.30;10117.54;10121.70;10129.75;10137.24;9278.68;9291.44;9349.00;9370.53;9375.86;475.79;481.92;606.51;607.42;618.73;617.68;618.89;623.30;626.58;631.85;501.81;649.76;653.22;655.69;656.71;510.62;645.56;657.42;657.88;658.39;475.53;476.77;476.80;476.92;476.96;9895.16;9976.15;9988.25;9989.85;9996.40;9483.15;9545.75;9676.37;9808.51;10360.22;8331.29;8397.87;8538.06;8714.69;8803.78;2748.93;2800.93;2802.59;2857.33;2864.46;33757.16;33804.83;33859.32;33931.00;33991.32;7818.65;7846.92;7892.09;8170.55;8217.75;13691.38;13692.86;13693.25;13698.73;13706.66;5378.70;5517.83;5615.86;5616.16;5624.00;2985.63;3002.97;3003.07;3037.73;3038.87;2459.10;2502.52;2504.91;2507.07;2507.26;396.62;405.78;411.43;412.03;412.56;543.45;550.75;568.50;578.59;592.25;6762.21;6901.72;6984.27;7064.22;7122.29;454.78;519.40;539.29;543.96;566.16;3235.39;3266.13;3453.26;3498.79;3518.54;39079.22;39722.80;41350.59;41422.38;41540.17;34435.14;34606.31;34623.31;34661.00;34672.48;29449.12;29530.11;30507.24;31938.52;31961.52;7449.33;7524.62;7629.73;7712.96;7796.42;22917.43;23319.00;23441.41;23582.88;23583.53;29780.40;30272.55;31761.00;31765.84;31839.36;6112.45;6218.35;6476.68;6603.54;6793.66;10385.79;10471.69;10518.53;10552.74;10644.95;9563.52;9571.33;9617.09;9946.35;9976.80;9406.11;9518.48;9806.46;10102.44;10173.19;9482.43;9550.28;9878.21;9902.90;9951.45;8343.17;8511.00;8606.00;8750.21;8869.29;8234.96;8462.70;8473.49;8499.58;8808.91<br />
</pre><br />
|}<br />
<br />
==== Dromaeo DOM (Linux64 only) ====<br />
* contact: :bz<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/dromaeo dom.manifest]<br />
* type: PageLoader<br />
* data: see Dromaeo DOM<br />
* reporting: speed in test runs per second (higher is better)<br />
<br />
Each page in the manifest is part of the dromaeo dom benchmark. These are the specific areas that Dromaeo DOM covers:<br />
<br />
===== DOM Attributes =====<br />
Measures performance of getting and setting a DOM attribute, both via <code>getAttribute</code> and via a reflecting DOM property. Also throws in some expando getting/setting for good measure.<br />
<br />
===== DOM Modification =====<br />
Measures performance of various things that modify the DOM tree: creating element and text nodes and inserting them into the DOM.<br />
<br />
===== DOM Query =====<br />
Measures performance of various methods of looking for nodes in the DOM: <code>getElementById</code>, <code>getElementsByTagName</code>, and so forth.<br />
<br />
===== DOM Traversal =====<br />
Measures performance of various accessors (<code>childNodes</code>, <code>firstChild</code>, etc) that would be used when doing a walk over the DOM tree.<br />
<br />
Please see Dromaeo CSS for examples of data.<br />
<br />
=== glterrain ===<br />
* contact: :jgilbert<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/webgl/benchmarks/terrain glterrain]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the perftest.html page (which generates 4 metrics to track) 25 times, resulting in 4 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l381 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 4 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|glterrain<br />
|Measures average frames interval while animating a simple WebGL scene<br />
|}<br />
<br />
This tests animates a simple WebGL scene (static textured landscape, one moving light source, rotating viewport) and measure the frames throughput (expressed as average interval) over 100 frames. It runs in ASAP mode (vsync off) and measures the same scene 4 times - for all combination of antialiasing and alpha. It reports the results as 4 values - one for each combination. Lower results are better.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;0.WebGL-terrain-alpha-no-AA-no;19.8189;20.57185;20.5069;21.09645;20.40045;20.89025;20.34285;20.8525;20.45845;20.6499;19.94505;20.05285;20.316049;19.46745;19.46135;20.63865;20.4789;19.97015;19.9546;20.40365;20.74385;20.828649;20.78295;20.51685;20.97069<br />
1;1.WebGL-terrain-alpha-no-AA-yes;23.0464;23.5234;23.34595;23.40609;22.54349;22.0554;22.7933;23.00685;23.023649;22.51255;23.25975;23.65819;22.572249;22.9195;22.44325;22.95015;23.3567;23.02089;22.1459;23.04545;23.09235;23.40855;23.3296;23.18849;23.273249<br />
2;2.WebGL-terrain-alpha-yes-AA-no;24.01795;23.889449;24.2683;24.34649;23.0562;24.02275;23.54819;24.1874;23.93545;23.53629;23.305149;23.62459;24.01589;24.06405;24.143449;23.998549;24.08205;24.26989;24.0736;24.2346;24.01145;23.7817;23.90785;24.7118;24.2834<br />
3;3.WebGL-terrain-alpha-yes-AA-yes;25.91375;25.87005;25.64875;25.15615;25.5475;24.497449;24.56385;25.57529;25.54889;26.31559;24.143949;25.09895;24.75049;25.2087;25.52385;25.9017;25.4439;24.3495;25.9269;25.734449;26.4126;25.547449;25.667249;25.679349;25.9565<br />
</pre><br />
|}<br />
<br />
=== glvideo ===<br />
* contact: :jgilbert<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/webgl/benchmarks/video glvideo]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: 5 cycles of the entire benchmark, each subtest will have 5 data points (see below)<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 4; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 4 subtest results.<br />
<br />
* '''Lower is better'''<br />
* unit: ms/100 ticks<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|glvideo<br />
|WebGL video texture update with 1080p video. Measures mean tick time across 100 ticks.<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;Mean tick time across 100 ticks: ;54.6916;49.0534;51.21645;51.239650000000005;52.44295<br />
</pre><br />
|}<br />
<br />
This test playbacks a video file and ask WebGL to draw video frames as WebGL textures for 100 ticks. It collects the mean tick time across 100 ticks to measure how much time it will spend for a video texture upload to be a WebGL texture (gl.texImage2D). We run it for 5 times and ignore the first found. Lower results are better.<br />
<br />
=== jetstream ===<br />
* contact: :jandem<br />
* source: [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/jetstream/jetstream.manifest jetstream.manifest]] and jetstream.zip from tooltool<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* measuring: JavaScript performance<br />
* reporting: geometric mean from the benchmark<br />
* data: internal benchmark<br />
** suite: [https://searchfox.org/mozilla-central/source/testing/talos/talos/output.py#259 geometric mean] provided by the benchmark<br />
<br />
This is the [http://browserbench.org/JetStream/in-depth.html JetStream] javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
=== kraken ===<br />
* contact: :sdetar<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/kraken kraken.manifest]]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* measuring: JavaScript performance<br />
* reporting: Total time for all tests, in ms (lower is better)<br />
* data: there are 14 subtests in kraken, each subtest is an internal benchmark and generates 10 data points, or 14 sets of 10 data points.<br />
* summarization:<br />
** subtest: For all of the 10 data points, we take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#mean mean] to report a single number.<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 14 subtest results.<br />
<br />
This is the [[Kraken]] javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;ai-astar;100;95;98;102;101;99;97;98;98;102<br />
1;audio-beat-detection;147;147;191;173;145;139;186;143;183;140<br />
2;audio-dft;161;156;158;157;160;158;160;160;159;158<br />
3;audio-fft;82;83;83;154;83;83;82;83;160;82<br />
4;audio-oscillator;96;96;141;95;95;95;129;96;95;134<br />
5;imaging-gaussian-blur;116;115;116;115;115;115;115;115;117;116<br />
6;imaging-darkroom;166;164;166;165;166;166;165;165;165;166<br />
7;imaging-desaturate;87;87;87;87;88;87;88;87;87;87<br />
8;json-parse-financial;75;77;77;76;77;76;77;76;77;77<br />
9;json-stringify-tinderbox;79;79;80;79;78;79;79;78;79;79<br />
10;stanford-crypto-aes;98;97;96;98;98;98;98;98;113;95<br />
11;stanford-crypto-ccm;130;138;130;127;137;134;134;132;147;129<br />
12;stanford-crypto-pbkdf2;176;187;183;183;176;174;181;187;175;173<br />
13;stanford-crypto-sha256-iterative;86;85;83;84;86;85;85;86;83;83<br />
</pre><br />
|}<br />
<br />
=== motionmark ===<br />
* contact: :milan<br />
* source: [[https://searchfox.org/mozilla-central/source/third_party/webkit/PerformanceTests/MotionMark source]] [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/motionmark manifests]]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* measuring: benchmark measuring the time to animate complex scenes<br />
* summarization:<br />
** subtest: FPS from the subtest, each subtest is run for 15 seconds, repeat this 5 times and report the median value<br />
** suite: we take a geometric mean of all the subtests (9 for animometer, 11 for html suite)<br />
<br />
=== rasterflood_svg ===<br />
* contact: :rhunt<br />
* source: [https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/gfx/benchmarks/rasterflood_svg.html rasterflood_svg.html]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the rasterflood_svg.html page ten times, measuring pageload each time, generating 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 9; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This page animates some complex SVG patterns in a requestAnimationFrame callback. However, it also churns the CPU during each callback, spinning an empty loop for 14ms each frame. The intent is that, if we consider the rasterization costs to be 0, then the animation should run close to 60fps. Otherwise it will lag. Since rasterization costs are not 0, the lower we can get them, the faster the test will run. The test runs in ASAP mode to maximize framerate. The result is how quickly the browser is able to render 600 frames of the animation.<br />
<br />
Improvements (or regressions) to general painting performance or SVG are likely to affect this benchmark.<br />
<br />
=== rasterflood_gradient ===<br />
* contact: :rhunt<br />
* source: [https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/gfx/benchmarks/rasterflood_gradient.html rasterflood_gradient.html]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the rasterflood_gradient.html page ten times, computing a score each time, generating 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 9; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This page animates some complex gradient patterns in a requestAnimationFrame callback. However, it also churns the CPU during each callback, spinning an empty loop for 14ms each frame. The intent is that, if we consider the rasterization costs to be 0, then the animation should run close to 60fps. Otherwise it will lag. Since rasterization costs are not 0, the lower we can get them, the faster the test will run. The test runs in ASAP mode to maximize framerate.<br />
<br />
The test runs for 10 seconds, and the resulting score is how many frames we were able to render during that time. Higher is better. Improvements (or regressions) to general painting performance or gradient rendering will affect this benchmark.<br />
<br />
=== sessionrestore/sessionrestore_no_auto_restore/sessionrestore_many_windows ===<br />
* contact: :mikedeboer, :mconley, :felipe<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/sessionrestore talos/sessionrestore]<br />
* bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=936630 bug 936630], [https://bugzilla.mozilla.org/show_bug.cgi?id=1331937 bug 1331937], [https://bugzilla.mozilla.org/show_bug.cgi?id=1531520 bug 1531520]<br />
* type: Startup<br />
* measuring: time spent reading and restoring the session.<br />
* reporting: interval in ms (lower is better).<br />
* data: we load the session restore index page 10 times to collect 1 set of 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 9 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: identical to subtest<br />
<br />
Three tests measure the time spent reading and restoring the session from a valid sessionstore.js. Time is counted from the ''process start'' until the ''sessionRestored'' event.<br />
<br />
In ''sessionrestore'', this is tested with a configuration that requires the session to be restored. In ''sessionrestore_no_auto_restore'', this is tested with a configuration that requires the session to not be restored. Both of the above tests use a sessionstore.js file that contains one window and roughly 89 tabs. In ''sessionrestore_many_windows'', this is tested with a sessionstore.js that contains 3 windows and 130 tabs. The first window contains 50 tabs, 80 remaning tabs are divided equally between the second and the third window.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[2362.0, 2147.0, 2171.0, 2134.0, 2116.0, 2145.0, 2141.0, 2141.0, 2136.0, 2080.0]<br />
</pre><br />
|}<br />
<br />
=== speedometer ===<br />
* contact: :selena<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/speedometer/speedometer.manifest speedometer.manifest]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* measuring: responsiveness of web applications<br />
* reporting: runs/minute score<br />
* data: there are 16 subtests in Speedometer; each of these are made up of 9 internal benchmarks.<br />
* summarization:<br />
** subtest: For all of the 16 subtests, we collect the sum of all their internal benchmark results.<br />
** suite: geometric [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#mean mean] of the 16 sums<br />
<br />
This is the [http://browserbench.org/Speedometer/ Speedometer] javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;VanillaJS-TodoMVC/Adding100Items/Sync;153.055;150.4950000000008;149.16500000000087;150.8000000000029;150.92499999998836;147.53000000000003;154.8199999999997;156.20000000000437;147.0749999999971;150.47500000000582;151.63;158.02000000000044;145.54499999999825;156.3050000000003;146.7100000000064;147.505;148.5699999999979;148.9350000000013;147.61000000000058;146.41999999999825;149.64;151.875;189.75500000000466;147.04499999999825;151.0350000000035<br />
1;VanillaJS-TodoMVC/Adding100Items/Async;29.99000000000001;17.80500000000029;27.924999999995634;44.51000000000204;23.229999999995925;33.84500000000003;22.600000000000364;60.93999999999505;45.669999999998254;17.235000000000582;22.125;54.36499999999796;69.95000000000437;16.56500000000233;16.52499999999418;26.65500000000003;31.31000000000131;40.7300000000032;18.455000000001746;34.945000000006985;25.029999999999973;28.229999999999563;20.709999999999127;15.940000000002328;15.960000000006403<br />
2;VanillaJS-TodoMVC/Adding100Items;183.04500000000002;168.3000000000011;177.0899999999965;195.31000000000495;174.15499999998428;181.37500000000006;177.42000000000007;217.13999999999942;192.74499999999534;167.7100000000064;173.755;212.3849999999984;215.49500000000262;172.87000000000262;163.23500000000058;174.16000000000003;179.8799999999992;189.6650000000045;166.06500000000233;181.36500000000524;174.66999999999996;180.10499999999956;210.46500000000378;162.98500000000058;166.9950000000099<br />
3;VanillaJS-TodoMVC/CompletingAllItems/Sync;50.01500000000004;50.154999999998836;45.95499999999447;49.95499999999447;49.345000000001164;46.67500000000001;48.17000000000007;50.075000000004366;49.6050000000032;47.5;49.20999999999998;49.86499999999796;45.79000000000087;48.45999999999913;47.27499999999418;46.964999999999975;51.279999999998836;56.42000000000553;47.49000000000524;47.09000000001106;47.66999999999996;46.97999999999956;150.63000000000466;46.42500000000291;46.06500000000233<br />
4;VanillaJS-TodoMVC/CompletingAllItems/Async;15.05499999999995;20.144999999998618;8.50499999999738;14.57499999999709;16.014999999999418;20.524999999999977;42.18000000000029;16.62000000000262;16.735000000000582;18.305000000007567;18.670000000000016;10.06499999999869;15.57999999999447;20.24500000000262;25.460000000006403;20.364999999999952;21.18500000000131;16.310000000004948;21.584999999999127;10.729999999995925;27.314999999999998;28.56499999999869;24.595000000001164;18.9800000000032;14.94999999999709<br />
5;VanillaJS-TodoMVC/CompletingAllItems;65.07;70.29999999999745;54.45999999999185;64.52999999999156;65.36000000000058;67.19999999999999;90.35000000000036;66.69500000000698;66.34000000000378;65.80500000000757;67.88;59.92999999999665;61.36999999999534;68.70500000000175;72.73500000000058;67.32999999999993;72.46500000000015;72.73000000001048;69.07500000000437;57.820000000006985;74.98499999999996;75.54499999999825;175.22500000000582;65.40500000000611;61.01499999999942<br />
6;VanillaJS-TodoMVC/DeletingAllItems/Sync;46.02499999999998;34.530000000000655;31.715000000003783;34.575000000004366;38.93000000000757;43.485000000000014;33.00500000000102;44.59499999999389;34.38500000000204;33.10000000000582;37.875;34.594999999997526;33.169999999998254;34.974999999998545;35.61999999999534;35.89500000000004;36.159999999999854;38.654999999998836;33.770000000004075;34.904999999998836;42.299999999999955;36.13999999999942;32.56999999999971;37.970000000001164;33.69499999999243<br />
7;VanillaJS-TodoMVC/DeletingAllItems/Async;15.475000000000023;11.94000000000051;17.70499999999447;20.19000000000233;9.509999999994761;7.425000000000011;14.040000000000873;10.104999999995925;13.430000000000291;11.985000000000582;6.984999999999957;23.75500000000102;63.45999999999913;8.014999999999418;12.059999999997672;21.40500000000003;13.279999999998836;11.364999999997963;7.864999999997963;33.154999999998836;12.420000000000016;22.409999999999854;8.090000000003783;12.994999999995343;7.125<br />
8;VanillaJS-TodoMVC/DeletingAllItems;61.5;46.470000000001164;49.419999999998254;54.765000000006694;48.44000000000233;50.910000000000025;47.04500000000189;54.699999999989814;47.81500000000233;45.0850000000064;44.85999999999996;58.349999999998545;96.62999999999738;42.98999999999796;47.679999999993015;57.30000000000007;49.43999999999869;50.0199999999968;41.63500000000204;68.05999999999767;54.71999999999997;58.54999999999927;40.66000000000349;50.96499999999651;40.81999999999243<br />
9;VanillaJS-TodoMVC;309.615;285.0699999999997;280.9699999999866;314.6050000000032;287.9549999999872;299.48500000000007;314.8150000000023;338.5349999999962;306.90000000000146;278.6000000000204;286.49499999999995;330.6649999999936;373.49499999999534;284.5650000000023;283.6499999999942;298.79;301.78499999999804;312.4150000000118;276.77500000000873;307.2450000000099;304.3749999999999;314.1999999999971;426.3500000000131;279.3550000000032;268.83000000000175<br />
10;Vanilla-ES2015-TodoMVC/Adding100Items/Sync;187.5;191.14999999999782;198.6999999999971;196.77500000000146;193.25;192.91499999999996;197.4350000000013;194.09999999999854;193.60499999999593;195.09500000000116;197.52000000000004;200.14500000000044;241.61499999999796;193.61999999999534;191.75500000000466;193.32000000000005;195.8100000000013;200.0699999999997;192.95000000000437;475.40499999999884;192.67999999999995;196.77000000000044;197.66500000000087;194.8550000000032;197.4250000000029<br />
11;Vanilla-ES2015-TodoMVC/Adding100Items/Async;22.949999999999932;15.715000000000146;18.2300000000032;30.5199999999968;21.53499999998894;23.80499999999995;34.409999999999854;16.494999999995343;21.619999999995343;19.130000000004657;21.230000000000018;17.354999999999563;22.25;16.18000000000029;21.02499999999418;16.92999999999995;16.280000000002474;19.965000000003783;27.185000000004948;18.630000000004657;27.039999999999964;17.125;16.510000000002037;22.06999999999971;19.514999999999418<br />
12;Vanilla-ES2015-TodoMVC/Adding100Items;210.44999999999993;206.86499999999796;216.9300000000003;227.29499999999825;214.78499999998894;216.7199999999999;231.84500000000116;210.5949999999939;215.22499999999127;214.22500000000582;218.75000000000006;217.5;263.86499999999796;209.79999999999563;212.77999999999884;210.25;212.09000000000378;220.0350000000035;220.1350000000093;494.0350000000035;219.7199999999999;213.89500000000044;214.1750000000029;216.9250000000029;216.94000000000233<br />
13;Vanilla-ES2015-TodoMVC/CompletingAllItems/Sync;54.25999999999999;50.36999999999898;55.58999999999651;52.38500000000204;56.31500000000233;52.174999999999955;50.875;50.349999999998545;56.61000000000058;51.570000000006985;52.495000000000005;50.13000000000102;62.71999999999389;51.18000000000029;53.44999999999709;51.29499999999996;50.66500000000087;87.94000000000233;52.83999999999651;60.330000000001746;51.69500000000005;50.80500000000029;52.70999999999913;54.79000000000087;54.13999999999942<br />
14;Vanilla-ES2015-TodoMVC/CompletingAllItems/Async;27.379999999999995;17.260000000002037;32.075000000004366;11.264999999999418;23.94999999999709;17.154999999999973;13.764999999999418;15.525000000001455;19.63499999999476;16.214999999996508;25.055000000000064;20.340000000000146;22.485000000000582;18.849999999998545;21.829999999987194;16.75999999999999;18.82999999999811;23.034999999996217;19.775000000001455;24.289999999993597;33.664999999999964;18.400000000001455;27.7699999999968;18.450000000004366;17.855000000010477<br />
15;Vanilla-ES2015-TodoMVC/CompletingAllItems;81.63999999999999;67.63000000000102;87.66500000000087;63.650000000001455;80.26499999999942;69.32999999999993;64.63999999999942;65.875;76.24499999999534;67.78500000000349;77.55000000000007;70.47000000000116;85.20499999999447;70.02999999999884;75.27999999998428;68.05499999999995;69.49499999999898;110.97499999999854;72.61499999999796;84.61999999999534;85.36000000000001;69.20500000000175;80.47999999999593;73.24000000000524;71.9950000000099<br />
16;Vanilla-ES2015-TodoMVC/DeletingItems/Sync;34.174999999999955;42.539999999997235;36.05500000000029;36.06500000000233;47.629999999990105;41.799999999999955;35.669999999998254;45.78500000000349;35.50499999999738;45.53500000000349;39.504999999999995;34.61000000000058;49.24500000000262;44.79500000000553;41.169999999998254;43.86500000000001;35.275000000001455;48.044999999998254;41.51000000000204;44.86500000000524;40.72000000000003;35.04000000000087;35.51499999999942;35.62999999999738;39.90000000000873<br />
17;Vanilla-ES2015-TodoMVC/DeletingItems/Async;10.754999999999995;12.934999999997672;12.819999999999709;10.430000000000291;13.205000000001746;14.090000000000032;39.77000000000044;12.014999999999418;12.299999999995634;7.349999999991269;13.724999999999909;11.579999999998108;13.019999999996799;7.219999999993888;14.464999999996508;13.370000000000005;7.424999999999272;7.0350000000034925;11.20499999999447;11.330000000001746;20.844999999999914;6.985000000000582;9.305000000000291;7.255000000004657;12.240000000005239<br />
18;Vanilla-ES2015-TodoMVC/DeletingItems;44.92999999999995;55.47499999999491;48.875;46.49500000000262;60.83499999999185;55.889999999999986;75.43999999999869;57.80000000000291;47.804999999993015;52.88499999999476;53.229999999999905;46.18999999999869;62.26499999999942;52.01499999999942;55.63499999999476;57.235000000000014;42.70000000000073;55.080000000001746;52.71499999999651;56.195000000006985;61.56499999999994;42.025000000001455;44.81999999999971;42.88500000000204;52.14000000001397<br />
19;Vanilla-ES2015-TodoMVC;337.01999999999987;329.9699999999939;353.47000000000116;337.4400000000023;355.8849999999802;341.9399999999998;371.9249999999993;334.2699999999968;339.2749999999796;334.8950000000041;349.53000000000003;334.15999999999985;411.33499999999185;331.8449999999939;343.6949999999779;335.53999999999996;324.2850000000035;386.0900000000038;345.4650000000038;634.8500000000058;366.64499999999987;325.12500000000364;339.47499999999854;333.0500000000102;341.0750000000262<br />
20;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items/Sync;186.9849999999999;192.72999999999956;196.3249999999971;198.64500000000407;204.4100000000035;195.62;357.52999999999884;201.65000000000146;191.4300000000003;199.69500000000698;199.63;200.86000000000058;274.52999999999884;210.28499999999622;196.20500000000175;194.58000000000004;192.73499999999694;212.0550000000003;204.0699999999997;223.20500000000175;196.0999999999999;194.08000000000175;198.52000000000407;224.71500000000378;191.57000000000698<br />
21;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items/Async;19.97499999999991;16.31499999999869;22.955000000001746;27.419999999998254;16.214999999996508;26.11999999999989;16.2300000000032;23.294999999998254;25.089999999996508;19.769999999989523;25.125;20.020000000000437;30.464999999996508;22.110000000000582;16.944999999992433;17.940000000000055;22.455000000001746;25.614999999997963;25.155000000006112;30.044999999998254;33.51499999999987;17.349999999998545;16.6050000000032;18.30500000000029;28.964999999996508<br />
22;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items;206.9599999999998;209.04499999999825;219.27999999999884;226.06500000000233;220.625;221.7399999999999;373.76000000000204;224.9449999999997;216.5199999999968;219.4649999999965;224.755;220.88000000000102;304.99499999999534;232.3949999999968;213.14999999999418;212.5200000000001;215.1899999999987;237.66999999999825;229.22500000000582;253.25;229.61499999999978;211.4300000000003;215.12500000000728;243.02000000000407;220.5350000000035<br />
23;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems/Sync;52.31000000000017;51.87000000000262;54.81999999999971;60.59499999999389;107.30499999999302;60.569999999999936;59.724999999998545;62.32499999999709;52.86999999999534;52.17499999998836;65.69999999999982;54.22999999999956;56.705000000001746;86.8900000000067;60.57499999999709;53.044999999999845;54.87999999999738;52.54000000000087;61.580000000001746;149.7399999999907;56.49000000000001;53.3650000000016;53.224999999998545;70.97000000000116;51.845000000001164<br />
24;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems/Async;17.24000000000001;18.75;16.349999999998545;9.584999999999127;22.639999999999418;10.330000000000155;13.540000000000873;17.80500000000029;15.205000000001746;17.789999999993597;19.37000000000012;21.68500000000131;9.959999999999127;16.854999999995925;31.464999999996508;18.829999999999927;17.92000000000189;17.344999999993888;18.2699999999968;17.110000000000582;21.3900000000001;27.0099999999984;19.364999999997963;19.924999999995634;18.964999999996508<br />
25;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems;69.55000000000018;70.62000000000262;71.16999999999825;70.17999999999302;129.94499999999243;70.90000000000009;73.26499999999942;80.12999999999738;68.07499999999709;69.96499999998196;85.06999999999994;75.91500000000087;66.66500000000087;103.74500000000262;92.0399999999936;71.87499999999977;72.79999999999927;69.88499999999476;79.84999999999854;166.84999999999127;77.88000000000011;80.375;72.58999999999651;90.8949999999968;70.80999999999767<br />
26;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems/Sync;41.649999999999864;48.38999999999942;39.984999999993306;36.25500000000466;44.76499999999942;43.409999999999854;41.56999999999971;35.03500000000349;36.43000000000029;40.05500000000757;41.25;41.08499999999913;40.86000000000058;80.55500000000029;47.75999999999476;37.92000000000007;35.22999999999956;66.125;38.7100000000064;38.48500000000058;46.309999999999945;40.19500000000335;39.7300000000032;36.674999999995634;38.05000000000291<br />
27;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems/Async;12.345000000000027;13.670000000001892;12.884999999994761;14.830000000001746;11.220000000001164;9.495000000000118;11.325000000000728;7.55000000000291;9.055000000000291;7.069999999992433;11.184999999999945;14.785000000003492;25.885000000002037;7.165000000000873;16.36500000000524;9.680000000000064;6.805000000000291;6.870000000002619;13.439999999995052;12.884999999994761;13.634999999999991;11.994999999998981;11.334999999999127;23.784999999996217;12.620000000009895<br />
28;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems;53.99499999999989;62.06000000000131;52.86999999998807;51.0850000000064;55.98500000000058;52.90499999999997;52.89500000000044;42.5850000000064;45.48500000000058;47.125;52.434999999999945;55.87000000000262;66.74500000000262;87.72000000000116;64.125;47.600000000000136;42.034999999999854;72.99500000000262;52.150000000001455;51.36999999999534;59.944999999999936;52.19000000000233;51.06500000000233;60.45999999999185;50.670000000012806<br />
29;Vanilla-ES2015-Babel-Webpack-TodoMVC;330.5049999999999;341.7250000000022;343.31999999998516;347.33000000000175;406.554999999993;345.54499999999996;499.9200000000019;347.6600000000035;330.07999999999447;336.55499999997846;362.2599999999999;352.6650000000045;438.40499999999884;423.8600000000006;369.3149999999878;331.995;330.0249999999978;380.54999999999563;361.2250000000058;471.4699999999866;367.4399999999998;343.9950000000026;338.7800000000061;394.3749999999927;342.01500000001397<br />
30;React-TodoMVC/Adding100Items/Sync;299.2650000000001;299.6800000000003;321.70000000000437;308.51000000000204;313.6149999999907;321.855;306.9500000000007;305.2149999999965;335.4499999999971;338.52999999999884;316.16999999999985;317.7599999999984;312.92000000000553;315.4950000000026;357.29000000000815;311.1600000000001;338.21500000000015;314.3249999999971;335.6449999999968;314.5450000000128;308.28999999999996;309.1949999999997;325.72499999999854;324.3950000000041;316.22000000000116<br />
31;React-TodoMVC/Adding100Items/Async;19.685000000000173;23.674999999999272;23.1050000000032;29.470000000001164;21.860000000000582;23.174999999999955;26.100000000002183;21.089999999996508;34.87999999999738;21.919999999998254;23.924999999999955;57.73999999999796;29.94499999999971;23.220000000001164;22.664999999993597;24.52500000000009;32.8949999999968;23.095000000001164;24.8550000000032;38.354999999995925;26.585000000000036;29.56500000000233;50.549999999995634;20.409999999996217;30.554999999993015<br />
32;React-TodoMVC/Adding100Items;318.9500000000003;323.35499999999956;344.80500000000757;337.9800000000032;335.47499999999127;345.03;333.0500000000029;326.304999999993;370.32999999999447;360.4499999999971;340.0949999999998;375.49999999999636;342.86500000000524;338.7150000000038;379.95500000000175;335.6850000000002;371.10999999999694;337.41999999999825;360.5;352.90000000000873;334.875;338.76000000000204;376.2749999999942;344.8050000000003;346.7749999999942<br />
33;React-TodoMVC/CompletingAllItems/Sync;179.42999999999984;183.98500000000058;189.8199999999997;198.58499999999913;198.70500000000175;198.81999999999994;295.0750000000007;192.4449999999997;198.77000000000407;299.9349999999977;197.39999999999986;220.69000000000233;196.75;188.38500000000204;191.0899999999965;206.9849999999999;201.47499999999854;193.12000000000262;208.1800000000003;240.68499999999767;199.67499999999995;219.02499999999782;192.25999999999476;188.15000000000146;197.7850000000035<br />
34;React-TodoMVC/CompletingAllItems/Async;17.795000000000073;15.280000000002474;16.080000000001746;18.264999999999418;15.634999999994761;19.519999999999982;17.11999999999898;18.12999999999738;22.50499999999738;20.66500000000815;16.795000000000073;31.209999999999127;16.94000000000233;16.709999999999127;16.625;20.575000000000045;44.47999999999956;18.139999999999418;17.68000000000029;22.094999999986612;17.97499999999991;22.895000000000437;57.08499999999913;22.529999999998836;17.995000000009895<br />
35;React-TodoMVC/CompletingAllItems;197.2249999999999;199.26500000000306;205.90000000000146;216.84999999999854;214.3399999999965;218.33999999999992;312.1949999999997;210.5749999999971;221.27500000000146;320.6000000000058;214.19499999999994;251.90000000000146;213.69000000000233;205.09500000000116;207.7149999999965;227.55999999999995;245.9549999999981;211.26000000000204;225.86000000000058;262.7799999999843;217.64999999999986;241.91999999999825;249.3449999999939;210.6800000000003;215.7800000000134<br />
36;React-TodoMVC/DeletingAllItems/Sync;121.0949999999998;114.28499999999985;122.61499999999796;118.03000000000611;115.91500000000815;128.47500000000014;114.81499999999869;113.52500000000146;155.77500000000146;113.59500000000116;123.64499999999975;97.13999999999942;117.53500000000349;117.76499999999942;119.67999999999302;120.27999999999997;137.02500000000146;125.30000000000291;124.55000000000291;119.55500000000757;117.54999999999995;120.625;123.20500000000175;126.48999999999796;126.08999999999651<br />
37;React-TodoMVC/DeletingAllItems/Async;7.394999999999982;8.580000000001746;12.364999999997963;6.610000000000582;10.989999999990687;6.735000000000127;9.794999999998254;10.340000000003783;6.625;9.069999999992433;6.654999999999745;8.81000000000131;14.569999999999709;8.619999999995343;218.33000000000175;9.275000000000091;15.8849999999984;6.260000000002037;17.69000000000233;25.835000000006403;13.28500000000031;7.970000000001164;58.229999999995925;10.485000000000582;8.740000000005239<br />
38;React-TodoMVC/DeletingAllItems;128.48999999999978;122.8650000000016;134.97999999999593;124.6400000000067;126.90499999999884;135.21000000000026;124.60999999999694;123.86500000000524;162.40000000000146;122.6649999999936;130.2999999999995;105.95000000000073;132.1050000000032;126.38499999999476;338.00999999999476;129.55500000000006;152.90999999999985;131.56000000000495;142.24000000000524;145.39000000001397;130.83500000000026;128.59500000000116;181.43499999999767;136.97499999999854;134.83000000000175<br />
39;React-TodoMVC;644.665;645.4850000000042;685.685000000005;679.4700000000084;676.7199999999866;698.5800000000002;769.8549999999996;660.7449999999953;754.0049999999974;803.7149999999965;684.5899999999992;733.3499999999985;688.6600000000108;670.1949999999997;925.679999999993;692.8000000000002;769.9749999999949;680.2400000000052;728.6000000000058;761.070000000007;683.3600000000001;709.2750000000015;807.0549999999857;692.4599999999991;697.3850000000093<br />
40;React-Redux-TodoMVC/Adding100Items/Sync;434.4200000000001;453.82000000000335;714.3499999999985;445.4150000000009;449.7250000000058;480.75999999999976;448.96500000000015;436.7850000000035;446.4799999999959;456.6399999999994;446.56500000000005;434.54499999999825;486.66999999999825;442.75500000000466;444.13000000000466;437.69000000000005;444.40499999999884;453.66999999999825;447.2649999999994;446.32500000001164;441.125;455.244999999999;446.1399999999994;443.4300000000003;485.91999999999825<br />
41;React-Redux-TodoMVC/Adding100Items/Async;21.19499999999971;17.854999999999563;18.285000000003492;35.544999999998254;189.95500000000175;27.829999999999927;45.93500000000131;23.00999999999476;20.25;20.22500000000582;26.75;48.29500000000189;23.854999999995925;57.48999999999796;58.42500000000291;20.610000000000127;17.8650000000016;25.535000000003492;26.360000000000582;31.895000000004075;38.89499999999998;29.784999999999854;72.77999999999884;29.99000000000524;18.00999999999476<br />
42;React-Redux-TodoMVC/Adding100Items;455.6149999999998;471.6750000000029;732.635000000002;480.9599999999991;639.6800000000076;508.5899999999997;494.90000000000146;459.79499999999825;466.7299999999959;476.86500000000524;473.31500000000005;482.84000000000015;510.5249999999942;500.2450000000026;502.55500000000757;458.3000000000002;462.27000000000044;479.20500000000175;473.625;478.2200000000157;480.02;485.02999999999884;518.9199999999983;473.42000000000553;503.929999999993<br />
43;React-Redux-TodoMVC/CompletingAllItems/Sync;586.6949999999997;655.2200000000012;728.6900000000023;610.3300000000017;619.2949999999983;603.2900000000004;701.1849999999977;594.1750000000029;610.1949999999997;607.3999999999942;614.3800000000001;690.5900000000001;660.6000000000058;602.8550000000032;619.5099999999948;608.9550000000004;612.0949999999975;620.5999999999985;606.1599999999962;602.7949999999983;609.75;609.8400000000001;615.5;622.4400000000023;691.9250000000029<br />
44;React-Redux-TodoMVC/CompletingAllItems/Async;19.159999999999854;14.919999999998254;20.37999999999738;21.19499999999971;72.06500000000233;30.22499999999991;17.139999999999418;19.06999999999971;22.095000000001164;330.41500000000815;25.050000000000182;41.955000000001746;56.71499999999651;77.06999999999971;68.59500000000116;22.360000000000127;15.390000000003056;17.700000000004366;28.55500000000029;17.75999999999476;61.07500000000027;29.12000000000262;142.95999999999913;29.160000000003492;20.264999999999418<br />
45;React-Redux-TodoMVC/CompletingAllItems;605.8549999999996;670.1399999999994;749.0699999999997;631.5250000000015;691.3600000000006;633.5150000000003;718.3249999999971;613.2450000000026;632.2900000000009;937.8150000000023;639.4300000000003;732.5450000000019;717.3150000000023;679.9250000000029;688.1049999999959;631.3150000000005;627.4850000000006;638.3000000000029;634.7149999999965;620.554999999993;670.8250000000003;638.9600000000028;758.4599999999991;651.6000000000058;712.1900000000023<br />
46;React-Redux-TodoMVC/DeletingItems/Sync;307.10000000000036;407.27999999999884;301.90499999999884;304.2299999999959;322.7699999999895;305.7249999999999;298.40499999999884;315.1650000000009;312.3950000000041;320.1100000000006;308.3699999999999;289.6349999999984;397.7549999999974;305.20500000000175;314.8099999999977;310.00999999999976;308.1949999999997;307.86999999999534;309.7900000000009;306.6399999999994;313.05999999999995;308.6100000000006;332.34999999999854;317.83000000000175;305.7399999999907<br />
47;React-Redux-TodoMVC/DeletingItems/Async;67.1550000000002;149.01000000000204;7.5;9.934999999997672;57.125;7.349999999999909;17.1150000000016;8.505000000004657;9.594999999993888;42.50500000000466;8.2800000000002;14.270000000000437;18.435000000004948;58.92500000000291;59.125;7.7849999999998545;6.400000000001455;6.360000000000582;18.169999999998254;8.095000000001164;20.855000000000018;8.270000000000437;7.049999999995634;8.789999999993597;15.194999999992433<br />
48;React-Redux-TodoMVC/DeletingItems;374.25500000000056;556.2900000000009;309.40499999999884;314.1649999999936;379.8949999999895;313.0749999999998;315.52000000000044;323.67000000000553;321.98999999999796;362.61500000000524;316.6500000000001;303.90499999999884;416.1900000000023;364.13000000000466;373.9349999999977;317.7949999999996;314.59500000000116;314.2299999999959;327.9599999999991;314.7350000000006;333.91499999999996;316.880000000001;339.3999999999942;326.61999999999534;320.9349999999831<br />
49;React-Redux-TodoMVC;1435.725;1698.1050000000032;1791.1100000000006;1426.6499999999942;1710.9349999999977;1455.1799999999998;1528.744999999999;1396.7100000000064;1421.0099999999948;1777.2950000000128;1429.3950000000004;1519.2900000000009;1644.0299999999988;1544.3000000000102;1564.5950000000012;1407.4100000000003;1404.3500000000022;1431.7350000000006;1436.2999999999956;1413.5100000000093;1484.7600000000002;1440.8700000000026;1616.7799999999916;1451.6400000000067;1537.0549999999785<br />
50;EmberJS-TodoMVC/Adding100Items/Sync;573.5649999999996;615.864999999998;579.5349999999962;588.4250000000029;588.3950000000041;594.2149999999997;588.3050000000003;572.5450000000055;598.5299999999988;583.4650000000111;587.6000000000004;574.5449999999983;591.25;584.4000000000015;592.8699999999953;610.5000000000005;593.7050000000017;583.4349999999977;608.7149999999965;594.8600000000006;614.6350000000002;580;640.8450000000012;602.8950000000041;592.4750000000058<br />
51;EmberJS-TodoMVC/Adding100Items/Async;19.300000000000182;33.465000000000146;44.48500000000058;26.875;56.979999999995925;36.18499999999949;19.534999999999854;70.46500000000378;21.580000000001746;77.61500000000524;75.49499999999989;24.81999999999971;19.07999999999447;21.80999999999767;25.05000000000291;34.89499999999953;21.354999999999563;21.19000000000233;22.205000000001746;30.74000000000524;42.600000000000364;20.724999999998545;25.910000000003492;23.610000000000582;69.11999999999534<br />
52;EmberJS-TodoMVC/Adding100Items;592.8649999999998;649.3299999999981;624.0199999999968;615.3000000000029;645.375;630.3999999999992;607.8400000000001;643.0100000000093;620.1100000000006;661.0800000000163;663.0950000000003;599.364999999998;610.3299999999945;606.2099999999991;617.9199999999983;645.395;615.0600000000013;604.625;630.9199999999983;625.6000000000058;657.2350000000006;600.7249999999985;666.7550000000047;626.5050000000047;661.5950000000012<br />
53;EmberJS-TodoMVC/CompletingAllItems/Sync;241.21999999999935;250.63500000000204;234.49499999999534;250.66999999999825;257.6600000000035;230.34499999999935;254.08000000000175;254.91999999999825;252.30999999999767;240.6750000000029;252.625;239.49499999999898;239.08499999999913;259.1800000000003;248.43000000000757;259.77000000000044;237.9350000000013;242.84999999999854;239.86000000000058;238.9100000000035;260.1950000000006;242.99499999999898;367.45000000000437;248.7800000000061;238.5500000000029<br />
54;EmberJS-TodoMVC/CompletingAllItems/Async;17.145000000000437;47.31000000000131;18.535000000003492;30.69999999999709;22.245000000009895;20.625;30.234999999996944;67.3599999999933;21.360000000000582;273.29499999999825;64.89000000000033;25.74499999999898;15.069999999999709;17.505000000004657;28.735000000000582;40.039999999999964;20.7599999999984;18.150000000001455;22.659999999996217;19.330000000001746;14.860000000000582;20.80500000000029;28.6050000000032;19.470000000001164;71.45999999999185<br />
55;EmberJS-TodoMVC/CompletingAllItems;258.3649999999998;297.94500000000335;253.02999999999884;281.36999999999534;279.9050000000134;250.96999999999935;284.3149999999987;322.27999999999156;273.66999999999825;513.9700000000012;317.5150000000003;265.23999999999796;254.15499999999884;276.68500000000495;277.16500000000815;299.8100000000004;258.6949999999997;261;262.5199999999968;258.24000000000524;275.0550000000012;263.7999999999993;396.05500000000757;268.2500000000073;310.00999999999476<br />
56;EmberJS-TodoMVC/DeletingItems/Sync;140.9949999999999;259.15999999999985;144.56500000000233;153.38999999999942;152.125;143.3099999999995;160.1150000000016;146.71500000000378;152.93499999999767;146.0500000000029;140.0699999999997;139.61999999999898;141.51499999999942;149.23500000000058;149.72499999999127;151.09999999999945;142.37000000000262;149.84500000000116;144.82999999999447;150.30499999999302;144.23499999999967;147.44000000000233;152.25;143.18999999999505;141.86000000000058<br />
57;EmberJS-TodoMVC/DeletingItems/Async;7.585000000000036;17.81999999999971;7.2700000000040745;7.105000000003201;6.654999999998836;7.539999999999964;6.444999999999709;75.83000000000175;7.494999999995343;7.30000000000291;39.409999999999854;6.2849999999998545;6.700000000004366;12.659999999996217;6.915000000008149;14.329999999999927;6.474999999998545;10.844999999993888;12.365000000005239;9.130000000004657;16.81500000000051;6.415000000000873;12.659999999996217;9.470000000001164;62.0399999999936<br />
58;EmberJS-TodoMVC/DeletingItems;148.57999999999993;276.97999999999956;151.8350000000064;160.49500000000262;158.77999999999884;150.84999999999945;166.5600000000013;222.54500000000553;160.42999999999302;153.35000000000582;179.47999999999956;145.90499999999884;148.21500000000378;161.8949999999968;156.63999999999942;165.42999999999938;148.84500000000116;160.68999999999505;157.1949999999997;159.43499999999767;161.05000000000018;153.8550000000032;164.90999999999622;152.65999999999622;203.89999999999418<br />
59;EmberJS-TodoMVC;999.8099999999995;1224.255000000001;1028.885000000002;1057.1650000000009;1084.0600000000122;1032.219999999998;1058.7150000000001;1187.8350000000064;1054.2099999999919;1328.4000000000233;1160.0900000000001;1010.5099999999948;1012.6999999999971;1044.7900000000009;1051.7250000000058;1110.6349999999998;1022.6000000000022;1026.314999999995;1050.6349999999948;1043.2750000000087;1093.340000000002;1018.380000000001;1227.7200000000084;1047.4150000000081;1175.50499999999<br />
60;EmberJS-Debug-TodoMVC/Adding100Items/Sync;1462.4049999999997;1356.1599999999999;1356.0099999999948;1344.5;1392.8500000000058;1335.9300000000003;1409.7899999999972;1513.6649999999936;1342.2000000000044;1743.5799999999872;1419.125;1340.6850000000013;1370.5449999999983;1414.4449999999997;1743.75;1373.9099999999999;1337.130000000001;1865.7150000000038;1688.5950000000012;1387.9399999999878;1354.625;1354.5300000000025;1356.2849999999962;1370.6949999999997;1499.270000000004<br />
61;EmberJS-Debug-TodoMVC/Adding100Items/Async;30.920000000000073;107.78499999999985;23.82499999999709;83.31499999999505;28.47500000000582;37.8100000000004;31.885000000002037;25.2300000000032;24.18499999999767;25.035000000003492;25.295000000000073;71.46500000000015;37.3949999999968;33.86000000000058;23.379999999990105;28.460000000000036;72.59500000000116;26.99500000000262;22.924999999995634;24.385000000009313;31.954999999999927;71.53999999999724;24.360000000000582;31.584999999999127;33.68499999999767<br />
62;EmberJS-Debug-TodoMVC/Adding100Items;1493.3249999999998;1463.9449999999997;1379.8349999999919;1427.814999999995;1421.3250000000116;1373.7400000000007;1441.6749999999993;1538.8949999999968;1366.385000000002;1768.6149999999907;1444.42;1412.1500000000015;1407.939999999995;1448.3050000000003;1767.12999999999;1402.37;1409.7250000000022;1892.7100000000064;1711.5199999999968;1412.324999999997;1386.58;1426.0699999999997;1380.6449999999968;1402.2799999999988;1532.9550000000017<br />
63;EmberJS-Debug-TodoMVC/CompletingAllItems/Sync;635.4200000000001;721.135000000002;633.885000000002;631.6300000000047;730.1199999999953;622.8800000000001;641.8450000000012;640.25;689.114999999998;642.8450000000012;648.4650000000001;978.3799999999974;629.5750000000044;644.114999999998;655.8399999999965;631.125;612.005000000001;675.560000000005;780.9150000000009;636.1300000000047;671.8450000000003;627.5750000000007;640.8349999999991;632.6600000000035;650.1050000000105<br />
64;EmberJS-Debug-TodoMVC/CompletingAllItems/Async;19.219999999999345;20.219999999997526;14.944999999999709;355.7850000000035;30.05999999999767;14.875;26.845000000001164;38.19999999999709;22.169999999998254;33.8350000000064;12.659999999999854;42.29500000000189;18.31500000000233;19.895000000004075;33.845000000001164;21.449999999999818;292.46000000000276;34.21499999999651;32.46499999999651;18.389999999999418;34.76500000000033;266.02000000000044;27.375;15.400000000001455;21.004999999990105<br />
65;EmberJS-Debug-TodoMVC/CompletingAllItems;654.6399999999994;741.3549999999996;648.8300000000017;987.4150000000081;760.179999999993;637.7550000000001;668.6900000000023;678.4499999999971;711.2849999999962;676.6800000000076;661.125;1020.6749999999993;647.8900000000067;664.010000000002;689.6849999999977;652.5749999999998;904.4650000000038;709.7750000000015;813.3799999999974;654.5200000000041;706.6100000000006;893.5950000000012;668.2099999999991;648.060000000005;671.1100000000006<br />
66;EmberJS-Debug-TodoMVC/DeletingItems/Sync;796.5100000000002;881.880000000001;839.4449999999997;838.7900000000009;804.2599999999948;822.0099999999993;1158.4050000000025;809.6849999999977;922.9850000000006;837.7299999999959;854.1950000000006;900.8899999999994;814.5950000000012;863.2050000000017;850.3199999999924;801.0650000000005;815.6500000000015;829.364999999998;851.0900000000038;821.9799999999959;838.9949999999999;820.0900000000001;999.2700000000041;793.5199999999968;826.6999999999971<br />
67;EmberJS-Debug-TodoMVC/DeletingItems/Async;8.329999999999927;7.240000000001601;18.540000000000873;9.509999999994761;9.77499999999418;16.68499999999949;15.830000000001746;21.985000000000582;14.779999999998836;9.714999999996508;10.454999999999927;7.049999999999272;16.515000000006694;24.239999999997963;9.764999999999418;8.534999999999854;10.385000000002037;8.904999999998836;7.25;18.705000000001746;10.969999999999345;10.095000000001164;176.27500000000146;10.779999999998836;19.97500000000582<br />
68;EmberJS-Debug-TodoMVC/DeletingItems;804.8400000000001;889.1200000000026;857.9850000000006;848.2999999999956;814.0349999999889;838.6949999999988;1174.2350000000042;831.6699999999983;937.7649999999994;847.4449999999924;864.6500000000005;907.9399999999987;831.1100000000079;887.4449999999997;860.0849999999919;809.6000000000004;826.0350000000035;838.2699999999968;858.3400000000038;840.6849999999977;849.9649999999992;830.1850000000013;1175.5450000000055;804.2999999999956;846.6750000000029<br />
69;EmberJS-Debug-TodoMVC;2952.8049999999994;3094.420000000002;2886.649999999994;3263.529999999999;2995.5399999999936;2850.1899999999996;3284.600000000006;3049.014999999992;3015.4349999999977;3292.7399999999907;2970.1950000000006;3340.7649999999994;2886.9400000000096;2999.760000000002;3316.8999999999796;2864.545;3140.2250000000095;3440.7550000000047;3383.239999999998;2907.529999999999;2943.1549999999997;3149.850000000002;3224.4000000000015;2854.6399999999994;3050.7400000000052<br />
70;BackboneJS-TodoMVC/Adding100Items/Sync;178.04500000000007;175.88999999999942;185.27500000000146;183.20500000000175;172.60999999998603;177.9300000000003;190.15000000000146;193.98500000000058;174.48500000000058;186.7850000000035;190.6900000000005;189.8199999999997;181.61499999999796;184.1600000000035;175.14999999999418;184.60499999999956;190.16500000000087;185.9300000000003;187.65000000000146;195.61500000000524;180.80499999999847;186.12999999999738;186.80999999999767;184.83499999999913;183.89000000001397<br />
71;BackboneJS-TodoMVC/Adding100Items/Async;33.94000000000051;35.13999999999942;35.520000000004075;27.264999999999418;34.729999999995925;25.155000000000655;30.99500000000262;28.44499999999971;40.720000000001164;44.03500000000349;29.139999999999418;36.909999999999854;23.715000000003783;37.43499999999767;42.38999999999942;29.44499999999971;45.95999999999913;39.51000000000204;38.145000000004075;31.460000000006403;25.840000000000146;37.345000000001164;31.81999999999971;24.139999999999418;35.544999999998254<br />
72;BackboneJS-TodoMVC/Adding100Items;211.98500000000058;211.02999999999884;220.79500000000553;210.47000000000116;207.33999999998196;203.08500000000095;221.14500000000407;222.4300000000003;215.20500000000175;230.82000000000698;219.82999999999993;226.72999999999956;205.33000000000175;221.59500000000116;217.5399999999936;214.04999999999927;236.125;225.44000000000233;225.79500000000553;227.07500000001164;206.64499999999862;223.47499999999854;218.62999999999738;208.97499999999854;219.43500000001222<br />
73;BackboneJS-TodoMVC/CompletingAllItems/Sync;78.02499999999964;77.74499999999898;79.38500000000204;80.9800000000032;77.71500000001106;73.79500000000007;78.48500000000058;83.44999999999709;78.04999999999563;78.29499999999825;80.26500000000124;83.8650000000016;75.65999999999622;79.08000000000175;76.41999999999825;76.4950000000008;81.92499999999927;92.11000000000058;82.89999999999418;80.04499999999825;82.36499999999978;83.08499999999913;75.66000000000349;74.625;80.64500000000407<br />
74;BackboneJS-TodoMVC/CompletingAllItems/Async;22.94499999999971;51.60499999999956;59.74000000000524;43.06000000000495;45.23999999999069;29.829999999999927;32.17000000000189;26.69999999999709;49.099999999998545;48.94999999999709;24.219999999999345;40.69499999999971;141.06500000000233;20.9800000000032;47.43499999999767;32.6150000000016;51.91500000000087;31.005000000004657;29.375;33.85000000000582;28.93000000000029;33.27000000000044;23.090000000003783;38.04000000000087;36.25<br />
75;BackboneJS-TodoMVC/CompletingAllItems;100.96999999999935;129.34999999999854;139.12500000000728;124.04000000000815;122.95500000000175;103.625;110.65500000000247;110.14999999999418;127.14999999999418;127.24499999999534;104.48500000000058;124.56000000000131;216.72499999999854;100.06000000000495;123.85499999999593;109.1100000000024;133.84000000000015;123.11500000000524;112.27499999999418;113.89500000000407;111.29500000000007;116.35499999999956;98.75000000000728;112.66500000000087;116.89500000000407<br />
76;BackboneJS-TodoMVC/DeletingAllItems/Sync;80.18000000000029;79.99500000000262;90.93499999999767;88.20500000000175;87.04499999999825;77.03999999999905;79.93000000000029;91.87000000000262;86.34500000000116;86.5399999999936;92.58500000000095;93.15999999999985;79.00500000000466;85.45999999999913;78.54999999998836;83.94000000000051;81.30500000000029;94.04500000000553;84.15499999999884;95.00999999999476;86.03999999999905;86.375;87.94999999999709;90.36499999999796;92.02000000000407<br />
77;BackboneJS-TodoMVC/DeletingAllItems/Async;11.604999999999563;11.270000000000437;12.105000000003201;19.189999999995052;26.95999999999185;15.539999999999054;10.014999999999418;13.319999999999709;37.6449999999968;27.870000000009895;8.25;35.42000000000189;31.68000000000029;10.42000000000553;28.11500000000524;17.485000000000582;7.31000000000131;32.56999999999971;9.349999999998545;8.839999999996508;12.854999999999563;13.489999999997963;11.235000000000582;34.31999999999971;10.94999999999709<br />
78;BackboneJS-TodoMVC/DeletingAllItems;91.78499999999985;91.26500000000306;103.04000000000087;107.3949999999968;114.0049999999901;92.57999999999811;89.94499999999971;105.19000000000233;123.98999999999796;114.41000000000349;100.83500000000095;128.58000000000175;110.68500000000495;95.88000000000466;106.6649999999936;101.42500000000109;88.6150000000016;126.61500000000524;93.50499999999738;103.84999999999127;98.89499999999862;99.86499999999796;99.18499999999767;124.68499999999767;102.97000000000116<br />
79;BackboneJS-TodoMVC;404.7399999999998;431.64500000000044;462.9600000000137;441.9050000000061;444.2999999999738;399.28999999999905;421.74500000000626;437.7699999999968;466.3449999999939;472.4750000000058;425.15000000000146;479.8700000000026;532.7400000000052;417.53500000001077;448.0599999999831;424.58500000000276;458.58000000000175;475.1700000000128;431.5749999999971;444.820000000007;416.8349999999973;439.69499999999607;416.5650000000023;446.3249999999971;439.30000000001746<br />
80;AngularJS-TodoMVC/Adding100Items/Sync;534.8099999999995;542.2049999999981;530.8900000000067;512.1500000000015;552.2149999999965;522.1750000000011;534.4650000000001;548.7200000000012;528.864999999998;521.6599999999889;551.2250000000004;529.6650000000009;633.2699999999968;536.8500000000058;533.0899999999965;545.8649999999998;543.5349999999999;541.6599999999962;542.6800000000003;579.1549999999988;521.4400000000005;556.6999999999971;521.3050000000003;542.9449999999997;535.8399999999965<br />
81;AngularJS-TodoMVC/Adding100Items/Async;26.270000000000437;24.110000000000582;25.56999999999971;33.25999999999476;34.43000000000757;26.69000000000051;67.20000000000073;24.025000000001455;72.19000000000233;25.010000000009313;31.30500000000029;32.42500000000291;22.025000000001455;33.61000000000058;25.81500000000233;31.75;24.854999999999563;25.93499999999767;24.529999999998836;25.955000000001746;32.43499999999949;34.585000000002765;33.154999999998836;24.69499999999971;23.85000000000582<br />
82;AngularJS-TodoMVC/Adding100Items;561.0799999999999;566.3149999999987;556.4600000000064;545.4099999999962;586.6450000000041;548.8650000000016;601.6650000000009;572.7450000000026;601.0550000000003;546.6699999999983;582.5300000000007;562.0900000000038;655.2949999999983;570.4600000000064;558.9049999999988;577.6149999999998;568.3899999999994;567.5949999999939;567.2099999999991;605.1100000000006;553.875;591.2849999999999;554.4599999999991;567.6399999999994;559.6900000000023<br />
83;AngularJS-TodoMVC/CompletingAllItems/Sync;137.70999999999913;129.64500000000044;125.17499999999563;123.04000000000087;136.40000000000873;125.68499999999949;138.84000000000015;128.31499999999505;127.34499999999389;134.2149999999965;126.07500000000073;123.875;130.29499999999825;122.90500000000611;128.7899999999936;133.15500000000065;162.12000000000262;126.34000000000378;127.30000000000291;126.90499999999884;123.61000000000058;130.1349999999984;124.62000000000262;129.3050000000003;135.80499999999302<br />
84;AngularJS-TodoMVC/CompletingAllItems/Async;29.600000000000364;17.400000000001455;15.165000000000873;26.075000000004366;18.654999999998836;19.395000000000437;80.04000000000087;28.639999999999418;184.66500000000087;15.104999999995925;16.974999999998545;21.104999999999563;37.30000000000291;27.75499999999738;15.955000000001746;17.655000000000655;21.125;19.79500000000553;21.015000000006694;16.68499999999767;32.51500000000124;29.49499999999898;17.904999999998836;19.845000000001164;21.839999999996508<br />
85;AngularJS-TodoMVC/CompletingAllItems;167.3099999999995;147.0450000000019;140.3399999999965;149.11500000000524;155.05500000000757;145.07999999999993;218.88000000000102;156.95499999999447;312.00999999999476;149.31999999999243;143.04999999999927;144.97999999999956;167.59500000000116;150.6600000000035;144.74499999999534;150.8100000000013;183.24500000000262;146.1350000000093;148.3150000000096;143.5899999999965;156.12500000000182;159.62999999999738;142.52500000000146;149.15000000000146;157.64499999998952<br />
86;AngularJS-TodoMVC/DeletingAllItems/Sync;296.66999999999825;300.005000000001;301.68999999999505;311.7450000000026;432.0249999999942;296.8099999999995;302.66999999999825;321.77999999999884;324.04499999999825;310.36500000000524;307.0849999999991;306.28499999999985;422.8050000000003;300.15000000000146;442.3099999999977;517.5999999999985;324.90499999999884;309.09999999999854;309.02999999999884;300.36500000000524;360.6700000000001;313.7549999999974;306.8349999999991;418.5650000000023;318.1750000000029<br />
87;AngularJS-TodoMVC/DeletingAllItems/Async;37.100000000000364;15.204999999998108;15.384999999994761;22.544999999998254;16.354999999995925;19.390000000001237;44.340000000000146;12.92500000000291;23.525000000001455;16.220000000001164;17.954999999999927;12.794999999998254;17.290000000000873;23.50499999999738;20.405000000013388;17.74499999999898;13.965000000000146;20.31999999999971;17.039999999993597;23.955000000001746;17.079999999999927;28.770000000000437;23.06500000000233;15.509999999994761;15.360000000000582<br />
88;AngularJS-TodoMVC/DeletingAllItems;333.7699999999986;315.2099999999991;317.0749999999898;334.2900000000009;448.3799999999901;316.2000000000007;347.0099999999984;334.70500000000175;347.5699999999997;326.5850000000064;325.03999999999905;319.0799999999981;440.09500000000116;323.65499999999884;462.71500000001106;535.3449999999975;338.869999999999;329.41999999999825;326.06999999999243;324.320000000007;377.75;342.5249999999978;329.90000000000146;434.0749999999971;333.5350000000035<br />
89;AngularJS-TodoMVC;1062.159999999998;1028.5699999999997;1013.8749999999927;1028.8150000000023;1190.0800000000017;1010.1450000000023;1167.5550000000003;1064.4049999999988;1260.6349999999948;1022.5749999999971;1050.619999999999;1026.1500000000015;1262.9850000000006;1044.7750000000087;1166.3650000000052;1263.7699999999986;1090.505000000001;1043.1500000000015;1041.5950000000012;1073.020000000004;1087.7500000000018;1093.439999999995;1026.885000000002;1150.864999999998;1050.8699999999953<br />
90;Angular2-TypeScript-TodoMVC/Adding100Items/Sync;151.8700000000008;165.75500000000102;167.17499999999563;156.56500000000233;166.3649999999907;177.4499999999989;159.91499999999724;168.3249999999971;155.2850000000035;161.69499999999243;157.34500000000116;156;170.5699999999997;159.18999999999505;162.8350000000064;178.82999999999993;165.00499999999738;173.05999999999767;166.6999999999971;171.56500000000233;156.51999999999862;152.53499999999985;156.3550000000032;167.18999999999505;162.31000000001222<br />
91;Angular2-TypeScript-TodoMVC/Adding100Items/Async;21.670000000000073;30.794999999998254;15.560000000004948;27.5;26.42500000000291;49.414999999999054;18.985000000000582;27.69499999999971;14.845000000001164;30.464999999996508;18.549999999999272;31.69499999999971;26.955000000001746;18.145000000004075;32.75999999999476;19.350000000000364;25.514999999999418;26.580000000001746;21.56999999999971;19.07499999999709;17.039999999999054;16.25500000000102;15.489999999997963;15.854999999995925;17.90000000000873<br />
92;Angular2-TypeScript-TodoMVC/Adding100Items;173.54000000000087;196.54999999999927;182.73500000000058;184.06500000000233;192.7899999999936;226.86499999999796;178.89999999999782;196.0199999999968;170.13000000000466;192.15999999998894;175.89500000000044;187.6949999999997;197.52500000000146;177.33499999999913;195.59500000000116;198.1800000000003;190.5199999999968;199.63999999999942;188.2699999999968;190.63999999999942;173.55999999999767;168.79000000000087;171.84500000000116;183.04499999999098;180.21000000002095<br />
93;Angular2-TypeScript-TodoMVC/CompletingAllItems/Sync;24.655000000000655;26.37000000000262;26.215000000003783;24.525000000001455;25.730000000010477;24.19999999999891;25.665000000000873;25.654999999998836;25.139999999999418;27;27.145000000000437;30.360000000000582;26.20499999999447;29.24000000000524;28.27499999999418;26.045000000000073;27.00499999999738;26.205000000001746;25.409999999996217;26.82499999999709;24.9950000000008;25.18500000000131;25.094999999993888;26.334999999999127;26.739999999990687<br />
94;Angular2-TypeScript-TodoMVC/CompletingAllItems/Async;14.154999999998836;22.1150000000016;15.710000000006403;9.665000000000873;15.805000000007567;21.82499999999891;14.25499999999738;9.875;18.87000000000262;19.644999999989523;16.420000000000073;9.2400000000016;11.209999999999127;24.24000000000524;13.77499999999418;23.86499999999978;24.169999999998254;18.32499999999709;24.56999999999971;19.154999999998836;18.485000000000582;19.010000000002037;19.794999999998254;28.970000000001164;14.85000000000582<br />
95;Angular2-TypeScript-TodoMVC/CompletingAllItems;38.80999999999949;48.48500000000422;41.925000000010186;34.19000000000233;41.535000000018044;46.02499999999782;39.919999999998254;35.529999999998836;44.01000000000204;46.64499999998952;43.56500000000051;39.60000000000218;37.4149999999936;53.48000000001048;42.04999999998836;49.909999999999854;51.174999999995634;44.529999999998836;49.979999999995925;45.979999999995925;43.48000000000138;44.19500000000335;44.88999999999214;55.30500000000029;41.58999999999651<br />
96;Angular2-TypeScript-TodoMVC/DeletingItems/Sync;62.524999999999636;62.18999999999869;57.23500000000058;51.775000000001455;61.55999999999767;51.585000000000946;60.965000000000146;56.98500000000058;55.200000000004366;63.029999999998836;55.98999999999978;54.030000000002474;68.03500000000349;54.26499999999942;55.20999999999185;62.225000000000364;64.97999999999956;55.41000000000349;63.70999999999913;60.50500000000466;56.469999999999345;61.86999999999898;59.18000000000029;55.23999999999796;55.00500000000466<br />
97;Angular2-TypeScript-TodoMVC/DeletingItems/Async;20.05999999999949;20.399999999997817;9.549999999995634;7.2849999999962165;19.910000000003492;10.739999999999782;8.825000000000728;10.780000000006112;8.434999999997672;9.539999999993597;6.8399999999983265;20.95499999999811;19.229999999995925;7.059999999997672;16.729999999995925;10.56500000000051;20.49499999999898;37.36499999999796;13.785000000003492;10.460000000006403;10.715000000000146;9.3849999999984;9.380000000004657;6.169999999998254;6.8549999999959255<br />
98;Angular2-TypeScript-TodoMVC/DeletingItems;82.58499999999913;82.58999999999651;66.78499999999622;59.05999999999767;81.47000000000116;62.32500000000073;69.79000000000087;67.7650000000067;63.63500000000204;72.56999999999243;62.82999999999811;74.98500000000058;87.26499999999942;61.32499999999709;71.93999999998778;72.79000000000087;85.47499999999854;92.77500000000146;77.49500000000262;70.96500000001106;67.18499999999949;71.25499999999738;68.56000000000495;61.40999999999622;61.86000000000058<br />
99;Angular2-TypeScript-TodoMVC;294.9349999999995;327.625;291.445000000007;277.3150000000023;315.7950000000128;335.2149999999965;288.60999999999694;299.3150000000023;277.77500000000873;311.3749999999709;282.28999999999905;302.2800000000025;322.20499999999447;292.1400000000067;309.5849999999773;320.880000000001;327.169999999991;336.9449999999997;315.74499999999534;307.5850000000064;284.22499999999854;284.2400000000016;285.29499999999825;299.7599999999875;283.66000000001804<br />
100;VueJS-TodoMVC/Adding100Items/Sync;21.265000000001237;24.090000000000146;21.3949999999968;22.220000000001164;21.464999999996508;20.780000000000655;25.360000000000582;22.43000000000029;21.150000000001455;22.260000000009313;21.715000000000146;22.93499999999767;22.455000000001746;21.255000000004657;24.639999999999418;21.19499999999971;21.6349999999984;20.904999999998836;21.30999999999767;21.86500000000524;21.204999999999927;21.600000000002183;22.474999999998545;22.709999999999127;22.94999999999709<br />
101;VueJS-TodoMVC/Adding100Items/Async;98.95000000000073;100.3650000000016;91.74500000000262;102.06999999999971;95.78500000000349;117.88500000000022;111.46500000000015;105.63999999999942;104.54999999999563;98.93499999999767;105.22500000000036;107.55999999999767;123.34000000000378;94.50499999999738;114.52000000000407;94.4950000000008;112.09500000000116;134.85499999999593;104.92500000000291;95.13000000000466;95.39499999999862;91.72000000000116;95.15499999999884;104.37999999999738;105.38999999999942<br />
102;VueJS-TodoMVC/Adding100Items;120.21500000000196;124.45500000000175;113.13999999999942;124.29000000000087;117.25;138.66500000000087;136.82500000000073;128.0699999999997;125.69999999999709;121.19500000000698;126.94000000000051;130.49499999999534;145.79500000000553;115.76000000000204;139.1600000000035;115.69000000000051;133.72999999999956;155.75999999999476;126.23500000000058;116.9950000000099;116.59999999999854;113.32000000000335;117.62999999999738;127.08999999999651;128.3399999999965<br />
103;VueJS-TodoMVC/CompletingAllItems/Sync;7.700000000000728;7.920000000001892;8.084999999999127;7.904999999998836;7.875;7.770000000000437;8.470000000001164;8.239999999997963;9.080000000001746;9.32499999999709;8.199999999998909;11.145000000000437;8.694999999999709;8.05000000000291;7.955000000001746;8.284999999999854;8.755000000001019;13.940000000002328;7.915000000000873;7.724999999991269;8.764999999999418;7.67500000000291;8.230000000003201;9.794999999998254;7.975000000005821<br />
104;VueJS-TodoMVC/CompletingAllItems/Async;76.39500000000044;76.3849999999984;77.89500000000407;74.52999999999884;80.47000000000116;70.84499999999935;83.55500000000029;82.67999999999302;70.48500000000058;89.43000000000757;87.96999999999935;65.97999999999956;69.34500000000116;76.38999999999942;73.79499999999825;77.125;78.13999999999942;70.52500000000146;109.8949999999968;74.17999999999302;90.55999999999949;73.16500000000087;87.32499999999709;74.79499999999825;101.33999999999651<br />
105;VueJS-TodoMVC/CompletingAllItems;84.09500000000116;84.30500000000029;85.9800000000032;82.43499999999767;88.34500000000116;78.61499999999978;92.02500000000146;90.91999999999098;79.56500000000233;98.75500000000466;96.16999999999825;77.125;78.04000000000087;84.44000000000233;81.75;85.40999999999985;86.89500000000044;84.46500000000378;117.80999999999767;81.90499999998428;99.32499999999891;80.84000000000378;95.55500000000029;84.58999999999651;109.31500000000233<br />
106;VueJS-TodoMVC/DeletingAllItems/Sync;11.359999999998763;17.534999999999854;14.515000000006694;18.864999999997963;12.355000000010477;15.965000000000146;23.279999999998836;12.25;12.775000000001455;10.629999999990105;12.2549999999992;12.534999999999854;10.784999999996217;12.784999999996217;18.69000000000233;10.43499999999949;11.56499999999869;10.569999999999709;11.060000000004948;10.200000000011642;17.375;13.044999999998254;11.74500000000262;14.735000000000582;10.460000000006403<br />
107;VueJS-TodoMVC/DeletingAllItems/Async;22.30999999999949;22.849999999998545;22.139999999999418;22.93000000000029;21.92499999998836;23.644999999998618;27.610000000000582;22.839999999996508;36.18499999999767;23.47499999999127;24.05500000000029;40.654999999998836;27.025000000001455;24.885000000002037;34.23500000000058;24.8799999999992;30.8849999999984;22.290000000000873;27.104999999995925;26.569999999992433;27.834999999999127;21.599999999998545;26.375;23.875;22.519999999989523<br />
108;VueJS-TodoMVC/DeletingAllItems;33.669999999998254;40.3849999999984;36.65500000000611;41.794999999998254;34.279999999998836;39.60999999999876;50.88999999999942;35.08999999999651;48.95999999999913;34.10499999998137;36.30999999999949;53.18999999999869;37.80999999999767;37.669999999998254;52.92500000000291;35.31499999999869;42.44999999999709;32.86000000000058;38.16500000000087;36.770000000004075;45.20999999999913;34.6449999999968;38.12000000000262;38.61000000000058;32.979999999995925<br />
109;VueJS-TodoMVC;237.98000000000138;249.14500000000044;235.77500000000873;248.5199999999968;239.875;256.8899999999994;279.7400000000016;254.0799999999872;254.22499999999854;254.05499999999302;259.41999999999825;260.80999999999403;261.6450000000041;237.87000000000262;273.8350000000064;236.41499999999905;263.0749999999971;273.0849999999991;282.2099999999991;235.66999999999825;261.1349999999966;228.80500000000393;251.3050000000003;250.2899999999936;270.63499999999476<br />
110;jQuery-TodoMVC/Adding100Items/Sync;364.2950000000001;372.13500000000204;326.41999999999825;343.97499999999854;346.06999999999243;349.35000000000036;343.2400000000016;347.3249999999971;343.7099999999991;337.55500000000757;401.91499999999905;339.9850000000006;330.63499999999476;344.8249999999971;339.3099999999977;338.9499999999989;355.02000000000044;356.1800000000003;346.34999999999854;500.0850000000064;334.15999999999985;368.5849999999991;336.5650000000023;338.5900000000038;462.3350000000064<br />
111;jQuery-TodoMVC/Adding100Items/Async;25.354999999999563;19.159999999999854;52.104999999995925;18.764999999999418;28.97500000000582;35.68000000000029;29.465000000000146;24.200000000004366;28.640000000006694;35.81500000000233;21.625;18.149999999997817;18.05000000000291;26.084999999999127;26.889999999999418;48;23.020000000000437;18.464999999996508;28.340000000003783;19.07499999999709;37.23499999999876;18.915000000000873;45.6449999999968;21.335000000006403;19.710000000006403<br />
112;jQuery-TodoMVC/Adding100Items;389.64999999999964;391.2950000000019;378.5249999999942;362.73999999999796;375.04499999999825;385.03000000000065;372.70500000000175;371.52500000000146;372.3500000000058;373.3700000000099;423.53999999999905;358.1349999999984;348.6849999999977;370.9099999999962;366.1999999999971;386.9499999999989;378.0400000000009;374.6449999999968;374.6900000000023;519.1600000000035;371.3949999999986;387.5;382.2099999999991;359.9250000000102;482.0450000000128<br />
113;jQuery-TodoMVC/CompletingAllItems/Sync;656.9349999999995;604.6800000000003;593.7649999999994;597.5199999999968;621.6349999999948;606.6700000000001;601.1849999999977;600.9549999999945;617.3400000000038;606.3999999999942;579.9499999999989;576.2250000000022;583.4550000000017;590.2900000000009;653.4099999999889;830.505000000001;640.1500000000015;598.9599999999991;602.9200000000055;594.8450000000012;848.0150000000012;586.7950000000019;609.2299999999959;620.6150000000052;585.179999999993<br />
114;jQuery-TodoMVC/CompletingAllItems/Async;23.94499999999971;31.025000000001455;76.33999999999651;20.334999999999127;19.030000000013388;32.43000000000029;34.18999999999869;22.80000000000291;28.0199999999968;36.4600000000064;19.225000000000364;18.49499999999898;18.195000000006985;32.73500000000058;18.419999999998254;18.405000000000655;17.919999999998254;27.974999999998545;56.395000000004075;18.630000000004657;26.270000000000437;19.474999999998545;70.51499999999942;21.81999999999971;17.55000000000291<br />
115;jQuery-TodoMVC/CompletingAllItems;680.8799999999992;635.7050000000017;670.1049999999959;617.8549999999959;640.6650000000081;639.1000000000004;635.3749999999964;623.7549999999974;645.3600000000006;642.8600000000006;599.1749999999993;594.7200000000012;601.6500000000087;623.0250000000015;671.8299999999872;848.9100000000017;658.0699999999997;626.9349999999977;659.3150000000096;613.4750000000058;874.2850000000017;606.2700000000004;679.7449999999953;642.435000000005;602.7299999999959<br />
116;jQuery-TodoMVC/DeletingAllItems/Sync;301.5;298.84999999999854;298.86999999999534;306.2150000000038;366.2350000000006;317.85499999999956;339.4350000000013;305.125;326.0599999999977;317.9600000000064;296.65999999999985;299.02999999999884;299.00999999999476;351.54500000000553;327.0199999999895;299.0400000000009;300.0750000000007;311.8700000000026;353.4599999999991;318;407.8850000000002;296.5599999999977;319.70499999999447;381.875;307.4349999999977<br />
117;jQuery-TodoMVC/DeletingAllItems/Async;8.530000000000655;10.094999999997526;56.26000000000204;8.590000000003783;12.694999999992433;5.755000000001019;10.030000000002474;7.915000000000873;5.889999999999418;16.430000000007567;7.7849999999998545;6.005000000001019;9.404999999998836;17.755000000004657;10.75;6.3700000000008;10.375;15.770000000004075;6.629999999997381;6.44999999999709;11.139999999999418;13.659999999999854;57.419999999998254;6.099999999998545;10.599999999991269<br />
118;jQuery-TodoMVC/DeletingAllItems;310.03000000000065;308.94499999999607;355.1299999999974;314.80500000000757;378.929999999993;323.6100000000006;349.4650000000038;313.0400000000009;331.9499999999971;334.39000000001397;304.4449999999997;305.03499999999985;308.4149999999936;369.3000000000102;337.7699999999895;305.4100000000017;310.4500000000007;327.6400000000067;360.0899999999965;324.4499999999971;419.02499999999964;310.2199999999975;377.1249999999927;387.97499999999854;318.03499999998894<br />
119;jQuery-TodoMVC;1380.5599999999995;1335.9449999999997;1403.7599999999875;1295.4000000000015;1394.6399999999994;1347.7400000000016;1357.545000000002;1308.3199999999997;1349.6600000000035;1350.6200000000244;1327.159999999998;1257.8899999999994;1258.75;1363.2350000000079;1375.7999999999738;1541.2700000000023;1346.5600000000013;1329.2200000000012;1394.0950000000084;1457.0850000000064;1664.705;1303.989999999998;1439.0799999999872;1390.3350000000137;1402.8099999999977<br />
120;Preact-TodoMVC/Adding100Items/Sync;15.204999999999927;24.610000000000582;24.43000000000029;22.330000000001746;26.70999999999185;15.7549999999992;24.389999999999418;20.215000000003783;23.49000000000524;15.22500000000582;14.985000000000582;15.555000000000291;18.325000000004366;25.8949999999968;14.770000000004075;15.525000000001455;21.465000000000146;15.970000000001164;18.94000000000233;16.019999999989523;15.725000000000364;25.885000000002037;14.945000000006985;14.875;24.110000000000582<br />
121;Preact-TodoMVC/Adding100Items/Async;58.0049999999992;58.48999999999796;108.47999999999593;60.31499999999505;62.870000000009895;63.85499999999956;57.7599999999984;63.88500000000204;81.09999999999854;63.2899999999936;62.034999999999854;73.15000000000146;77.92500000000291;60.73500000000058;58.53499999998894;58.33499999999913;64.88500000000204;68.36000000000058;61.92000000000553;76.46499999999651;88.75;63.775000000001455;111.65000000000146;71.19499999999971;88.68499999999767<br />
122;Preact-TodoMVC/Adding100Items;73.20999999999913;83.09999999999854;132.90999999999622;82.6449999999968;89.58000000000175;79.60999999999876;82.14999999999782;84.10000000000582;104.59000000000378;78.51499999999942;77.02000000000044;88.70500000000175;96.25000000000728;86.62999999999738;73.30499999999302;73.86000000000058;86.35000000000218;84.33000000000175;80.86000000000786;92.48499999998603;104.47500000000036;89.66000000000349;126.59500000000844;86.06999999999971;112.79499999999825<br />
123;Preact-TodoMVC/CompletingAllItems/Sync;9.610000000000582;9.340000000000146;9.404999999998836;11.009999999994761;10.214999999996508;11.520000000000437;10.18999999999869;9.444999999999709;10.395000000004075;10.845000000001164;10.354999999999563;10.075000000000728;10.494999999995343;10.235000000000582;9.375;10.18999999999869;9.950000000000728;9.764999999999418;9.989999999997963;9.940000000002328;12.574999999998909;9.354999999999563;9.480000000003201;11.569999999999709;12.665000000008149<br />
124;Preact-TodoMVC/CompletingAllItems/Async;35.335000000000946;30.215000000000146;32.42500000000291;43.705000000001746;33.904999999998836;50.94499999999971;42.91500000000087;30.9800000000032;33.31500000000233;35.13499999999476;32.76999999999862;33.340000000000146;30.229999999995925;38.93499999999767;41.625;31.44000000000051;36.75;37.83499999999913;33.17500000000291;27.83499999999185;32.849999999998545;30.600000000002183;28.55999999999767;33.00500000000466;30.19000000000233<br />
125;Preact-TodoMVC/CompletingAllItems;44.94500000000153;39.55500000000029;41.830000000001746;54.71499999999651;44.11999999999534;62.465000000000146;53.10499999999956;40.42500000000291;43.7100000000064;45.979999999995925;43.12499999999818;43.41500000000087;40.72499999999127;49.169999999998254;51;41.6299999999992;46.70000000000073;47.599999999998545;43.16500000000087;37.77499999999418;45.42499999999745;39.955000000001746;38.04000000000087;44.575000000004366;42.85500000001048<br />
126;Preact-TodoMVC/DeletingItems/Sync;12.155000000000655;6.9099999999998545;6.889999999999418;6.150000000001455;7.319999999992433;14.270000000000437;14.140000000003056;8.020000000004075;7.344999999993888;7.7850000000034925;12.819999999999709;7.31499999999869;7.309999999997672;8.909999999996217;11.135000000009313;6.424999999999272;6.595000000001164;6.290000000000873;12.190000000002328;6.7850000000034925;7.014999999999418;6.229999999999563;6.3950000000040745;10.594999999993888;8.770000000004075<br />
127;Preact-TodoMVC/DeletingItems/Async;12.410000000001673;17.700000000000728;67.28000000000611;16.655000000006112;18.470000000001164;17.704999999999927;28.700000000000728;15.00499999999738;16.50499999999738;19.535000000003492;14.350000000000364;15.364999999997963;19.150000000001455;16.205000000001746;11;12.385000000000218;11.770000000000437;12.12000000000262;20.299999999995634;6.809999999997672;6.764999999999418;16.030000000002474;6.440000000002328;11.989999999997963;18.69999999999709<br />
128;Preact-TodoMVC/DeletingItems;24.56500000000233;24.610000000000582;74.17000000000553;22.805000000007567;25.789999999993597;31.975000000000364;42.84000000000378;23.025000000001455;23.84999999999127;27.320000000006985;27.170000000000073;22.679999999996653;26.459999999999127;25.114999999997963;22.135000000009313;18.80999999999949;18.3650000000016;18.410000000003492;32.48999999999796;13.595000000001164;13.779999999998836;22.260000000002037;12.835000000006403;22.58499999999185;27.470000000001164<br />
129;Preact-TodoMVC;142.72000000000298;147.26499999999942;248.9100000000035;160.16500000000087;159.4899999999907;174.04999999999927;178.09500000000116;147.5500000000102;172.15000000000146;151.81500000000233;147.3149999999987;154.79999999999927;163.43499999999767;160.9149999999936;146.44000000000233;134.29999999999927;151.4150000000045;150.34000000000378;156.5150000000067;143.85499999998137;163.67999999999665;151.87500000000728;177.47000000001572;153.22999999999593;183.1200000000099<br />
130;Inferno-TodoMVC/Adding100Items/Sync;126.0099999999984;133.8100000000013;139.45499999999447;128.51000000000204;132.47500000000582;135.21999999999935;144.1349999999984;136.52000000000407;130.47000000000116;137.07000000000698;132.65999999999985;134.09999999999854;133.9449999999997;142.1449999999968;145.49000000000524;142.53499999999985;128.76500000000306;139.93499999999767;138.20999999999913;131.15499999999884;130.96500000000015;127.7300000000032;146.9300000000003;136.5300000000061;132<br />
131;Inferno-TodoMVC/Adding100Items/Async;16.965000000000146;34.715000000000146;36.424999999995634;21.299999999995634;18.195000000006985;22.854999999999563;27.040000000000873;39.15999999999622;30.614999999997963;32.354999999995925;33.590000000000146;30.589999999996508;29.345000000001164;21.709999999999127;19.389999999999418;25.73999999999978;17.19499999999971;18.125;34.23999999999796;27.504999999990105;27.75;18.724999999998545;17.3949999999968;17.034999999996217;30.10000000000582<br />
132;Inferno-TodoMVC/Adding100Items;142.97499999999854;168.52500000000146;175.8799999999901;149.80999999999767;150.6700000000128;158.0749999999989;171.17499999999927;175.6800000000003;161.08499999999913;169.4250000000029;166.25;164.68999999999505;163.29000000000087;163.85499999999593;164.88000000000466;168.27499999999964;145.96000000000276;158.05999999999767;172.4499999999971;158.65999999998894;158.71500000000015;146.45500000000175;164.3249999999971;153.56500000000233;162.10000000000582<br />
133;Inferno-TodoMVC/CompletingAllItems/Sync;144.375;160.22000000000116;173.22000000000116;152.77999999999884;156.7100000000064;154.8150000000005;129.1899999999987;154.75;130.63500000000204;152.72000000000116;130.91500000000087;149.90499999999884;156.22499999999854;162.76000000000204;145.4649999999965;129.0650000000005;157.0649999999987;154.5699999999997;156.8050000000003;151.60499999999593;129.4449999999997;146.60999999999694;120.52500000000146;159.7699999999968;147.44000000000233<br />
134;Inferno-TodoMVC/CompletingAllItems/Async;24.460000000000946;42.05500000000029;35.12000000000262;129.40499999999884;17.910000000003492;59.75;25.775000000001455;40.45499999999447;19.285000000003492;9.584999999991851;32.30500000000029;31.165000000000873;27.80500000000029;168.125;6.255000000004657;13.364999999999782;12.784999999999854;6.3400000000037835;9.064999999995052;20.414999999993597;13.635000000000218;11.829999999998108;20.935000000004948;23.17500000000291;12.494999999995343<br />
135;Inferno-TodoMVC/CompletingAllItems;168.83500000000095;202.27500000000146;208.34000000000378;282.1849999999977;174.6200000000099;214.5650000000005;154.96500000000015;195.20499999999447;149.92000000000553;162.30499999999302;163.22000000000116;181.0699999999997;184.02999999999884;330.88500000000204;151.72000000000116;142.4300000000003;169.84999999999854;160.9100000000035;165.86999999999534;172.01999999998952;143.07999999999993;158.43999999999505;141.4600000000064;182.9449999999997;159.93499999999767<br />
136;Inferno-TodoMVC/DeletingItems/Sync;598.1900000000005;566.8400000000001;628.6800000000003;575.2350000000006;556.7149999999965;806.4950000000008;576.1649999999972;602.3050000000003;575.4649999999965;606.6499999999942;790.4950000000008;577.8100000000013;595.8099999999977;599.0749999999971;590.5399999999936;583.6100000000006;564.9550000000017;605.8250000000044;591.7150000000038;586.0399999999936;566.1049999999996;562.375;584.5250000000015;571.695000000007;573.9599999999919<br />
137;Inferno-TodoMVC/DeletingItems/Async;38.784999999999854;74.45999999999913;7;43.71499999999651;7.605000000010477;17.295000000000073;10.544999999998254;58.729999999995925;6.365000000005239;35.04000000000815;6.779999999998836;16.770000000000437;21.400000000001455;47.04000000000087;16.105000000010477;7.364999999999782;9.43999999999869;31.81500000000233;10.12999999999738;9.880000000004657;15.295000000000073;36.5;16.459999999999127;37.74499999999534;17.31500000000233<br />
138;Inferno-TodoMVC/DeletingItems;636.9750000000004;641.2999999999993;635.6800000000003;618.9499999999971;564.320000000007;823.7900000000009;586.7099999999955;661.0349999999962;581.8300000000017;641.6900000000023;797.2749999999996;594.5800000000017;617.2099999999991;646.114999999998;606.6450000000041;590.9750000000004;574.3950000000004;637.6400000000067;601.8450000000012;595.9199999999983;581.3999999999996;598.875;600.9850000000006;609.4400000000023;591.2749999999942<br />
139;Inferno-TodoMVC;948.7849999999999;1012.1000000000022;1019.8999999999942;1050.9449999999924;889.6100000000297;1196.4300000000003;912.8499999999949;1031.919999999991;892.8350000000064;973.4199999999983;1126.7450000000008;940.3399999999965;964.5299999999988;1140.854999999996;923.2450000000099;901.6800000000003;890.2050000000017;956.6100000000079;940.1649999999936;926.5999999999767;883.1949999999997;903.7699999999968;906.7700000000041;945.9500000000044;913.3099999999977<br />
140;Elm-TodoMVC/Adding100Items/Sync;305.84000000000015;310.3500000000022;312.47000000000116;317.6200000000026;299.5650000000023;304.28000000000065;323.7350000000006;354.11500000000524;312.3050000000003;322.0749999999971;327.6700000000001;357.6650000000009;314.6949999999997;304.36499999999796;308.27999999999884;319.7000000000007;305.7649999999994;314.4650000000038;322.31499999999505;327.8799999999901;319.6399999999994;300.70500000000175;296.4050000000061;309.54499999999825;318.41999999999825<br />
141;Elm-TodoMVC/Adding100Items/Async;20.350000000000364;35.904999999998836;47.724999999998545;51.83499999999913;49.104999999995925;43.92500000000109;31.385000000002037;18.729999999995925;22.214999999996508;29.739999999990687;20.290000000000873;25.534999999999854;22.19999999999709;73;38.21499999999651;18.13500000000022;200.40499999999884;23.43000000000029;23.114999999997963;19.64999999999418;20.51000000000022;46.3650000000016;35.18999999999505;29.510000000002037;21.44000000000233<br />
142;Elm-TodoMVC/Adding100Items;326.1900000000005;346.255000000001;360.1949999999997;369.45500000000175;348.66999999999825;348.20500000000175;355.1200000000026;372.84500000000116;334.5199999999968;351.8149999999878;347.96000000000095;383.2000000000007;336.8949999999968;377.36499999999796;346.49499999999534;337.83500000000095;506.16999999999825;337.8950000000041;345.429999999993;347.5299999999843;340.14999999999964;347.07000000000335;331.59500000000116;339.0550000000003;339.8600000000006<br />
143;Elm-TodoMVC/CompletingAllItems/Sync;290.65499999999884;304.84999999999854;376.7350000000006;312.4150000000009;309.61500000000524;301.2999999999993;425.2400000000016;469.5400000000009;318.375;316.54499999999825;421.89000000000124;305.83500000000276;297.90499999999884;309.02999999999884;291.0399999999936;314.1650000000009;299.8099999999977;316.5599999999977;299.09500000000116;338.91999999999825;297.6749999999993;305.6850000000013;416.2450000000026;300.70500000000175;311.2749999999942<br />
144;Elm-TodoMVC/CompletingAllItems/Async;15.274999999999636;41.62999999999738;27.685000000004948;28.19999999999709;36.92500000000291;17.729999999999563;17.095000000001164;20.964999999996508;26.470000000001164;20.729999999995925;18.639999999999418;17.7599999999984;21.68000000000029;77.58499999999185;63.63499999999476;27.05000000000109;54.43999999999869;19.75499999999738;14.440000000002328;27.61500000000524;23.05000000000109;75.04000000000087;18.715000000003783;25.139999999999418;30.45000000001164<br />
145;Elm-TodoMVC/CompletingAllItems;305.9299999999985;346.4799999999959;404.42000000000553;340.61499999999796;346.54000000000815;319.02999999999884;442.33500000000276;490.5049999999974;344.84500000000116;337.2749999999942;440.53000000000065;323.59500000000116;319.5849999999991;386.6149999999907;354.67499999998836;341.21500000000196;354.24999999999636;336.31499999999505;313.5350000000035;366.5350000000035;320.72500000000036;380.7250000000022;434.9600000000064;325.84500000000116;341.7250000000058<br />
146;Elm-TodoMVC/DeletingItems/Sync;249.29500000000007;267.8899999999994;264.2450000000026;261.1499999999942;282.54999999998836;267.60499999999956;278.6100000000006;262.0049999999974;268.0149999999994;262.63499999999476;256.97999999999956;280.65000000000146;278.5349999999962;271.31999999999243;254.02499999999418;292.1700000000001;260.4750000000022;278.66999999999825;257.79999999999563;296.9100000000035;266.1399999999994;259.3999999999978;442;264.8350000000064;272.5650000000023<br />
147;Elm-TodoMVC/DeletingItems/Async;15.635000000000218;14.850000000002183;16.50499999999738;15.275000000008731;10.84000000001106;8.090000000000146;43.93500000000131;9.20499999999447;12.75;18.56500000000233;9.905000000000655;10.24500000000262;8.930000000000291;231;20.570000000006985;13.965000000000146;49.875;10.839999999996508;8.269999999996799;8.19999999999709;13.699999999998909;60.405000000002474;13.544999999998254;15.009999999994761;10.479999999995925<br />
148;Elm-TodoMVC/DeletingItems;264.9300000000003;282.7400000000016;280.75;276.4250000000029;293.3899999999994;275.6949999999997;322.5450000000019;271.20999999999185;280.7649999999994;281.1999999999971;266.8850000000002;290.8950000000041;287.4649999999965;502.31999999999243;274.59500000000116;306.1350000000002;310.3500000000022;289.50999999999476;266.06999999999243;305.1100000000006;279.8399999999983;319.8050000000003;455.54499999999825;279.84500000000116;283.04499999999825<br />
149;Elm-TodoMVC;897.0499999999993;975.4749999999985;1045.3650000000052;986.4950000000026;988.6000000000058;942.9300000000003;1120.0000000000073;1134.5599999999904;960.1299999999974;970.289999999979;1055.3750000000018;997.690000000006;943.9449999999924;1266.299999999981;975.7649999999849;985.1850000000031;1170.7699999999968;963.7199999999939;925.0349999999889;1019.1749999999884;940.7149999999983;1047.6000000000058;1222.1000000000058;944.7450000000026;964.6300000000047<br />
150;Flight-TodoMVC/Adding100Items/Sync;136.78000000000065;143.5600000000013;134.66999999999825;138.38000000000466;138.74000000000524;135.96500000000015;131.82500000000437;140.47500000000582;132.15000000000873;132.5850000000064;132.70499999999993;133.35499999999956;134.71500000000378;137.02499999999418;136.7850000000035;132.9300000000003;139.55999999999767;131.11499999999796;139.84000000001106;134.65999999998894;136.50500000000102;142.97000000000116;140.9300000000003;132.61999999999534;139.9100000000035<br />
151;Flight-TodoMVC/Adding100Items/Async;37.56999999999971;23.700000000000728;20.825000000004366;31.185000000012224;44.86000000000058;21.670000000000073;45.76499999999942;28.32499999999709;32.75;18.80999999999767;26.960000000000946;54.659999999999854;20.80500000000029;32.74000000000524;31.56500000000233;22.735000000000582;20.270000000000437;38.63999999999942;18.235000000000582;22.895000000004075;23.23999999999978;17.80999999999767;38.55000000000291;28.904999999998836;18.414999999993597<br />
152;Flight-TodoMVC/Adding100Items;174.35000000000036;167.26000000000204;155.49500000000262;169.56500000001688;183.60000000000582;157.63500000000022;177.59000000000378;168.8000000000029;164.90000000000873;151.39500000000407;159.66500000000087;188.01499999999942;155.52000000000407;169.76499999999942;168.35000000000582;155.66500000000087;159.8299999999981;169.75499999999738;158.07500000001164;157.55499999999302;159.7450000000008;160.77999999999884;179.4800000000032;161.52499999999418;158.3249999999971<br />
153;Flight-TodoMVC/CompletingAllItems/Sync;130.51500000000124;135.38000000000102;115.40499999999884;198.59999999999127;150.05499999999302;123.46500000000015;126.97499999999854;125.84000000000378;130.18499999999767;120.81999999999243;119.02499999999964;129.78499999999985;121.94000000000233;119.05000000000291;129.3000000000029;121.40999999999985;119.27999999999884;121.24500000000262;132.65499999999884;128.9499999999971;126.07500000000073;143.8849999999984;124.23500000000058;126.56000000001222;117.94499999999243<br />
154;Flight-TodoMVC/CompletingAllItems/Async;19.484999999998763;60.54000000000087;20.715000000003783;34.07499999999709;30.610000000000582;20.11499999999978;25.95499999999447;21.010000000002037;37.58499999999185;25.375;32.32500000000073;54.095000000001164;32.63500000000204;19.40999999998894;29.645000000004075;22.534999999999854;20.20499999999811;48.359999999993306;21.875;26.57500000001164;24.894999999998618;18.040000000000873;47.65999999999622;27.92500000000291;23.369999999995343<br />
155;Flight-TodoMVC/CompletingAllItems;150;195.9200000000019;136.12000000000262;232.67499999998836;180.6649999999936;143.57999999999993;152.92999999999302;146.85000000000582;167.76999999998952;146.19499999999243;151.35000000000036;183.88000000000102;154.57500000000437;138.45999999999185;158.94500000000698;143.9449999999997;139.48499999999694;169.60499999999593;154.52999999999884;155.52500000000873;150.96999999999935;161.92499999999927;171.8949999999968;154.48500000001513;141.31499999998778<br />
156;Flight-TodoMVC/DeletingItems/Sync;104.86499999999978;120.29000000000087;110.06999999999971;107.19999999999709;101.55000000000291;99.44500000000153;108.51499999999942;106.78500000000349;102.66000000000349;107.36500000000524;105.46500000000015;103.22000000000116;109.83499999999913;100.46999999998661;106.92500000000291;100.94499999999971;98.97000000000116;119.27500000000146;96.86500000000524;105.19499999999243;102.6200000000008;110.17499999999927;109.18999999999505;99.49499999999534;113.125<br />
157;Flight-TodoMVC/DeletingItems/Async;11.319999999999709;20.919999999998254;9.834999999999127;16.089999999996508;18.03499999998894;7.440000000000509;9.959999999999127;8.00499999999738;31.070000000006985;7.184999999997672;7.369999999998981;50.099999999998545;10.92500000000291;7.444999999992433;23.264999999999418;12.06500000000051;14.510000000002037;13.180000000000291;8.565000000002328;7.150000000008731;7.4099999999998545;22.349999999998545;18.510000000002037;19.014999999999418;10.134999999994761<br />
158;Flight-TodoMVC/DeletingItems;116.18499999999949;141.20999999999913;119.90499999999884;123.2899999999936;119.58499999999185;106.88500000000204;118.47499999999854;114.79000000000087;133.73000000001048;114.55000000000291;112.83499999999913;153.3199999999997;120.76000000000204;107.91499999997905;130.19000000000233;113.01000000000022;113.4800000000032;132.45500000000175;105.43000000000757;112.34500000000116;110.03000000000065;132.52499999999782;127.69999999999709;118.50999999999476;123.25999999999476<br />
159;Flight-TodoMVC;440.53499999999985;504.39000000000306;411.5200000000041;525.5299999999988;483.84999999999127;408.1000000000022;448.99499999999534;430.4400000000096;466.40000000000873;412.1399999999994;423.85000000000036;525.2150000000001;430.8550000000105;416.1399999999703;457.48500000001513;412.6200000000008;412.79499999999825;471.81499999999505;418.03500000001804;425.4250000000029;420.7450000000008;455.2299999999959;479.0749999999971;434.5200000000041;422.8999999999796<br />
</pre><br />
|}<br />
<br />
=== stylebench ===<br />
* contact: :emilio<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/stylebench/stylebench.manifest stylebench.manifest]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* measuring: speed of dynamic style recalculation<br />
* reporting: runs/minute score<br />
<br />
=== tabpaint ===<br />
* contact: :mconley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tabpaint tabpaint]<br />
* bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1253382<br />
* type: Pageloader<br />
* measuring: <br />
** The time it takes to paint the content of a newly opened tab when the tab is opened from the parent (ex: by hitting Ctrl-T)<br />
** The time it takes to paint the content of a newly opened tab when the tab is opened from content (ex: by clicking on a target="_blank" link)<br />
* '''NOT''' measuring:<br />
** The time it takes to animate the tabs. That's the responsibility of the TART test. tabpaint is strictly concerned with the painting of the web content.<br />
* data: we load the tabpaint trigger page 20 times, each run produces two values (the time it takes to paint content when opened from the parent, and the time it takes to paint content when opened from content), resulting in 2 sets of 20 data points.<br />
** Example:<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;tabpaint-from-parent;105;76;66;64;64;69;65;63;70;68;64;60;65;63;54;61;64;67;61;64<br />
1; tabpaint-from-content;129;68;72;72;70;78;86;85;82;79;120;92;76;80;74;82;76;89;77;85<br />
</pre><br />
|}<br />
<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 19 data points<br />
** suite: geometric_mean(subtests)<br />
<br />
=== TART ===<br />
* contact: :MattN<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tart tart]<br />
* type: PageLoader<br />
* measuring: Desktop Firefox UI animation speed and smoothness<br />
* reporting: intervals in ms (lower is better) - see below for details<br />
* data: there are 30 reported subtests from TART which we load 25 times, resulting in 30 sets of 25 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 24 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 30 subtest results.<br />
<br />
TART is the '''Tab Animation Regression Test'''.<br />
<br />
TART tests tab animation on these cases:<br />
* Simple: single new tab of about:blank open/close without affecting (shrinking/expanding) other tabs.<br />
* icon: same as above with favicons and long title instead of about:blank.<br />
* Newtab: newtab open with thumbnails preview - without affecting other tabs, with and without preload.<br />
* Fade: opens a tab, then measures fadeout/fadein (tab animation without the overhead of opening/closing a tab).<br />
** Case 1 is tested with DPI scaling of 1.<br />
** Case 2 is tested with DPI scaling of 1.0 and 2.0.<br />
** Case 3 is tested with the default scaling of the test system.<br />
** Case 4 is tested with DPI scaling of 2.0 with the "icon" tab (favicon and long title).<br />
** Each animation produces 3 test results:<br />
*** error: difference between the designated duration and the actual completion duration from the trigger.<br />
*** half: average frame interval over the 2nd half of the animation.<br />
*** all: average frame interval over all recorded intervals.<br />
*** And the run logs also include the explicit intervals from which these 3 values were derived.<br />
<br />
TART can be used as a stand-alone addon:<br />
* Set the browser to ASAP mode (preferences layout.frame_rate=0, docshell.event_starvation_delay_hint=1). This makes the browser refresh the screen as fast as possible instead of limiting it to 60hz, thus allows higher resolution measurements. Requires restart to take effect.<br />
* [https://hg.mozilla.org/mozilla-central/raw-file/tip/testing/talos/talos/generate-tart-xpi.html Install the latest addon xpi], or zip the addon dir of the source code, rename the extension to xpi and install.<br />
* Visit chrome://tart/content/tart.html<br />
* Select subtests to run. By default the selected tests are all the TART tests.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;simple-open-DPI1.half.TART;2.35;2.42;2.63;2.47;2.71;2.38;2.37;2.41;2.48;2.70;2.44;2.41;2.51;2.43;2.41;2.56;2.76;2.49;2.36;2.40;2.70;2.53;2.35;2.46;2.47<br />
1;simple-open-DPI1.all.TART;2.80;2.95;3.12;2.92;3.46;2.87;2.92;2.99;2.89;3.24;2.94;2.95;3.25;2.92;3.02;3.00;3.21;3.31;2.84;2.87;3.10;3.13;3.10;2.94;2.95<br />
2;simple-open-DPI1.error.TART;33.60;36.33;35.93;35.97;38.17;34.77;36.00;35.01;36.25;36.22;35.24;35.76;36.64;36.31;34.74;34.40;34.34;41.48;35.04;34.83;34.27;34.04;34.37;35.22;36.52<br />
3;simple-close-DPI1.half.TART;1.95;1.88;1.91;1.94;2.00;1.97;1.88;1.76;1.84;2.18;1.99;1.83;2.04;1.93;1.81;1.77;1.79;1.90;1.82;1.84;1.78;1.75;1.76;1.89;1.81<br />
4;simple-close-DPI1.all.TART;2.19;2.08;2.07;2.32;2.65;2.32;2.26;1.96;2.02;2.26;2.05;2.16;2.19;2.11;2.04;1.98;2.05;2.02;2.01;2.11;1.97;1.97;2.05;2.01;2.12<br />
5;simple-close-DPI1.error.TART;21.35;23.87;22.60;22.02;22.97;22.35;22.15;22.79;21.81;21.90;22.26;22.58;23.15;22.43;22.76;23.36;21.86;22.70;22.96;22.70;22.28;22.03;21.78;22.33;22.23<br />
6;icon-open-DPI1.half.TART;2.42;2.33;2.50;2.58;2.36;2.51;2.60;2.35;2.52;2.51;2.59;2.34;3.29;2.63;2.46;2.57;2.53;2.50;2.39;2.51;2.44;2.66;2.72;2.36;2.52<br />
7;icon-open-DPI1.all.TART;3.12;2.94;3.42;3.23;3.10;3.21;3.33;3.14;3.24;3.32;3.46;2.90;3.65;3.19;3.27;3.47;3.32;3.13;2.95;3.23;3.21;3.33;3.47;3.15;3.32<br />
8;icon-open-DPI1.error.TART;38.39;37.96;37.03;38.85;37.03;37.17;37.19;37.56;36.67;36.33;36.89;36.85;37.54;38.46;35.38;37.52;36.68;36.48;36.03;35.71;37.12;37.08;37.74;38.09;35.85<br />
9;icon-close-DPI1.half.TART;1.94;1.93;1.79;1.89;1.83;1.83;1.90;1.89;1.75;1.76;1.77;1.74;1.81;1.86;1.95;1.99;1.73;1.83;1.97;1.80;1.94;1.84;2.01;1.88;2.03<br />
10;icon-close-DPI1.all.TART;2.14;2.14;1.98;2.03;2.02;2.25;2.29;2.13;1.97;2.01;1.94;2.01;1.99;2.05;2.11;2.09;2.02;2.02;2.12;2.02;2.20;2.11;2.19;2.07;2.27<br />
11;icon-close-DPI1.error.TART;24.51;25.03;25.17;24.54;23.86;23.70;24.02;23.61;24.10;24.53;23.92;23.75;23.73;23.78;23.42;25.40;24.21;24.55;23.96;24.96;24.41;24.96;24.16;24.20;23.65<br />
12;icon-open-DPI2.half.TART;2.60;2.60;2.60;2.53;2.51;2.53;2.59;2.43;2.66;2.60;2.47;2.61;2.64;2.43;2.49;2.63;2.61;2.60;2.52;3.06;2.65;2.74;2.69;2.44;2.43<br />
13;icon-open-DPI2.all.TART;3.45;3.22;3.38;3.47;3.10;3.31;3.47;3.13;3.37;3.14;3.28;3.20;3.40;3.15;3.14;3.23;3.41;3.16;3.26;3.55;3.29;3.49;3.44;3.11;3.22<br />
14;icon-open-DPI2.error.TART;40.20;37.86;37.53;41.46;37.03;38.77;37.48;36.97;37.28;37.72;36.09;36.71;38.89;38.21;37.37;38.91;36.79;36.10;37.60;36.99;37.56;35.76;38.92;37.46;37.52<br />
15;icon-close-DPI2.half.TART;2.27;1.97;1.83;1.86;2.08;1.88;1.80;1.90;1.77;1.89;2.06;1.89;1.89;1.86;2.01;1.79;1.78;1.83;1.89;1.85;1.74;1.82;1.84;1.81;1.79<br />
16;icon-close-DPI2.all.TART;2.33;2.13;2.18;2.03;2.33;2.03;1.95;2.06;1.96;2.13;2.25;2.10;2.13;2.03;2.18;2.00;2.05;2.01;2.08;2.05;1.96;2.04;2.10;2.04;2.08<br />
17;icon-close-DPI2.error.TART;22.99;23.02;24.32;23.58;23.05;23.34;22.92;23.22;22.90;23.33;23.33;23.05;22.80;23.45;24.05;22.39;22.14;22.97;22.85;22.13;22.89;22.98;23.69;22.99;23.08<br />
18;iconFade-close-DPI2.half.TART;2.14;1.84;1.78;1.84;1.66;2.07;1.81;3.82;1.68;1.85;1.62;2.54;2.06;1.85;2.17;1.80;1.71;1.67;2.11;1.73;2.94;2.14;1.93;1.72;2.05<br />
19;iconFade-close-DPI2.all.TART;2.17;1.76;1.80;1.89;1.70;1.93;1.80;3.38;1.78;1.90;1.70;2.50;1.94;1.81;2.29;1.82;1.79;1.76;2.23;1.80;2.85;2.06;1.84;1.83;2.09<br />
20;iconFade-close-DPI2.error.TART;4.67;4.11;3.69;4.51;4.46;3.88;4.54;3.68;4.56;3.82;4.32;4.87;4.42;3.72;3.72;4.54;4.93;4.46;4.64;3.39;4.09;3.28;3.58;4.11;3.80<br />
21;iconFade-open-DPI2.half.TART;2.37;2.61;2.37;2.62;2.54;2.84;2.57;2.44;4.33;2.57;2.59;2.67;2.58;2.48;2.38;2.39;2.50;2.39;2.50;2.57;2.52;2.55;2.47;2.69;2.41<br />
22;iconFade-open-DPI2.all.TART;2.45;2.64;2.39;2.60;2.57;2.60;2.61;2.59;3.14;2.55;2.54;2.66;2.57;2.48;2.47;2.46;2.55;2.45;2.51;2.61;2.54;2.58;2.50;2.54;2.40<br />
23;iconFade-open-DPI2.error.TART;3.64;4.67;4.31;5.79;6.43;3.64;4.82;8.68;5.78;4.38;3.80;3.98;4.64;653.63;4.63;3.76;4.23;5.01;5.48;4.99;3.48;5.10;5.02;6.14;5.58<br />
24;newtab-open-preload-no.half.TART;5.02;2.90;3.06;3.03;2.94;2.94;3.08;3.12;3.60;3.19;2.82;2.96;3.67;7.85;2.79;3.12;3.18;2.92;2.86;2.96;2.96;3.00;2.90;2.97;2.94<br />
25;newtab-open-preload-no.all.TART;7.11;4.66;5.03;4.68;4.50;4.58;4.76;4.76;5.67;4.96;4.36;4.51;5.21;11.16;4.38;4.69;4.77;4.45;4.45;4.70;4.51;4.61;4.54;4.69;4.60<br />
26;newtab-open-preload-no.error.TART;40.82;40.85;37.38;37.40;36.30;36.47;36.89;37.63;37.12;38.65;36.73;36.95;36.11;38.59;37.39;37.77;37.93;37.54;37.46;38.29;36.58;38.25;38.32;37.92;36.93<br />
27;newtab-open-preload-yes.half.TART;3.14;2.96;2.97;8.37;2.98;3.00;2.96;3.05;3.12;3.48;3.07;3.23;3.05;2.88;2.92;3.06;2.90;3.01;3.19;2.90;3.18;3.11;3.04;3.16;3.21<br />
28;newtab-open-preload-yes.all.TART;5.10;4.60;4.63;8.94;5.01;4.69;4.63;4.67;4.93;5.43;4.78;5.12;4.77;4.65;4.50;4.78;4.75;4.63;4.76;4.45;4.86;4.88;4.69;4.86;4.92<br />
29;newtab-open-preload-yes.error.TART;35.90;37.24;38.57;40.60;36.04;38.12;38.78;36.73;36.91;36.69;38.12;36.69;37.79;35.80;36.11;38.01;36.59;38.85;37.14;37.30;38.02;38.95;37.64;37.86;36.43<br />
</pre><br />
|}<br />
<br />
=== tp5 ===<br />
* contact: :jmaher<br />
* source: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5n.zip]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load each of the 51 tp5o pages 25 times, resulting in 51 sets of 25 data points.<br />
* '''To run it locally''', you'd need [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5n.zip].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l449 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 51 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tp5o<br />
|tp5 with limited pageset (48 pages as others have too much noise)<br />
|}<br />
<br />
Tests the time it takes Firefox to load the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5 web page test set]. The web set was culled from the Alexa top 500 April 8th, 2011 and consists of 51 pages. <br />
<br />
Here are the broad steps we use to create the test set:<br />
# Take the Alexa top 500 sites list<br />
# Remove all sites with questionable or explicit content<br />
# Remove duplicate site (for ex. many Google search front pages)<br />
# Manually select to keep interesting pages (such as pages in different locales)<br />
# Select a more representative page from any site presenting a simple search/login/etc. page<br />
# Deal with Windows 255 char limit for cached pages<br />
# Limit test set to top 100 pages<br />
<br />
Note that the above steps did not eliminate all outside network access so we had to take further action to scrub all the pages so that there are 0 outside network accesses (this is done so that the tp test is as deterministic measurement of our rendering/layout/paint process as possible).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;163.com/www.163.com/index.html;1035;512;542;519;505;514;551;513;554;793;487;528;528;498;503;530;527;490;521;535;521;496;498;564;520<br />
1;56.com/www.56.com/index.html;1081;583;580;577;597;580;623;558;572;592;598;580;564;583;596;600;579;580;566;573;566;581;571;600;586<br />
2;aljazeera.net/aljazeera.net/portal.html;688;347;401;382;346;362;347;372;337;345;365;337;380;338;355;360;356;366;367;352;350;366;346;375;382<br />
3;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;1392;878;901;852;886;867;877;864;862;877;866;888;3308;870;863;869;873;850;851;850;857;873;869;860;855<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;455;271;272;271;279;289;276;285;277;291;281;286;278;286;274;285;276;285;287;286;276;288;279;272;278<br />
5;beatonna.livejournal.com/beatonna.livejournal.com/index.html;290;123;123;129;120;121;124;125;119;125;120;150;121;147;121;121;113;121;119;122;117;112;127;117;139<br />
6;bild.de/www.bild.de/index.html;1314;937;946;931;922;918;920;937;934;930;947;928;936;933;933;928;930;941;951;946;947;938;925;939;938<br />
7;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;495;324;330;328;321;308;315;308;321;313;327;330;317;339;333;322;312;370;336;327;310;312;312;355;330<br />
8;chemistry.about.com/chemistry.about.com/index.html;238;156;156;154;158;161;152;151;152;167;179;152;154;156;161;161;157;167;151;167;154;149;178;153;160<br />
9;chinaz.com/chinaz.com/index.html;347;223;255;234;245;233;264;234;244;228;260;224;258;223;280;220;243;225;251;226;258;232;258;232;247<br />
10;cnn.com/www.cnn.com/index.html;551;384;436;394;391;375;371;407;371;374;398;372;368;388;376;380;386;377;363;383;384;370;388;381;374<br />
11;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;984;606;551;561;545;542;576;564;543;560;566;557;561;544;545;576;548;539;568;567;557;560;545;544;578<br />
12;dailymotion.com/www.dailymotion.com/us.html;473;271;286;272;285;288;290;290;280;268;286;269;287;275;289;282;293;287;304;261;289;284;281;277;286<br />
13;digg.com/digg.com/news/story/New_logo_for_Mozilla_Firefox_browser.html;410;321;304;303;322;300;319;321;320;306;323;313;312;305;312;338;317;338;301;325;297;302;309;305;300<br />
14;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;234;177;163;163;186;176;185;175;167;156;162;199;163;190;173;181;175;178;165;159;182;170;183;169;158<br />
15;globo.com/www.globo.com/index.html;684;468;466;485;482;445;433;467;467;450;487;466;440;484;444;451;511;443;429;469;468;430;485;459;447<br />
16;google.com/www.google.com/search@q=mozilla.html;150;100;102;101;97;104;99;116;107;100;98;137;102;102;99;106;98;112;100;102;105;104;107;96;100<br />
17;goo.ne.jp/goo.ne.jp/index.html;328;125;132;132;143;121;122;120;132;145;166;139;144;125;128;152;128;145;130;132;154;126;142;133;139<br />
18;guardian.co.uk/www.guardian.co.uk/index.html;462;311;296;322;309;305;303;288;301;308;301;304;319;309;295;305;294;308;304;322;310;314;302;303;292<br />
19;homeway.com.cn/www.hexun.com/index.html;584;456;396;357;417;374;376;406;363;392;400;378;378;402;390;373;398;393;366;385;383;361;418;386;351<br />
20;huffingtonpost.com/www.huffingtonpost.com/index.html;811;609;575;596;568;585;589;571;568;600;571;588;585;570;574;616;576;564;598;594;589;590;572;572;612<br />
21;ifeng.com/ifeng.com/index.html;829;438;478;462;448;465;469;470;429;463;465;432;482;444;476;453;460;476;461;484;467;510;447;477;443<br />
22;imdb.com/www.imdb.com/title/tt1099212/index.html;476;337;358;332;414;379;344;420;354;363;387;345;358;371;341;385;359;379;353;349;392;349;358;378;347<br />
23;imgur.com/imgur.com/gallery/index.html;419;205;224;231;207;222;206;231;204;219;209;210;210;208;202;215;203;210;203;212;218;219;202;224;230<br />
24;indiatimes.com/www.indiatimes.com/index.html;530;339;348;384;376;381;353;350;403;333;356;393;350;328;393;329;389;346;394;349;382;332;409;327;354<br />
25;mail.ru/mail.ru/index.html;500;256;308;251;271;270;270;246;273;252;279;249;301;252;251;256;271;246;267;254;265;248;277;247;275<br />
26;mashable.com/mashable.com/index.html;699;497;439;508;440;448;512;446;431;500;445;427;495;455;458;499;440;432;522;443;447;488;445;461;489<br />
27;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;294;203;195;189;213;186;195;186;204;188;190;220;204;202;195;204;192;204;191;187;204;199;191;192;211<br />
28;myspace.com/www.myspace.com/albumart.html;595;446;455;420;433;425;416;429;452;411;435;439;389;434;418;402;422;426;396;438;423;391;434;438;395<br />
29;naver.com/www.naver.com/index.html;626;368;338;386;342;377;371;352;379;348;362;357;359;354;386;338;394;330;326;372;345;392;336;336;368<br />
30;noimpactman.typepad.com/noimpactman.typepad.com/index.html;431;333;288;292;285;313;277;289;282;292;276;293;270;294;289;281;275;302;285;290;280;285;278;284;283<br />
31;page.renren.com/page.renren.com/index.html;373;232;228;228;213;227;224;227;226;216;234;226;230;212;213;221;224;230;212;218;217;221;212;222;230<br />
32;people.com.cn/people.com.cn/index.html;579;318;305;339;307;341;325;326;307;309;315;314;318;317;321;309;307;299;312;313;305;326;318;384;310<br />
33;rakuten.co.jp/www.rakuten.co.jp/index.html;717;385;371;388;381;348;394;358;396;368;343;386;348;388;393;388;360;339;398;357;392;378;395;386;367<br />
34;reddit.com/www.reddit.com/index.html;340;254;248;255;241;241;248;275;251;250;250;252;243;274;240;269;254;249;242;257;271;253;243;278;252<br />
35;reuters.com/www.reuters.com/index.html;513;404;355;358;379;343;354;385;379;354;418;363;342;412;355;351;402;375;354;400;362;355;380;373;336<br />
36;slideshare.net/www.slideshare.net/jameswillamor/lolcats-in-popular-culture-a-historical-perspective.html;397;279;270;283;285;283;291;286;289;284;275;281;288;284;280;279;290;301;290;270;292;282;289;267;278<br />
37;sohu.com/www.sohu.com/index.html;727;414;479;414;431;485;418;440;488;431;432;464;442;407;488;435;416;465;445;414;480;416;403;463;429<br />
38;spiegel.de/www.spiegel.de/index.html;543;430;391;380;440;387;375;430;380;397;415;383;434;420;384;399;421;392;384;418;388;380;427;403;392<br />
39;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;503;377;356;438;370;388;409;367;366;407;375;363;393;360;363;396;376;391;426;363;378;408;400;359;408<br />
40;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;488;327;344;343;333;329;328;348;361;342;362;332;389;333;382;331;382;343;405;343;326;325;329;323;340<br />
41;thepiratebay.org/thepiratebay.org/top/201.html;412;274;317;260;256;269;266;261;258;289;245;284;256;277;251;302;276;307;268;268;247;285;260;271;257<br />
42;tudou.com/www.tudou.com/index.html;522;304;281;283;287;285;288;307;279;288;282;303;292;288;290;287;311;271;279;274;294;272;290;269;290<br />
43;uol.com.br/www.uol.com.br/index.html;668;387;450;411;395;452;386;431;452;394;385;436;413;414;440;401;412;439;408;430;426;415;382;433;387<br />
44;w3.org/www.w3.org/standards/webdesign/htmlcss.html;225;143;129;151;181;141;147;137;159;179;142;153;136;139;191;140;151;143;141;181;140;154;142;143;183<br />
45;wsj.com/online.wsj.com/home-page.html;634;466;512;463;467;507;461;432;492;494;491;507;466;477;495;455;451;495;461;463;494;468;444;497;442<br />
46;xinhuanet.com/xinhuanet.com/index.html;991;663;727;659;647;639;644;656;666;658;670;648;676;653;652;654;641;636;664;668;655;657;646;674;633<br />
47;xunlei.com/xunlei.com/index.html;802;625;624;636;641;652;659;642;623;635;628;606;667;688;683;694;672;640;628;620;653;626;633;654;643<br />
48;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;752;475;502;472;477;512;489;478;501;472;454;517;487;474;521;467;450;513;491;464;536;507;455;511;481<br />
49;youku.com/www.youku.com/index.html;844;448;498;441;417;497;478;439;467;436;447;465;438;461;466;446;452;496;457;446;486;449;467;499;442<br />
50;youtube.com/www.youtube.com/music.html;443;338;253;289;238;296;254;290;242;302;237;290;253;305;253;293;251;311;244;293;255;291;246;316;249<br />
</pre><br />
|}<br />
<br />
==== File IO ====<br />
<br />
===== Possible regression causes =====<br />
* '''nonmain_startup_fileio opt (with or without e10s) windows7-32''' – {{bug|1274018}} This test seems to consistently report a higher result for mozilla-central compared to Try even for an identical revision due to extension signing checks. In other words, if you are comparing Try and Mozilla-Central you may see a false-positive regression on perfherder. Graphs: [https://treeherder.mozilla.org/perf.html#/graphs?timerange=604800&series=%5Bmozilla-central,e5f5eaa174ef22fdd6b6e150e8c450aa827c2ff6,1,1%5D&series=%5Btry,e5f5eaa174ef22fdd6b6e150e8c450aa827c2ff6,1,1%5D non-e10s] [https://treeherder.mozilla.org/perf.html#/graphs?series=%5B%22mozilla-central%22,%222f3af3833d55ff371ecf01c41aeee1939ef3a782%22,1,1%5D&series=%5B%22try%22,%222f3af3833d55ff371ecf01c41aeee1939ef3a782%22,1,1%5D&timerange=604800 e10s]<br />
<br />
==== Xres (X Resource Monitoring) ====<br />
<br />
A memory metric tracked during tp5 test runs. This metric is sampled every 20 seconds. This metric is collected on linux only.<br />
<br />
[https://linux.die.net/man/3/xres xres man page].<br />
<br />
==== % CPU ====<br />
<br />
Cpu usage tracked during tp5 test runs. This metric is sampled every 20 seconds. This metric is collected on windows only.<br />
<br />
==== Responsiveness ====<br />
contact: :jimm, :overholt<br />
<br />
Measures the delay for the event loop to process a [[Performance/Snappy#Current Infrastructure|tracer event]]. For more details, see {{bug|631571}}.<br />
<br />
The score on this benchmark is proportional to the sum of squares of all event delays that exceed a 20ms threshold. Lower is better.<br />
<br />
We collect 8000+ data points from the browser during the test and apply [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/output.py#l95 this formula] to the results:<br />
<pre><br />
return sum([float(x)*float(x) / 1000000.0 for x in val_list])<br />
</pre><br />
<br />
=== tp5o_scroll ===<br />
* contact: :kats<br />
* source: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5n.zip]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos#Page_Load_Tests PageLoader]<br />
* data: we load each of the 51 tp5o pages 12 times, resulting in 51 sets of 12 data points.<br />
* '''To run it locally''', you'd need [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5n.zip].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 11; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l470 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 51 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tp5o_scroll<br />
|Measures average frames interval while scrolling the pages of the tp5o set<br />
|}<br />
<br />
This test is identical to tscrollx, but it scrolls the 50 pages of the tp5o set (rather than 6 synthetic pages which tscrollx scrolls). For each page, the test waits 500ms after the page load event fires, then iterates 100 scroll steps of 10px each (or until the bottom of the page is reached - whichever comes first), then reports the average frame interval.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;163.com/www.163.com/index.html;9.73;8.61;7.37;8.17;7.58;7.29;6.88;7.45;6.91;6.61;8.47;7.12<br />
1;56.com/www.56.com/index.html;10.85;10.24;10.75;10.30;10.23;10.10;10.31;10.06;11.10;10.06;9.56;10.30<br />
2;aljazeera.net/aljazeera.net/portal.html;9.23;7.15;7.50;7.26;7.73;7.05;7.14;7.66;7.23;7.93;7.26;7.18<br />
3;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;7.14;6.87;7.18;6.31;6.93;6.71;6.37;7.00;6.59;5.37;7.31;6.13<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;7.39;6.33;6.22;7.66;6.67;7.77;6.91;7.74;7.08;6.36;6.03;7.12<br />
5;beatonna.livejournal.com/beatonna.livejournal.com/index.html;5.79;5.79;5.68;5.46;5.55;5.48;5.69;5.83;5.88;5.97;5.93;5.88<br />
6;bild.de/www.bild.de/index.html;8.65;7.63;7.17;6.36;7.44;7.68;8.63;6.71;8.34;7.15;7.82;7.70<br />
7;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;7.12;6.81;7.22;6.98;7.05;5.68;7.15;6.54;7.31;7.18;7.82;7.77<br />
8;chemistry.about.com/chemistry.about.com/index.html;6.76;6.17;6.41;6.88;5.67;5.47;6.83;6.28;6.16;6.81;6.21;6.75<br />
9;chinaz.com/chinaz.com/index.html;10.72;7.99;7.33;7.10;7.85;8.62;8.39;6.72;6.26;6.65;8.14;7.78<br />
10;cnn.com/www.cnn.com/index.html;7.73;6.80;6.08;8.27;9.24;7.81;7.69;7.05;8.17;7.70;7.90;6.81<br />
11;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;6.37;8.28;7.19;8.00;8.09;7.43;6.90;7.24;7.77;7.29;7.38;6.14<br />
12;dailymotion.com/www.dailymotion.com/us.html;9.53;9.80;9.29;9.03;9.10;8.64;8.62;8.71;8.77;9.81;9.64;8.96<br />
13;digg.com/digg.com/news/story/New_logo_for_Mozilla_Firefox_browser.html;7.72;7.06;7.60;5.67;6.85;7.32;7.80;5.98;8.27;6.68;7.52;8.39<br />
14;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;7.14;7.11;8.09;7.17;6.87;7.12;7.65;7.74;7.26;7.36;6.91;6.95<br />
15;globo.com/www.globo.com/index.html;6.71;7.91;5.83;7.34;7.75;8.00;7.73;7.85;7.03;6.42;8.43;8.11<br />
16;google.com/www.google.com/search@q=mozilla.html;6.49;6.23;7.96;6.39;7.23;8.19;7.35;7.39;6.94;7.24;7.55;7.62<br />
17;goo.ne.jp/goo.ne.jp/index.html;8.56;7.18;7.15;7.03;6.85;7.62;7.66;6.99;7.84;7.51;7.23;7.18<br />
18;guardian.co.uk/www.guardian.co.uk/index.html;7.32;7.62;8.18;7.62;7.83;8.08;7.60;8.17;8.47;7.54;7.92;8.09<br />
19;homeway.com.cn/www.hexun.com/index.html;10.18;8.75;8.83;8.64;8.98;8.07;7.76;9.29;8.05;7.55;8.91;7.78<br />
20;huffingtonpost.com/www.huffingtonpost.com/index.html;8.38;7.17;7.03;6.83;6.49;6.47;6.69;7.08;6.81;7.29;7.13;7.70<br />
21;ifeng.com/ifeng.com/index.html;12.45;8.65;8.75;7.56;8.26;7.71;8.04;7.45;7.83;7.14;8.38;7.68<br />
22;imdb.com/www.imdb.com/title/tt1099212/index.html;8.53;5.65;6.94;7.18;6.10;7.57;6.26;8.34;8.16;7.29;7.62;8.51<br />
23;imgur.com/imgur.com/gallery/index.html;8.10;7.20;7.50;7.88;7.27;6.97;8.13;7.14;7.59;7.39;8.01;8.82<br />
24;indiatimes.com/www.indiatimes.com/index.html;8.00;6.74;7.37;8.52;7.03;8.45;7.08;8.47;9.26;7.89;7.17;6.74<br />
25;mail.ru/mail.ru/index.html;7.64;9.50;9.47;7.03;6.45;6.24;8.03;6.72;7.18;6.39;6.25;6.25<br />
26;mashable.com/mashable.com/index.html;7.97;8.03;6.10;7.80;7.91;7.26;7.49;7.45;7.60;7.08;7.63;7.36<br />
27;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;290.00;195.00;217.00;199.00;204.00;196.00;198.00;206.00;209.00;208.00;192.00;196.00<br />
28;myspace.com/www.myspace.com/albumart.html;14.40;13.45;13.29;13.62;13.42;14.15;13.86;14.34;14.69;14.10;13.82;14.13<br />
29;naver.com/www.naver.com/index.html;9.15;8.31;9.40;9.89;7.29;8.43;8.87;8.77;8.96;8.24;8.16;8.21<br />
30;noimpactman.typepad.com/noimpactman.typepad.com/index.html;7.27;7.14;7.70;7.86;7.43;6.95;7.30;7.58;7.51;7.95;7.43;7.05<br />
31;page.renren.com/page.renren.com/index.html;7.94;8.13;6.76;7.77;6.93;6.60;7.62;7.61;6.88;7.56;7.55;7.48<br />
32;people.com.cn/people.com.cn/index.html;11.92;9.22;8.49;8.55;8.34;8.49;6.91;9.92;8.69;8.63;7.69;9.34<br />
33;rakuten.co.jp/www.rakuten.co.jp/index.html;11.10;7.13;8.68;7.85;8.37;7.91;6.74;8.27;8.55;8.93;7.15;9.02<br />
34;reddit.com/www.reddit.com/index.html;6.38;7.95;6.84;7.04;6.96;7.15;8.05;7.71;8.13;7.13;6.60;7.53<br />
35;reuters.com/www.reuters.com/index.html;7.51;7.25;6.60;6.98;7.41;6.45;7.61;7.46;6.11;7.15;7.05;6.94<br />
36;slideshare.net/www.slideshare.net/jameswillamor/lolcats-in-popular-culture-a-historical-perspective.html;7.20;6.32;6.80;6.87;6.29;6.45;7.18;6.92;6.57;7.41;7.08;6.51<br />
37;sohu.com/www.sohu.com/index.html;11.72;9.64;8.85;7.12;7.96;9.14;7.76;8.19;7.14;7.68;8.08;7.24<br />
38;spiegel.de/www.spiegel.de/index.html;7.24;7.30;6.64;7.01;6.74;6.70;6.36;6.84;7.86;7.08;7.12;7.40<br />
39;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;7.39;5.88;7.22;6.51;7.12;6.51;6.46;6.53;6.63;6.54;6.48;6.80<br />
40;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;6.23;7.17;7.39;8.98;7.99;8.03;9.12;8.37;8.56;7.61;8.06;7.55<br />
41;thepiratebay.org/thepiratebay.org/top/201.html;9.08;8.93;8.09;7.49;7.30;7.80;7.54;7.65;7.91;7.53;8.37;8.04<br />
42;tudou.com/www.tudou.com/index.html;10.06;9.38;8.68;7.37;8.57;9.11;8.20;7.91;8.78;9.64;8.11;8.47<br />
43;uol.com.br/www.uol.com.br/index.html;9.04;9.49;9.48;9.31;8.68;8.41;9.16;8.91;9.49;8.37;9.77;8.73<br />
44;w3.org/www.w3.org/standards/webdesign/htmlcss.html;6.62;5.98;6.87;6.47;7.22;6.05;6.42;6.50;7.47;7.18;5.82;7.11<br />
45;wsj.com/online.wsj.com/home-page.html;7.49;8.57;6.84;8.12;7.60;7.24;8.16;8.22;6.81;8.28;8.11;8.58<br />
46;xinhuanet.com/xinhuanet.com/index.html;13.66;9.21;10.09;9.56;8.99;10.29;10.24;8.91;11.23;10.82;9.64;10.11<br />
47;xunlei.com/xunlei.com/index.html;8.99;8.16;8.82;8.37;7.01;8.48;7.98;8.69;8.10;8.10;7.10;6.41<br />
48;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;8.18;7.45;7.01;8.14;7.12;7.82;8.24;7.13;7.00;6.41;6.85;7.31<br />
49;youku.com/www.youku.com/index.html;12.21;10.29;10.37;10.34;8.40;9.82;9.23;9.91;9.64;9.91;8.90;10.23<br />
50;youtube.com/www.youtube.com/music.html;9.90;9.06;9.29;9.17;8.85;8.77;9.83;9.21;9.29;10.09;9.69;8.64<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
Some examples of things that cause regressions in this test are:<br />
* Increased displayport size (which causes a larger display list to be built)<br />
* Slowdown in the building of display list<br />
* Slowdown in rasterization of content<br />
<br />
=== tp6 ===<br />
* contact: :rwood, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/quantum_pageload tp6]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: we load each of the tp6 pages 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first five] data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20; [http://searchfox.org/mozilla-central/rev/8a61c71153a79cda2e1ae7d477564347c607cc5f/testing/talos/talos/test.py#246 source: test.py]<br />
** suite: identical to subtest; each tp6_* test is reported individually (they're NOT aggregated)<br />
<br />
The talos tp6 (also known as 'quantum-pageload') test suite loads various pages and reports their load times. Each test page/URL is reported individually.<br />
<br />
Instead of loading the page sets from a local file, a tool called [http://docs.mitmproxy.org/en/latest/introduction.html mitmproxy] is used to playback page archives via an https proxy. When the tp6 suite is run via ./mach talos-test, mozharness automatically downloads and installs the mitmproxy tool and pageset archives.<br />
<br />
The mitmproxy tool is started, the proxy setup in Firefox, and the mitmproxy https security certificate is loaded into Firefox, all automatically. The pagesets are made available for playback via the proxy, at which point each of the tp6 test pages are ready for load and measurement.<br />
<br />
Note: For local debugging purposes, you can find the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets page set here]<br />
<br />
The tp6 suite currently consists of these individual pageload tests:<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
| tp6_amazon<br />
| Measures page load (first non-blank paint) of an amazon search result for the keyword "laptop"<br />
|-<br />
| tp6_facebook<br />
| Measures page load (first non-blank paint) of a facebook timeline (post-login)<br />
|-<br />
| tp6_google<br />
| Measures page load (hero element) of a google search result for the keywords "barack obama"<br />
|-<br />
| tp6_youtube<br />
| Measures page load (first non-blank paint) of the youtube home page<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data for tp6_youtube<br />
|-<br />
| <pre><br />
https://www.youtube.co/;409;441;354;337;326;375;353;650;354;712;667;336;791;497;342;355;611;334;<br />
692;320;714;434;582;610;333<br />
</pre><br />
|}<br />
<br />
==== Recording a tp6 test page ====<br />
Test pages used for tp6 are mitmproxy recordings that are played back during the tp6 test (and ultimately loaded in Firefox via the local proxy). Each test page is a separate mitmproxy recording (*.mp) file, however all recordings for the tp6 suite are archived in a single zip file on tooltool. When tp6 is run, talos automatically downloads the mitmproxy recording archive for use during the test.<br />
<br />
The following process was used to record the tp6 mitmproxy page archives (on Windows 10):<br />
<br />
1. Install mitmproxy following the mitmproxy [http://docs.mitmproxy.org/en/stable/install.html installation instructions]<br />
<br />
2. Setup a local proxy in Firefox:<br />
* Start Firefox<br />
* Preferences => General<br />
* Network Proxy => Settings<br />
* On the "Connection Settings" screen, select "Manual proxy configuration"<br />
* For "HTTP Proxy" type in "127.0.0.1" with port "8080"<br />
* For "SSL Proxy" use the same "127.0.0.1" with port "8080"<br />
* Click the "OK" button to save the proxy settings<br />
<br />
3. Install the mitmproxy CA certificate:<br />
* Open a terminal window<br />
* Startup mitmproxy in host mode:<br />
mitmproxy --host<br />
* In Firefox, browse to "mitm.it" and follow the directions on how to accept the CA certificate<br />
* Shutdown the mitmproxy tool (in terminal hit "Q", then "Y" to quit)<br />
<br />
4. Record a new page:<br />
* Start Firefox with the proxy still enabled<br />
* Clear the browser history/cache<br />
* In a terminal window start the mitmdump recording tool:<br />
mitmdump -w /path/to/save/recording.mp<br />
* Inside Firefox browse to the URL that you want to record (i.e. www.spacex.com)<br />
* Wait for the page to be fully loaded and displayed<br />
* In the mitmdump terminal window press "ctrl + c" to stop the recording<br />
<br />
5. To test playing back your recorded page:<br />
* Start Firefox with the proxy still enabled<br />
* With mitmproxy NOT running, browse to your recorded URL (i.e. www.spacex.com); you'll just get an error saying that the proxy server is refusing connections<br />
* In a terminal window, start mitmproxy playback:<br />
mitmdump -k /path/to/save/recording.mp<br />
* In Firefox browse to the URL that you recorded already (i.e. www.spacex.com). This time the page will load successfully; it is actually loading the page from the local mitmdump archive file (*.mp) and not the external site<br />
* In the terminal window press "ctrl + c" to stop the playback<br />
<br />
6. When you're finished remember to turn off your Firefox proxy:<br />
* Preferences => General<br />
* Network Proxy => Settings<br />
* Select "No proxy" and click the "OK" button<br />
<br />
=== tpaint ===<br />
* contact: :milan<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tpaint.html tpaint-window.html]]<br />
* type: Startup<br />
* data: we load the tpaint test window 20 times, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 15; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l190 source: test.py]<br />
** suite: identical to subtest<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
|Talos test name<br />
|Description<br />
|-<br />
|tpaint<br />
|twinopen but measuring the time after we receive the [[Buildbot/Talos/Tests#Paint_Tests|MozAfterPaint and OnLoad event]].<br />
|}<br />
<br />
Tests the amount of time it takes the open a new window. This test does not include startup time. Multiple test windows are opened in succession, results reported are the average amount of time required to create and display a window in the running instance of the browser. (Measures ctrl-n performance.)<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[209.219, 222.180, 225.299, 225.970, 228.090, 229.450, 230.625, 236.315, 239.804, 242.795, 244.5, 244.770, 250.524, 251.785, 253.074, 255.349, 264.729, 266.014, 269.399, 326.190]<br />
</pre><br />
|}<br />
<br />
=== tps ===<br />
* contact: :mconley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tabswitch tabswitch]<br />
* bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1166132<br />
* type: Pageloader<br />
* measuring: <br />
** The time between switching a tab and the first paint to the content area<br />
* reporting:<br />
* data: we load 50 web pages 5 times each, resulting in 50 sets of 5 data points.<br />
* '''To run it locally''', you'd need [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#page_sets tp5n.zip].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 4 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 50 subtest results.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;66.34;54.15;53.08;55.79;49.12<br />
1;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;50.85;46.57;39.51;36.71;36.47<br />
2;163.com/www.163.com/index.html;95.05;80.80;76.09;69.29;68.96<br />
3;mail.ru/mail.ru/index.html;66.21;52.04;56.33;55.11;45.61<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;35.80;44.59;48.02;45.71;42.58<br />
5;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;52.98;49.45;58.47;56.79;61.29<br />
6;imdb.com/www.imdb.com/title/tt1099212/index.html;46.51;55.12;46.22;50.60;47.63<br />
7;cnn.com/www.cnn.com/index.html;43.02;50.77;43.88;49.70;50.02<br />
8;sohu.com/www.sohu.com/index.html;74.03;62.89;63.30;67.71;89.35<br />
9;youku.com/www.youku.com/index.html;43.98;52.69;45.80;63.00;57.02<br />
10;ifeng.com/ifeng.com/index.html;88.01;87.54;104.47;94.93;113.91<br />
11;tudou.com/www.tudou.com/index.html;45.32;48.10;46.03;39.26;58.38<br />
12;chemistry.about.com/chemistry.about.com/index.html;38.24;37.07;39.59;39.48;39.60<br />
13;beatonna.livejournal.com/beatonna.livejournal.com/index.html;35.59;50.75;36.17;48.49;52.61<br />
14;rakuten.co.jp/www.rakuten.co.jp/index.html;90.28;71.95;62.66;60.33;67.76<br />
15;uol.com.br/www.uol.com.br/index.html;42.89;48.05;53.77;40.02;42.41<br />
16;thepiratebay.org/thepiratebay.org/top/201.html;40.46;42.46;47.63;57.66;45.49<br />
17;page.renren.com/page.renren.com/index.html;47.61;66.78;47.91;62.78;47.19<br />
18;chinaz.com/chinaz.com/index.html;50.34;58.17;118.43;55.47;63.80<br />
19;globo.com/www.globo.com/index.html;41.34;38.52;42.82;53.14;45.20<br />
20;spiegel.de/www.spiegel.de/index.html;33.60;34.34;36.25;36.18;47.04<br />
21;dailymotion.com/www.dailymotion.com/us.html;37.68;36.13;39.52;37.15;42.79<br />
22;goo.ne.jp/goo.ne.jp/index.html;50.74;47.30;63.04;58.41;58.96<br />
23;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;44.66;44.40;43.39;47.38;57.65<br />
24;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;37.38;45.01;40.29;36.26;39.28<br />
25;huffingtonpost.com/www.huffingtonpost.com/index.html;39.57;43.35;55.01;44.13;58.28<br />
26;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;39.77;42.46;75.54;42.38;47.72<br />
27;imgur.com/imgur.com/gallery/index.html;34.72;37.37;46.74;40.93;37.08<br />
28;reddit.com/www.reddit.com/index.html;42.47;39.89;51.54;51.51;41.68<br />
29;noimpactman.typepad.com/noimpactman.typepad.com/index.html;54.28;47.40;52.38;52.15;50.97<br />
30;myspace.com/www.myspace.com/albumart.html;48.97;64.12;61.66;48.32;68.53<br />
31;mashable.com/mashable.com/index.html;36.76;40.95;35.30;53.86;42.76<br />
32;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;42.06;40.64;44.24;37.32;61.35<br />
33;whois.domaintools.com/whois.domaintools.com/mozilla.com.html;34.73;35.23;39.25;48.24;35.72<br />
34;indiatimes.com/www.indiatimes.com/index.html;52.67;55.51;46.29;52.69;58.82<br />
35;reuters.com/www.reuters.com/index.html;32.92;33.08;36.95;39.23;39.27<br />
36;xinhuanet.com/xinhuanet.com/index.html;125.85;102.56;138.89;130.34;147.45<br />
37;56.com/www.56.com/index.html;63.89;75.00;61.45;62.20;58.67<br />
38;bild.de/www.bild.de/index.html;35.61;43.74;34.79;33.45;31.83<br />
39;guardian.co.uk/www.guardian.co.uk/index.html;38.91;55.93;62.34;42.63;45.99<br />
40;naver.com/www.naver.com/index.html;78.10;89.07;127.67;75.18;109.32<br />
41;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;42.54;46.92;39.19;49.82;50.43<br />
42;wsj.com/online.wsj.com/home-page.html;46.43;55.51;44.16;81.79;48.78<br />
43;google.com/www.google.com/search@q=mozilla.html;35.62;36.71;44.47;45.00;40.22<br />
44;xunlei.com/xunlei.com/index.html;67.57;60.69;83.83;85.53;85.08<br />
45;aljazeera.net/aljazeera.net/portal.html;65.03;51.84;73.29;64.77;69.70<br />
46;w3.org/www.w3.org/standards/webdesign/htmlcss.html;53.57;58.50;72.98;66.95;55.62<br />
47;homeway.com.cn/www.hexun.com/index.html;105.59;117.32;108.95;116.10;70.32<br />
48;youtube.com/www.youtube.com/music.html;40.53;41.48;59.67;40.81;40.07<br />
49;people.com.cn/people.com.cn/index.html;96.49;103.64;115.12;66.05;117.84<br />
</pre><br />
|}<br />
<br />
=== tresize ===<br />
* contact: :jimm<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tresize/addon/content/tresize-test.html tresize-test.html]]<br />
* type: StartupTest<br />
* measuring: Time to do XUL resize, in ms (lower is better).<br />
* data: we run the tresize test page 20 times, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 15 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l205 source: test.py]<br />
** suite: same as subtest result<br />
<br />
A purer form of paint measurement than tpaint. This test opens a single window positioned at 10,10 and sized to 300,300, then resizes the window outward |max| times measuring the amount of time it takes to repaint each resize. Dumps the resulting dataset and average to stdout or logfile.<br />
<br />
In {{bug|1102479}} tresize was rewritten to work in e10s mode which involved a full rewrite of the test.<br />
<br />
To run resize locally without talos, please [https://hg.mozilla.org/mozilla-central/raw-file/tip/testing/talos/talos/generate-tresize-xpi.html install the addon] to run the test locally.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[23.2565333333333, 23.763383333333362, 22.58369999999999, 22.802766666666653, 22.304050000000025, 23.010383333333326, 22.865466666666677, 24.233716666666705, 24.110983333333365, 22.21390000000004, 23.910333333333316, 23.409816666666647, 19.873049999999992, 21.103966666666686, 20.389749999999978, 20.777349999999984, 20.326283333333365, 22.341616666666667, 20.29813333333336, 20.769600000000104]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* slowdown in the paint pipeline<br />
* resizes also trigger a rendering flush so bugs in the flushing code can manifest as regressions<br />
* introduction of more spurious MozAfterPaint events - see {{bug|1471961}}<br />
<br />
=== ts_paint ===<br />
<br />
* contact: :milan<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tspaint_test.html tspaint_test.html]<br />
* Perfomatic: "Ts, Paint"<br />
* type: Startup<br />
* data: 20 times we start the browser and time how long it takes to paint the startup test page, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: identical to suite<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 19 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l135 source: test.py]<br />
<br />
Starts the browser to display tspaint_test.html with the start time in the url, waits for [[Buildbot/Talos/Tests#Paint_Tests|MozAfterPaint and onLoad]] to fire, then records the end time and calculates the time to startup.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[1666.0, 1195.0, 1139.0, 1198.0, 1248.0, 1224.0, 1213.0, 1194.0, 1229.0, 1196.0, 1191.0, 1230.0, 1247.0, 1169.0, 1217.0, 1184.0, 1196.0, 1192.0, 1224.0, 1192.0]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* (and/or maybe tpaint?) will regress if a new <panel> element is added to the browser window (e.g. browser.xul) and it's frame gets created. Fix this by ensuring it's display:none by default.<br />
<br />
=== tscrollx ===<br />
* contact: :jrmuizel<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/scroll scroll.manifest]]<br />
* type: PageLoader<br />
* measuring: Scroll performance<br />
* reporting: Average frame interval (1/FPS). Lower is better.<br />
* data: we load 6 pages 25 times each, collecting 6 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 6 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tscrollx<br />
|[https://groups.google.com/d/topic/mozilla.dev.platform/RICw5SJhNMo/discussion Replacing tscroll,tsvg with tscrollx,tsvgx]<br />
|}<br />
<br />
<br />
This test scrolls several pages where each represent a different known "hard" case to scroll (* needinfo), and measures the average frames interval (1/FPS) on each. The ASAP test (tscrollx) iterates in unlimited frame-rate mode thus reflecting the maximum scroll throughput per page. To turn on ASAP mode, we set these preferences:<br />
preferences = {'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;tiled.html;5.41;5.57;5.34;5.64;5.53;5.48;5.44;5.49;5.50;5.50;5.49;5.66;5.50;5.37;5.57;5.54;5.46;5.31;5.41;5.57;5.50;5.52;5.71;5.31;5.44<br />
fixed.html;10.404609053497941;10.47;10.66;10.45;10.73;10.79;10.64;10.64;10.82;10.43;10.92;10.47;10.47;10.64;10.74;10.67;10.40;10.83;10.77;10.54;10.38;10.70;10.44;10.38;10.56<br />
downscale.html;5.493209876543211;5.27;5.50;5.50;5.51;5.46;5.58;5.58;5.51;5.49;5.49;5.47;9.09;5.56;5.61;5.50;5.47;5.59;5.47;5.49;5.60;5.61;5.58;5.40;5.43<br />
downscale.html;10.676522633744854;10.82;10.79;10.41;10.75;10.91;10.52;10.61;10.50;10.55;10.80;10.17;10.68;10.41;10.42;10.41;10.58;10.28;10.56;10.66;10.68;10.47;10.60;10.61;10.26<br />
4;iframe.svg;13.82;14.87;14.78;14.35;14.73;14.50;14.15;14.46;14.80;14.48;15.10;14.93;14.77;14.52;14.08;15.01;14.58;14.52;15.23;14.35;14.72;14.28;14.30;14.27;14.96<br />
5;reader.htm;10.72;10.62;10.23;10.48;10.42;10.64;10.40;10.40;10.14;10.60;10.51;10.36;10.57;10.41;10.52;10.75;10.19;10.72;10.44;9.75;10.49;10.07;10.54;10.46;10.44<br />
</pre><br />
|}<br />
<br />
=== tsvgr_opacity ===<br />
* contact: :jwatt, :dholbert<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svg_opacity/svg_opacity.manifest]<br />
* type: PageLoader<br />
* data: we load the 2 svg opacity pages 25 times, resulting in 2 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 2 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvgr_opacity<br />
|[[#Row_Major_vs._Column_Major|Row Major]] and 25 cycles/page.<br />
|}<br />
<br />
Renders many semi-transparent, partially overlapping SVG rectangles, and measures time to completion of this rendering.<br />
<br />
Note that this test also tends to reflect changes in network efficiency and navigation bar rendering issues:<br />
<br />
* Most of the page load tests measure from before the location is changed, until onload + mozafterpaint, therefore any changes in chrome performance from the location change, or network performance (the pages load from a local web server) would affect page load times. SVG opacity is rather quick by itself, so any such chrome/network/etc performance changes would affect this test more than other page load tests (relatively, in percentages).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;big-optimizable-group-opacity-2500.svg;170;171;205;249;249;244;192;252;192;431;182;250;189;249;151;168;209;194;247;250;193;250;255;247;247<br />
1;small-group-opacity-2500.svg;585;436;387;441;512;438;440;380;443;391;450;386;459;383;445;388;450;436;485;443;383;438;528;444;441<br />
</pre><br />
|}<br />
<br />
=== tsvg_static ===<br />
* contact: :jwatt, :dholbert, :neerja<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svg_static/ svg_static]<br />
* type: PageLoader<br />
* data: we load the 5 svg pages 25 times, resulting in 5 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 5 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvg_static<br />
|An svg-only number that measures SVG rendering performance of some complex (but static) SVG content.<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;gearflowers.svg;262;184;184;198;197;187;181;186;177;192;196;194;194;186;195;190;237;193;188;182;188;196;191;194;184<br />
1;composite-scale.svg;69;52;48;49;57;51;52;87;52;49;49;51;58;53;64;57;49;65;67;58;53;59;56;68;50<br />
2;composite-scale-opacity.svg;72;53;91;54;51;58;60;46;51;57;59;58;66;70;57;61;47;51;76;65;52;65;64;64;63<br />
3;composite-scale-rotate.svg;70;76;89;62;62;78;57;77;79;82;74;56;61;79;73;64;75;74;81;82;76;58;77;61;62<br />
4;composite-scale-rotate-opacity.svg;91;60;67;84;62;66;78;69;65;68;62;73;68;63;64;71;79;77;63;80;85;65;82;76;81<br />
</pre><br />
|}<br />
<br />
=== tsvgx ===<br />
* contact: :jwatt, :dholbert<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svgx svgx]<br />
* type: PageLoader<br />
* data: we load the 7 svg pages 25 times, resulting in 7 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#geometric_mean geometric mean] of the 7 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvgx<br />
|SVG-ASAP<br />
|[https://groups.google.com/d/topic/mozilla.dev.platform/RICw5SJhNMo/discussion Replacing tscroll,tsvg with tscrollx,tsvgx]<br />
|}<br />
<br />
An svg-only number that measures SVG rendering performance, with animations or iterations of rendering. This is an ASAP test -- i.e. it iterates in unlimited frame-rate mode thus reflecting the maximum rendering throughput of each test. The reported value is the overall duration the sequence/animation took to complete. To turn on ASAP mode, we set these preferences:<br />
preferences = {'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;hixie-001.xml;562;555;508;521;522;520;499;510;492;514;502;504;500;521;510;506;511;505;495;517;520;512;503;504;502<br />
1;hixie-002.xml;510;613;536;530;536;522;498;505;500;504;498;529;498;509;493;512;501;506;504;499;496;505;508;511;503<br />
2;hixie-003.xml;339;248;242;261;250;241;240;248;258;244;235;240;247;248;239;247;241;245;242;245;251;239;241;240;237<br />
3;hixie-004.xml;709;540;538;536;540;536;552;539;535;535;543;533;536;535;545;537;537;537;537;539;538;535;536;538;536<br />
4;hixie-005.xml;3096;3086;3003;3809;3213;3323;3143;3313;3192;3203;3225;3048;3069;3101;3189;3251;3172;3122;3266;3183;3159;3076;3014;3237;3100<br />
5;hixie-006.xml;5586;5668;5565;5666;5668;5728;5886;5534;5484;5607;5678;5577;5745;5753;5532;5585;5506;5516;5648;5778;5894;5994;5794;5852;5810<br />
6;hixie-007.xml;1823;1743;1739;1743;1744;1787;1802;1788;1782;1766;1787;1750;1748;1788;1766;1779;1767;1794;1758;1768;1781;1773;1765;1798;1805<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* Did you change the dimensions of the content area? Even a little? The tsvgx test seems to be sensitive to changes like this. See {{bug|1375479}}, for example. Usually, these sorts of "regressions" aren't real regressions - they just mean that we need to re-baseline our expectations from the test.<br />
<br />
=== xperf ===<br />
* contact: :aklotz, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xtalos xperf instrumentation]<br />
* type: Pageloader (tp5n) / Startup<br />
* measuring: IO counters from windows (currently, only startup IO is in scope)<br />
* reporting: Summary of read/write counters for disk, network (lower is better)<br />
<br />
Talos will turn orange for 'x' jobs on windows 7 if your changeset accesses files which are not predefined in the [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xtalos/xperf_whitelist.json whitelist]] during startup; specifically, before the "[https://hg.mozilla.org/mozilla-central/file/0eebc33d8593/toolkit/components/startup/nsAppStartup.cpp#l631 sessionstore-windows-restored]" Firefox event. If your job turns orange, you will see a list of files in Treeherder (or in the log file) which have been accessed unexpectedly (similar to this):<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\secmod.db' was accessed and we were not expecting it. DiskReadCount: 6, DiskWriteCount: 0, DiskReadBytes: 16904, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\cert8.db' was accessed and we were not expecting it. DiskReadCount: 4, DiskWriteCount: 0, DiskReadBytes: 33288, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File 'c:\$logfile' was accessed and we were not expecting it. DiskReadCount: 0, DiskWriteCount: 2, DiskReadBytes: 0, DiskWriteBytes: 32768 TEST-UNEXPECTED-FAIL : xperf: File '{profile}\secmod.db' was accessed and we were not expecting it. DiskReadCount: 6, DiskWriteCount: 0, DiskReadBytes: 16904, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\cert8.db' was accessed and we were not expecting it. DiskReadCount: 4, DiskWriteCount: 0, DiskReadBytes: 33288, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File 'c:\$logfile' was accessed and we were not expecting it. DiskReadCount: 0, DiskWriteCount: 2, DiskReadBytes: 0, DiskWriteBytes: 32768 <br />
<br />
In the case that these files are expected to be accessed during startup by your changeset, then we can add them to the [https://bugzilla.mozilla.org/enter_bug.cgi?product=Testing&component=Talos whitelist].<br />
<br />
Xperf runs tp5 while collecting xperf metrics for disk IO and network IO. The providers we listen for are:<br />
* [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xperf.config#l10 'PROC_THREAD', 'LOADER', 'HARD_FAULTS', 'FILENAME', 'FILE_IO', 'FILE_IO_INIT']<br />
<br />
The values we collect during stackwalk are:<br />
* [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xperf.config#l11 'FileRead', 'FileWrite', 'FileFlush']<br />
<br />
== Build Metrics ==<br />
<br />
These are not part of the Talos code, but like Talos they are benchmarks that record data using the graphserver and are analyzed by the same scripts for regressions.<br />
<br />
=== Number of Constructors (num_ctors) ===<br />
<br />
This test runs at build time and measures the number of static initializers in the compiled code. Reducing this number is helpful for [https://blog.mozilla.org/tglek/2010/05/27/startup-backward-constructors/ startup optimizations].<br />
<br />
* https://hg.mozilla.org/build/tools/file/348853aee492/buildfarm/utils/count_ctors.py<br />
** these are run for linux 32+64 opt and pgo builds.<br />
<br />
== Platform Microbenchmark Tests ==<br />
<br />
=== IsASCII and IsUTF8 gtest microbenchmarks ===<br />
<br />
* contact: :hsivonen<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/xpcom/tests/gtest/TestStrings.cpp]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Microbench Microbench]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test is run and measured 5 times<br />
* summarization: take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the 5 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp#43-46 source: MozGTestBench.cpp]<br />
<br />
Test whose name starts with PerfIsASCII test the performance of the XPCOM string IsASCII function with ASCII inputs if different lengths.<br />
<br />
Test whose name starts with PerfIsUTF8 test the performance of the XPCOM string IsUTF8 function with ASCII inputs if different lengths.<br />
<br />
==== Possible regression causes ====<br />
* The --enable-rust-simd accidentally getting turned off in automation.<br />
* Changes to encoding_rs internals.<br />
* LLVM optimizations regressing between updates to the copy of LLVM included in the Rust compiler.<br />
<br />
<br />
=== Microbench ===<br />
* contact: :bholley<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp MozGTestBench.cpp]]<br />
* type: Custom GTest micro-benchmarking<br />
* data: Time taken for a GTest function to execute<br />
* summarization: Not a Talos test. This suite is provides a way to add low level platform performance regression tests for things that are not suited to be tested by Talos. See the [[https://wiki.mozilla.org/Performance_sheriffing/Talos/Sheriffing#Microbench_Policy Microbench Sheriffing Policy]] for some notes on how to treat regressions.<br />
<br />
=== PerfStrip Tests ===<br />
<br />
* contact: :milan<br />
* source: https://dxr.mozilla.org/mozilla-central/source/xpcom/tests/gtest/TestStrings.cpp<br />
* type: Microbench<br />
* reporting: execution time in ms (lower is better) for 100k function calls<br />
* data: each test run and measured 5 times<br />
* summarization:<br />
<br />
PerfStripWhitespace - call StripWhitespace() on 5 different test cases 20k times (each)<br />
<br />
PerfStripCharsWhitespace - call StripChars("\f\t\r\n") on 5 different test cases 20k times (each)<br />
<br />
PerfStripCRLF - call StripCRLF() on 5 different test cases 20k times (each)<br />
<br />
PerfStripCharsCRLF() - call StripChars("\r\n") on 5 different test cases 20k times (each)<br />
<br />
=== Stylo gtest microbenchmarks ===<br />
<br />
* contact: :bholley, :SimonSapin<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/layout/style/test/gtest]<br />
* type: [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests#Microbench Microbench]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test is run and measured 5 times<br />
* summarization: take the [https://wiki.mozilla.org/Performance_sheriffing/Talos/Data#median median] of the 5 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp#43-46 source: MozGTestBench.cpp]<br />
<br />
<br />
Servo_StyleSheet_FromUTF8Bytes_Bench parses a sample stylesheet 20 times with Stylo’s CSS parser that is written in Rust. It starts from an in-memory UTF-8 string, so that I/O or UTF-16-to-UTF-8 conversion is not measured.<br />
<br />
Gecko_nsCSSParser_ParseSheet_Bench does the same with Gecko’s previous CSS parser that is written in C++, for comparison.<br />
<br />
Servo_DeclarationBlock_SetPropertyById_Bench parses the string "10px" with Stylo’s CSS parser and sets it as the value of a property in a declaration block, a million times. This is similar to animations that are based on JavaScript code modifying Element.style instead of using CSS @keyframes.<br />
<br />
Servo_DeclarationBlock_SetPropertyById_WithInitialSpace_Bench is the same, but with the string " 10px" with an initial space. That initial space is less typical of JS animations, but is almost always there in stylesheets or full declarations like "width: 10px". This microbenchmark was used to test the effect of some specific code changes. Regressions here may be acceptable if Servo_StyleSheet_FromUTF8Bytes_Bench is not affected.<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests duplicated & updated from old page]</div>Felipchttps://wiki.mozilla.org/index.php?title=Buildbot/Talos/Tests&diff=1208421Buildbot/Talos/Tests2019-03-04T19:16:37Z<p>Felipc: Update sessionrestore description to match new test meaning (counting time from process start)</p>
<hr />
<div>= Talos Tests =<br />
<br />
== Where to get this information ==<br />
* Talos tests are defined in [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py test.py]<br />
* Treeherder abbreviations are defined in [https://github.com/mozilla/treeherder-service/blob/master/treeherder/etl/buildbot.py#L796 buildbot.py]<br />
* Talos suites are configured for production in [https://hg.mozilla.org/build/buildbot-configs/file/tip/mozilla-tests/config.py config.py]; these names are mapped to Treeherder via regexes: [https://github.com/mozilla/treeherder-service/blob/master/treeherder/etl/buildbot.py#L344 buildbot.py]<br />
<br />
== Talos Test Types ==<br />
<br />
There are two different species of Talos tests:<br />
<br />
* [[#Startup Tests]] : start up the browser and wait for either the load event or the paint event and exit, measuring the time<br />
* [[#Page Load Tests]] : load a manifest of pages<br />
<br />
=== Startup Tests ===<br />
[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test Startup tests] launch Firefox and measure the time to the onload or paint events. We run this in a series of cycles (default to 20) to generate a full set of data. Tests that currently are startup tests are:<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#ts_paint ts_paint]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tpaint tpaint]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tresize tresize]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#sessionrestore.2Fsessionrestore_no_auto_restore.2Fsessionrestore_many_windows sessionrestore[_no_auto_restore/_many_windows]]<br />
<br />
=== Page Load Tests ===<br />
Many of the talos tests use the page loader to load a manifest of pages.<br />
These are tests that load a specific page and measure the time it takes to load the page, scroll the page, draw the page etc. In order to run a page load test, you need a manifest of pages to run. The manifest is simply a list of URLs of pages to load, separated by carriage returns, e.g.:<br />
<pre><br />
https://www.mozilla.org<br />
https://www.mozilla.com<br />
</pre><br />
Example: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svgx/svgx.manifest svgx.manifest]<br />
<br />
Manifests may also specify that a test computes its own data by prepending a <tt>%</tt> in front of the line:<br />
<pre><br />
% https://www.mozilla.org<br />
% https://www.mozilla.com<br />
</pre><br />
Example: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/v8_7/v8.manifest v8.manifest]<br />
<br />
The file you created should be referenced in your test config inside of [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l607 test.py]]. for example, open test.py, and look for the line referring to the test you want to run:<br />
<pre><br />
tpmanifest = '${talos}/page_load_test/svgx/svgx.manifest'<br />
tpcycles = 1 # run a single cycle<br />
tppagecycles = 25 # load each page 25 times before moving onto the next page<br />
</pre><br />
<br />
=== Paint Tests ===<br />
Paint tests are measuring the time to receive both the [https://developer.mozilla.org/en/Gecko-Specific_DOM_Events#MozAfterPaint MozAfterPaint] and OnLoad event instead of just the OnLoad event. Most tests now look for this unless they are an ASAP test, or an internal benchmark<br />
<br />
=== ASAP Tests ===<br />
We have a variety of tests which we now run in ASAP mode where we render as fast as possible (disabling vsync and letting the rendering iterate as fast as it can using `requestAnimationFrame`). In fact we have replaced some original tests with the 'x' versions to make them measure. We do this with RequestAnimationFrame().<br />
<br />
ASAP Tests are:<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tsvg.2C_tsvgx svgx]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tscroll.2C_tscrollx tscrollx]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tp5o_scroll tp5o_scroll]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#tabswitch tabswitch]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#TART.2FCART tart/cart]<br />
<br />
=== Internal Benchmarks ===<br />
Many tests have internal benchmarks which we report as accurately as possible. These are the exceptions to the general rule of calculating the suite score as a geometric mean of the subtest values (which are median values of the raw data from the subtests).<br />
<br />
Tests which are imported benchmarks are:<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#V8.2C_version_7 V8 Version 7]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#kraken Kraken]<br />
* [https://wiki.mozilla.org/Buildbot/Talos/Tests#JSS.2FDomaeo_Tests Dromaeo]<br />
<br />
=== Row Major vs. Column Major ===<br />
<br />
To get more stable numbers, tests are run multiple times. There are two ways that we do this: row major and column major. Row major means each test is run multiple times and then we move to the next test (and run it multiple times). Column major means that each test is run once one after the other and then the whole sequence of tests is run again.<br />
<br />
More background information about these approaches can be found in Joel Maher's [https://elvis314.wordpress.com/2012/03/12/reducing-the-noise-in-talos/ Reducing the Noise in Talos] blog post.<br />
<br />
=== tp5n pages set ===<br />
<br />
Some tests make use of a set of 50 "real world" pages, known as the tp5n set. These pages are not part of the talos repository, but without them the tests which use them won't run.<br />
* To add these pages to your local setup, download [https://people.mozilla.org/~jmaher/taloszips/zips/tp5n.zip tp5n.zip], and extract it such that `'''tp5n'''` ends up as `testing/talos/talos/tests/'''tp5n'''`.<br />
* see also [[#tp5|tp5 test]].<br />
<br />
== Test Descriptions ==<br />
<br />
'''Please keep these in alphabetical order'''<br />
<br />
=== a11y ===<br />
* contact: :davidb, :tbsaunde, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/a11y a11y.manifest]]<br />
* type: PageLoader<br />
* measuring: ???<br />
* data: we load 2 pages 25 times each, collect 2 sets of 25 data points<br />
* summarization<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l627 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 2 subtest results.<br />
<br />
* reporting: test time in ms (lower is better)<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|a11yr<br />
|[[#Row_Major_vs._Column_Major|Row Major]] testing with 25 cycles per page<br />
|}<br />
<br />
This test ensures basic a11y tables and permutations do not cause performance regressions.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;dhtml.html;1584;1637;1643;1665;1741;1529;1647;1645;1692;1647;1542;1750;1654;1649;1541;1656;1674;1645;1645;1740;1558;1652;1654;1656;1654<br />
1;tablemutation.html;398;385;389;391;387;387;385;387;388;385;384;31746;386;387;384;387;389;387;387;387;388;391;386;387;388<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== Basic Compositor Video ===<br />
* contact: :ethlin, :avih<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/video video]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: 12 cycles of the entire benchmark, each subtest will have 12 data points (see below)<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 11; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 24 subtest results.<br />
* '''Lower is better'''<br />
* unit: ms/frame<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|basic_compositor_video<br />
|<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
;0;240p.120fps.mp4_scale_fullscreen_startup;11.112;11.071;11.196;11.157;11.195;11.240;11.196;11.155;11.237;11.074;11.154;11.282<br />
;1;240p.120fps.mp4_scale_fullscreen_inclip;10.995;11.114;11.052;10.991;10.876;11.115;10.995;10.991;10.997;10.994;10.992;10.993<br />
;2;240p.120fps.mp4_scale_1_startup;1.686;1.690;1.694;1.683;1.689;1.692;1.686;1.692;1.689;1.704;1.684;1.686<br />
;3;240p.120fps.mp4_scale_1_inclip;1.666;1.666;1.666;1.668;1.667;1.669;1.667;1.668;1.668;1.667;1.667;1.669<br />
;4;240p.120fps.mp4_scale_1.1_startup;1.677;1.672;1.673;1.677;1.673;1.677;1.672;1.677;1.677;1.671;1.676;1.679<br />
;5;240p.120fps.mp4_scale_1.1_inclip;1.667;1.668;1.666;1.667;1.667;1.668;1.667;1.667;1.667;1.667;1.668;1.668<br />
;6;240p.120fps.mp4_scale_2_startup;1.927;1.908;1.947;1.946;1.902;1.932;1.916;1.936;1.921;1.896;1.908;1.894<br />
;7;240p.120fps.mp4_scale_2_inclip;1.911;1.901;1.896;1.917;1.897;1.921;1.907;1.944;1.904;1.912;1.936;1.913<br />
;8;480p.60fps.webm_scale_fullscreen_startup;11.675;11.587;11.539;11.454;11.723;11.410;11.629;11.410;11.454;11.498;11.540;11.540<br />
;9;480p.60fps.webm_scale_fullscreen_inclip;11.304;11.238;11.370;11.300;11.364;11.368;11.237;11.238;11.434;11.238;11.304;11.368<br />
;10;480p.60fps.webm_scale_1_startup;3.386;3.360;3.391;3.376;3.387;3.402;3.371;3.371;3.356;3.383;3.376;3.356<br />
;11;480p.60fps.webm_scale_1_inclip;3.334;3.334;3.329;3.334;3.334;3.334;3.334;3.334;3.334;3.335;3.334;3.334<br />
;12;480p.60fps.webm_scale_1.1_startup;3.363;3.363;3.368;3.356;3.356;3.379;3.364;3.360;3.360;3.356;3.363;3.356<br />
;13;480p.60fps.webm_scale_1.1_inclip;3.329;3.334;3.329;3.334;3.333;3.334;3.334;3.334;3.340;3.335;3.329;3.335<br />
;14;480p.60fps.webm_scale_2_startup;4.960;4.880;4.847;4.959;4.802;4.863;4.824;4.926;4.847;4.785;4.870;4.855<br />
;15;480p.60fps.webm_scale_2_inclip;4.903;4.786;4.892;4.903;4.822;4.832;4.798;4.857;4.808;4.856;4.926;4.741<br />
;16;1080p.60fps.mp4_scale_fullscreen_startup;14.638;14.495;14.496;14.710;14.781;14.853;14.639;14.637;14.707;14.637;14.711;14.636<br />
;17;1080p.60fps.mp4_scale_fullscreen_inclip;13.795;13.798;13.893;13.702;13.799;13.607;13.798;13.705;13.896;13.896;13.896;14.088<br />
;18;1080p.60fps.mp4_scale_1_startup;6.995;6.851;6.930;6.820;6.915;6.805;6.898;6.866;6.852;6.850;6.803;6.851<br />
;19;1080p.60fps.mp4_scale_1_inclip;6.560;6.625;6.713;6.601;6.645;6.496;6.624;6.538;6.539;6.497;6.580;6.558<br />
;20;1080p.60fps.mp4_scale_1.1_startup;7.354;7.230;7.195;7.300;7.266;7.283;7.196;7.249;7.230;7.230;7.212;7.264<br />
;21;1080p.60fps.mp4_scale_1.1_inclip;6.969;7.222;7.018;6.993;7.045;6.970;6.970;6.807;7.118;6.969;6.997;6.972<br />
;22;1080p.60fps.mp4_scale_2_startup;6.963;6.947;6.914;6.929;6.979;7.010;7.010245327102808;6.914;6.961;7.028;7.012;6.914<br />
;23;1080p.60fps.mp4_scale_2_inclip;6.757;6.694;6.672;6.669;6.737;6.831;6.716;6.715;6.832;6.670;6.672;6.759<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== bloom_basic ===<br />
* contact: :bholley, :rwood, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest perf-reftest]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test loads 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] 5 data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l734 source: test.py]<br />
** suite: identical to subtest<br />
<br />
The bloom_basic test (perf-reftest suite) is a unique talos suite that loads two different test pages: a 'base' page (bloom_basic) and a 'reference' page (bloom_basic_ref), and then compares each of the page load times against eachother to determine the variance.<br />
<br />
Talos runs each of the two pages as if they are stand-alone tests, and then calculates and reports the variance; the test output 'replicates' reported from bloom_basic are actually the comparisons between the 'base' and 'reference' pages for each page load cycle.<br />
<br />
If you wish to see the individual 'base' and 'reference' page results instead of just the reported difference, the 'base_replicates' and 'ref_replicates' can be found in the PERFHERDER_DATA log file output, and in the 'local.json' talos output file when running talos locally. In production, both of the page replicates are also archived in the perfherder-data.json file. The perfherder-data.json file is archived after each run in production, and can be found on the Treeherder Job Details tab when the perf-reftest job symbol is selected.<br />
<br />
Bloom_basic ensures that we correctly fast-reject ancestor selectors that clearly don't<br />
match any ancestor elements. If the bloom filter isn't working correctly,<br />
the 'test' page will take orders of magnitude longer. The 'ref' page will<br />
take somewhat longer, but not nearly as much.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
"replicates": [1.185, 1.69, 1.22, 0.36, 11.26, 3.835, 3.315, 1.355, 3.185, 2.485, 2.2, 1.01, 0.9, 1.22, 1.9,<br />
0.285, 1.52, 0.31, 2.58, 0.725, 2.31, 2.67, 3.295, 1.57, 0.3], "value": 1.7349999999999999, "unit": "ms",<br />
<br />
"base_replicates": [166.94000000000003, 165.16, 165.64000000000001, 165.04000000000002, 167.355, 165.175,<br />
165.325, 165.11, 164.175, 164.78, 165.555, 165.885, 166.83499999999998, 165.76500000000001, 164.375, 166.825,<br />
167.13, 166.425, 169.22500000000002, 164.955, 165.335, 164.45000000000002, 164.85500000000002, 165.005, 166.035]}],<br />
<br />
"ref_replicates": [165.755, 166.85000000000002, 166.85999999999999, 165.4, 178.615, 169.01, 168.64, 166.465,<br />
167.36, 167.265, 167.75500000000002, 166.895, 167.735, 166.985, 166.275, 166.54000000000002, 165.61, 166.115,<br />
166.64499999999998, 165.68, 167.64499999999998, 167.12, 168.15, 166.575, 166.335], <br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== bloom_basic_singleton ===<br />
* contact: :bholley, :rwood, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/perf-reftest-singletons perf-reftest-singletons]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test loads 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] 5 data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l734 source: test.py]<br />
** suite: identical to subtest<br />
<br />
The bloom_basic_singleton test (perf-reftest-singletons suite) runs the 'base' page (bloom_basic) test individually, and reports the values for that single test page alone, NOT the comparison of two different pages.<br />
<br />
Bloom_basic ensures that we correctly fast-reject ancestor selectors that clearly don't<br />
match any ancestor elements. If the bloom filter isn't working correctly,<br />
the 'test' page will take orders of magnitude longer. The 'ref' page will<br />
take somewhat longer, but not nearly as much.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
bloombasic.html;88.34000000000003;88.66499999999999;94.815;92.60500000000002;95.30000000000001;<br />
98.80000000000001;91.975;87.73500000000001;86.925;86.965;93.00500000000001;98.93;87.45000000000002;<br />
87.14500000000001;92.78500000000001;86.96499999999999;98.32000000000001;97.485;90.67000000000002;<br />
86.72500000000001;95.665;100.67;101.095;94.32;91.87<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== cpstartup ===<br />
* contact: :mconley<br />
* measuring: Time from opening a new tab (which creates a new content process) to having that new content process be ready to load URLs.<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/cpstartup cpstartup]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* bug: {{bug|1336389}}<br />
* data: 20 cycles of the entire benchmark<br />
* '''Lower is better'''<br />
* unit: ms<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;content-process-startup;877;737;687;688;802;697;794;685;694;688;794;669;699;684;690;849;687;873;694;689<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
<br />
=== DAMP ===<br />
<br />
* contact: :bgrins, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/devtools damp]<br />
* type: PageLoader<br />
* measuring: Developer Tools toolbox startup, shutdown, and reload performance<br />
* reporting: intervals in ms (lower is better) - see below for details<br />
* data: there are 36 reported subtests from DAMP which we load 25 times, resulting in 36 sets of 25 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 24 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l356 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 36 subtest results.<br />
<br />
To run this locally, you'll need to pull down the tp5 page set and run it in a local web server. See the [https://wiki.mozilla.org/Buildbot/Talos/Tests#tp5 tp5 section] or contact jmaher for more information.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;simple.webconsole.open.DAMP;1198.86;354.38;314.44;337.32;344.73;339.05;345.55;358.37;314.89;353.73;324.02;339.45;304.63;335.50;316.69;341.05;353.45;353.73;342.28;344.63;357.62;375.18;326.08;363.10;357.30<br />
1;simple.webconsole.reload.DAMP;44.60;41.21;25.62;29.85;38.10;42.29;38.25;40.14;26.95;39.24;40.32;34.67;34.64;44.88;32.51;42.09;28.04;43.05;40.62;36.56;42.44;44.11;38.69;29.10;42.00<br />
2;simple.webconsole.close.DAMP;27.26;26.97;25.45;27.82;25.98;26.05;38.00;26.89;24.90;26.61;24.90;27.22;26.95;25.18;24.24;25.60;28.91;26.90;25.57;26.04;26.79;27.33;25.76;26.47;27.43<br />
3;simple.inspector.open.DAMP;507.80;442.03;424.93;444.62;412.94;451.18;441.39;435.83;441.27;460.69;440.93;413.13;418.73;443.41;413.93;447.34;434.69;459.24;453.60;412.58;445.41;466.34;441.89;417.59;428.82<br />
4;simple.inspector.reload.DAMP;169.45;165.11;163.93;181.12;167.86;164.67;170.34;173.12;165.24;180.59;176.72;187.42;170.14;190.35;176.59;155.00;151.66;174.40;169.46;163.85;190.93;217.00;186.25;181.31;161.13<br />
5;simple.inspector.close.DAMP;44.40;42.28;42.71;47.21;41.74;41.24;42.94;43.73;48.24;43.04;48.61;42.49;45.93;41.36;43.83;42.43;41.81;43.93;41.38;40.98;49.76;50.86;43.49;48.99;44.02<br />
6;simple.jsdebugger.open.DAMP;642.59;464.02;540.62;445.46;471.09;466.57;466.70;511.91;424.12;480.70;448.37;477.51;488.99;437.97;442.32;459.03;421.54;467.99;472.78;440.27;431.47;454.76;436.86;453.61;485.59<br />
7;simple.jsdebugger.reload.DAMP;51.65;55.46;225.46;53.32;58.78;53.23;54.39;51.59;55.46;48.03;50.70;46.34;230.94;53.71;54.23;53.01;61.03;51.23;51.45;293.01;56.93;51.44;59.85;63.35;57.44<br />
8;simple.jsdebugger.close.DAMP;29.12;30.76;40.34;32.09;31.26;32.30;33.95;31.89;29.68;31.39;32.09;30.36;44.63;32.33;30.16;32.43;30.89;30.85;31.99;49.86;30.94;44.63;32.54;29.79;33.15<br />
9;simple.styleeditor.open.DAMP;758.54;896.93;821.17;1026.24;887.14;867.39;927.86;962.80;740.40;919.39;741.01;925.21;807.39;1051.47;729.04;1095.78;755.03;888.70;900.52;810.30;1090.09;869.72;737.44;893.16;927.72<br />
10;simple.styleeditor.reload.DAMP;57.32;178.13;59.23;60.82;71.45;78.86;74.35;60.11;66.43;77.41;61.96;69.22;65.97;45.53;67.88;74.76;124.61;60.01;36.66;59.24;65.01;165.68;34.61;69.02;71.42<br />
11;simple.styleeditor.close.DAMP;28.28;56.50;36.18;30.00;36.32;34.85;35.33;36.24;25.45;36.72;26.53;36.90;28.88;30.94;26.56;31.34;47.79;30.90;30.52;27.95;30.75;56.28;26.76;30.25;37.42<br />
12;simple.performance.open.DAMP;444.28;357.87;331.17;335.16;585.71;402.99;504.58;466.95;272.98;427.54;345.60;441.53;319.99;327.91;312.94;349.79;399.51;465.60;418.42;295.14;362.06;363.11;445.71;634.96;500.83<br />
13;simple.performance.reload.DAMP;38.07;33.44;35.99;70.57;64.04;106.47;148.31;29.60;68.47;28.95;148.46;75.92;32.15;93.72;36.17;44.13;75.11;154.76;98.28;75.16;29.39;36.68;113.16;64.05;135.60<br />
14;simple.performance.close.DAMP;23.98;25.49;24.19;24.61;27.56;40.33;33.85;25.13;22.62;25.28;41.84;25.09;26.39;25.20;23.76;25.44;25.92;30.40;40.77;25.41;24.57;26.15;43.65;28.54;30.16<br />
15;simple.netmonitor.open.DAMP;438.85;350.64;318.04;329.12;341.91;352.33;344.05;334.15;514.57;327.95;471.50;334.55;344.94;364.39;727.56;374.48;339.45;344.31;345.61;329.78;325.74;334.74;350.36;342.85;344.64<br />
16;simple.netmonitor.reload.DAMP;59.68;47.50;69.37;61.18;76.89;83.22;68.11;81.24;56.15;68.20;32.41;81.22;81.62;44.30;39.52;29.60;86.07;71.18;76.32;79.93;79.63;82.15;83.58;87.04;82.97<br />
17;simple.netmonitor.close.DAMP;38.42;39.32;52.56;43.37;48.08;40.62;51.12;41.11;59.54;43.29;41.72;40.85;51.61;49.61;51.39;44.91;40.36;41.10;45.43;42.15;42.63;40.69;41.21;44.04;41.95<br />
18;complicated.webconsole.open.DAMP;589.97;505.93;480.71;530.93;460.60;479.63;485.33;489.08;605.28;457.12;463.95;493.28;680.05;478.72;504.47;578.69;488.66;485.34;504.94;460.67;548.38;474.98;470.33;471.34;464.58<br />
19;complicated.webconsole.reload.DAMP;2707.20;2700.17;2596.02;2728.09;2905.51;2716.65;2657.68;2707.74;2567.86;2726.36;2650.92;2839.14;2620.34;2718.36;2595.22;2686.28;2703.48;2609.75;2686.41;2577.93;2634.47;2745.56;2655.89;2540.09;2649.18<br />
20;complicated.webconsole.close.DAMP;623.56;570.80;636.63;502.49;565.83;537.93;525.46;565.78;532.90;562.66;525.42;490.88;611.99;486.45;528.60;505.35;480.55;500.75;532.75;480.91;488.69;548.77;535.31;477.92;519.84<br />
21;complicated.inspector.open.DAMP;1233.26;753.57;742.74;953.11;653.29;692.66;653.75;767.02;840.68;707.56;713.95;685.79;690.21;1020.47;685.67;721.69;1063.72;695.55;702.15;760.91;853.14;660.12;729.16;1044.86;724.34<br />
22;complicated.inspector.reload.DAMP;2384.90;2436.35;2356.11;2436.58;2372.96;2558.86;2543.76;2351.03;2411.95;2358.04;2413.27;2339.85;2373.11;2338.94;2418.88;2360.87;2349.09;2498.96;2577.73;2445.07;2354.88;2424.90;2696.10;2362.39;2493.29<br />
23;complicated.inspector.close.DAMP;541.96;509.38;476.91;456.48;545.48;634.04;603.10;488.09;599.20;480.45;617.93;420.39;514.92;439.99;727.41;469.04;458.59;539.74;611.55;725.03;473.36;484.60;481.46;458.93;554.76<br />
24;complicated.jsdebugger.open.DAMP;644.97;578.41;542.23;595.94;704.80;603.08;689.18;552.99;597.23;584.17;682.14;758.16;791.71;738.43;640.30;809.26;704.85;601.32;696.10;683.44;796.34;657.25;631.89;739.96;641.82<br />
25;complicated.jsdebugger.reload.DAMP;2676.82;2650.84;2687.78;2401.23;3421.32;2450.91;2464.13;2286.40;2399.40;2415.97;2481.48;2827.69;2652.03;2554.63;2631.36;2443.83;2564.73;2466.22;2597.57;2552.73;2539.42;2481.21;2319.50;2539.00;2576.43<br />
26;complicated.jsdebugger.close.DAMP;795.68;616.48;598.88;536.77;435.02;635.61;558.67;841.64;613.48;886.60;581.38;580.96;571.40;605.34;671.00;882.02;619.01;579.63;643.05;656.78;699.64;928.99;549.76;560.96;676.32<br />
27;complicated.styleeditor.open.DAMP;2327.30;2494.19;2190.29;2205.60;2198.11;2509.01;2189.79;2532.05;2178.03;2207.75;2224.96;2665.84;2294.40;2645.44;2661.41;2364.60;2395.36;2582.72;2872.03;2679.29;2561.24;2330.11;2580.16;2510.36;2860.83<br />
28;complicated.styleeditor.reload.DAMP;2218.46;2335.18;2284.20;2345.05;2286.98;2453.47;2506.97;2661.19;2529.51;2289.78;2564.15;2608.24;2270.77;2362.17;2287.31;2300.19;2331.56;2300.86;2239.27;2231.33;2476.14;2286.28;2583.24;2540.29;2259.67<br />
29;complicated.styleeditor.close.DAMP;302.67;343.10;313.15;305.60;317.92;328.44;350.70;370.12;339.77;308.72;312.71;320.63;305.52;316.69;324.92;306.60;313.65;312.17;326.26;321.45;334.56;307.38;312.95;350.94;339.36<br />
30;complicated.performance.open.DAMP;477.99;537.96;564.85;515.05;502.03;515.58;492.80;689.06;448.76;588.91;509.76;485.39;548.17;479.14;638.67;535.86;541.61;611.52;554.72;665.37;694.04;470.60;746.16;547.85;700.02<br />
31;complicated.performance.reload.DAMP;2258.31;2345.74;2509.24;2579.71;2367.94;2365.94;2260.86;2324.23;2579.01;2412.63;2540.38;2069.80;2534.91;2443.48;2193.01;2442.99;2422.42;2475.35;2076.48;2092.95;2444.53;2353.86;2154.28;2354.61;2104.82<br />
32;complicated.performance.close.DAMP;334.44;516.66;432.49;341.29;309.30;365.20;332.16;311.42;370.81;301.81;381.13;299.39;317.60;314.10;372.44;314.76;306.24;349.85;382.08;352.53;309.40;298.44;314.10;315.44;405.22<br />
33;complicated.netmonitor.open.DAMP;469.70;597.87;468.36;823.09;696.39;477.19;487.78;495.92;587.89;471.48;555.02;507.45;883.33;522.15;756.86;713.64;593.82;715.13;477.15;717.85;586.79;556.97;631.43;629.55;581.16<br />
34;complicated.netmonitor.reload.DAMP;4033.55;3577.36;3655.61;3721.24;3874.29;3977.92;3778.62;3825.60;3984.65;3707.91;3985.24;3565.21;3702.40;3956.70;3627.14;3916.11;3929.11;3934.06;3590.60;3628.39;3618.84;3579.52;3953.04;3781.01;3682.69<br />
35;complicated.netmonitor.close.DAMP;1042.98;920.21;928.19;940.38;950.25;1043.61;1078.16;1077.38;1132.91;1095.05;1176.31;1256.83;1143.14;1234.61;1248.97;1242.29;1378.63;1312.74;1371.48;1373.15;1544.55;1422.51;1549.48;1616.55;1506.58<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== displaylist_mutate ===<br />
* contact: :dvander, :mattwoodrow<br />
* source: [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/layout/benchmarks/displaylist_mutate.html displaylist_mutate.html]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the displaylist_mutate.html page five times, measuring pageload each time, generating 5 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 4; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This measures the amount of time it takes to render a page after changing its display list. The page has a large number of display list items (10,000), and mutates one every frame. The goal of the test is to make displaylist construction a bottleneck, rather than painting or other factors, and thus improvements or regressions to displaylist construction will be visible. The test runs in ASAP mode to maximize framerate, and the result is how quickly the test was able to mutate and re-paint 600 items, one during each frame.<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== Dromaeo Tests ===<br />
<br />
Dromaeo suite of tests for JavaScript performance testing. See the [https://wiki.mozilla.org/Dromaeo Dromaeo wiki] for more information. <br />
<br />
This suite is divided into several sub-suites. <br />
<br />
Each sub-suite is divided into tests, and each test is divided into sub-tests. Each sub-test takes some (in theory) fixed piece of work and measures how many times that piece of work can be performed in one second. The score for a test is then the geometric mean of the runs/second numbers for its sub-tests. The score for a sub-suite is the geometric mean of the scores for its tests.<br />
<br />
==== Dromaeo CSS ====<br />
* contact: :bz, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/dromaeo css.manifest]]<br />
* type: PageLoader<br />
* reporting: speed in test runs per second (higher is better)<br />
* data: Dromaeo has 6 subtests which run internal benchmarks, each benchmark reports about 180 raw data points each<br />
summarization:<br />
* subtest: Dromaeo is a custom benchmark which has a lot of micro tests inside each subtest, because of this we use a custom [https://wiki.mozilla.org/Buildbot/Talos/Data#dromaeo dromaeo filter] to summarize the subtest. Each micro test produces 5 data points and for each 5 data points we take the mean, leaving 36 data points to represent the subtest (assuming 180 points). These 36 micro test means, are then run through a geometric_mean to produce a single number for the dromaeo subtest. [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l527 source: filter.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 6 subtest results.<br />
<br />
Each page in the manifest is part of the dromaeo css benchmark. Each page measures the performance of searching the DOM for nodes matching various CSS selectors, using different libraries for the selector implementation (jQuery, Dojo, Mootools, ExtJS, Prototype, and Yahoo UI).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;dojo.html;2209.83;2269.68;2275.47;2278.83;2279.81;4224.43;4344.96;4346.74;4428.69;4459.82;4392.80;4396.38;4412.54;4414.34;4415.62;3909.94;4027.96;4069.08;4099.63;4099.94;4017.70;4018.96;4054.25;4068.74;4081.31;3825.10;3984.20;4053.23;4074.59;4106.63;3893.88;3971.80;4031.15;4046.68;4048.31;3978.24;4010.16;4046.66;4051.68;4056.37;4189.50;4287.98;4390.98;4449.89;4450.20;4536.23;4557.82;4588.40;4662.58;4664.42;4675.51;4693.13;4743.72;4758.12;4764.67;4138.00;4251.60;4346.22;4410.12;4417.23;4677.53;4702.48;4714.62;4802.59;4805.33;4445.07;4539.91;4598.93;4605.45;4618.79;4434.40;4543.09;4618.56;4683.98;4689.51;4485.26;4496.75;4511.23;4600.86;4602.08;4567.52;4608.33;4615.56;4619.31;4622.79;3469.44;3544.11;3605.80;3647.74;3658.56;3101.88;3126.41;3147.73;3159.92;3170.73;3672.28;3686.40;3730.74;3748.89;3753.59;4411.71;4521.50;4633.98;4702.72;4708.76;3626.62;3646.71;3713.07;3713.13;3718.91;3846.17;3846.25;3913.61;3914.63;3916.22;3982.88;4112.98;4132.26;4194.92;4201.54;4472.64;4575.22;4644.74;4645.42;4665.51;4120.13;4142.88;4171.29;4208.43;4211.03;4405.36;4517.89;4537.50;4637.77;4644.28;4548.25;4581.20;4614.54;4658.42;4671.09;4452.78;4460.09;4494.06;4521.30;4522.37;4252.81;4350.72;4364.93;4441.40;4492.78;4251.34;4346.70;4355.00;4358.89;4365.72;4494.64;4511.03;4582.11;4591.79;4592.36;4207.54;4308.94;4309.14;4406.71;4474.46<br />
1;ext.html;479.65;486.21;489.61;492.94;495.81;24454.14;33580.33;34089.15;34182.83;34186.15;34690.83;35050.30;35051.30;35071.65;35099.82;5758.22;5872.32;6389.62;6525.38;6555.57;8303.96;8532.96;8540.91;8544.00;8571.49;8360.79;8408.79;8432.96;8447.28;8447.83;5817.71;5932.67;8371.83;8389.20;8643.44;7983.80;8073.27;8073.84;8076.48;8078.15;24596.00;32518.84;32787.34;32830.51;32861.00;2220.87;2853.84;3333.53;3345.17;3445.47;24785.75;24971.75;25044.25;25707.61;25799.00;2464.69;2481.89;2527.57;2534.65;2534.92;217793.00;219347.90;219495.00;220059.00;297168.00;40556.19;53062.47;54275.73;54276.00;54440.37;50636.75;50833.49;50983.49;51028.49;51032.74;10746.36;10972.45;11450.37;11692.18;11797.76;8402.58;8415.79;8418.66;8426.75;8428.16;16768.75;16896.00;16925.24;16945.58;17018.15;7047.68;7263.13;7313.16;7337.38;7383.22;713.88;723.72;751.47;861.35;931.00;25454.36;25644.90;25801.87;25992.61;25995.00;819.89;851.23;852.00;886.59;909.89;14325.79;15064.92;15240.39;15431.23;15510.61;452382.00;458194.00;458707.00;459226.00;459601.00;45699.54;46244.54;46270.54;46271.54;46319.00;1073.94;1080.66;1083.35;1085.84;1087.74;26622.33;27807.58;27856.72;28040.58;28217.86;37229.81;37683.81;37710.81;37746.62;37749.81;220386.00;222903.00;240808.00;247394.00;247578.00;25567.00;25568.49;25610.74;25650.74;25710.23;26466.21;28718.71;36175.64;36529.27;36556.00;26676.00;30757.69;31965.84;34521.83;34622.65;32791.18;32884.00;33194.83;33720.16;34192.66;32150.36;32520.02;32851.18;32947.18;33128.01;29472.85;30214.09;30708.54;30999.23;32879.51;23822.88;23978.28;24358.88;24470.88;24515.51<br />
2;jquery.html;285.42;288.57;292.66;293.75;294.14;10313.00;10688.20;13659.11;13968.65;14003.93;13488.39;13967.51;13980.79;14545.13;15059.77;4361.37;4488.35;4489.44;4492.24;4496.69;3314.32;3445.07;4412.51;5020.75;5216.66;5113.49;5136.56;5141.31;5143.87;5156.28;5055.95;5135.02;5138.64;5215.82;5226.48;4550.98;4551.59;4553.07;4557.77;4559.16;18339.63;18731.53;18738.63;18741.16;18806.15;1474.99;1538.31;1557.52;1703.67;1772.16;12209.94;12335.44;12358.32;12516.50;12651.94;1520.94;1522.62;1541.37;1584.71;1642.50;57533.00;59169.41;59436.11;59758.70;59872.40;8669.13;8789.34;8994.37;9016.05;9064.95;11047.39;11058.39;11063.78;11077.89;11082.78;6401.81;6426.26;6504.35;6518.25;6529.61;6250.22;6280.65;6304.59;6318.91;6328.72;5144.28;5228.40;5236.21;5271.26;5273.79;1398.91;1450.05;1456.39;1494.66;1519.42;727.85;766.62;844.35;858.49;904.87;9912.55;10249.54;14936.71;16566.50;16685.00;378.04;381.34;381.44;385.67;387.23;5362.60;5392.78;5397.14;5497.12;5514.83;213309.00;318297.00;320682.00;322681.00;322707.00;56357.44;67892.66;68329.66;68463.32;69506.00;418.91;424.49;425.19;425.28;426.40;9363.39;9559.95;9644.00;9737.07;9752.80;33170.83;33677.33;34950.83;35607.47;35765.82;44079.34;44588.55;45396.00;46309.00;46427.30;6302.87;6586.51;6607.08;6637.44;6642.17;9776.17;9790.46;9931.90;10391.79;10392.43;8739.26;8838.38;8870.20;8911.50;8955.15;8422.83;8786.21;8914.00;9135.82;9145.36;8945.28;9028.37;9035.23;9116.64;9137.86;6433.90;6688.73;6822.11;6830.08;6833.90;8575.23;8599.87;8610.91;8655.65;9123.91<br />
3;mootools.html;1161.69;1333.31;1425.89;1500.37;1557.37;6706.93;7648.46;8020.04;8031.36;8049.64;7861.80;7972.40;7978.12;7993.32;7993.88;1838.83;1862.93;1864.11;1866.28;1866.71;1909.93;1921.83;1928.53;1954.07;1969.98;1808.68;1820.01;1821.30;1825.92;1826.91;1849.07;1904.99;1908.26;1911.24;1912.50;1856.86;1871.78;1873.72;1878.54;1929.57;6506.67;6752.73;7799.22;7830.41;7855.18;4117.18;4262.42;4267.30;4268.27;4269.62;2720.56;2795.36;2840.08;2840.79;2842.62;699.12;703.75;774.36;791.73;798.18;11096.22;11126.39;11132.72;11147.16;11157.44;3934.33;4067.37;4140.94;4149.75;4150.38;9042.82;9077.46;9083.55;9084.41;9086.41;4431.47;4432.84;4437.33;4438.40;4440.44;3935.67;3937.31;3937.43;3940.53;3976.68;3247.17;3307.90;3319.90;3323.32;3330.60;1001.90;1016.87;1021.12;1021.67;1022.05;1016.34;1019.09;1036.62;1056.81;1057.76;7345.56;7348.56;7391.89;7393.85;7406.30;374.27;392.53;394.73;397.28;398.26;5588.58;5653.21;5655.07;5659.15;5660.66;9775.41;9860.51;9938.40;9959.85;9968.45;9733.42;9904.31;9953.05;9960.55;9967.20;6399.26;6580.11;7245.93;7336.96;7386.78;7162.00;7245.49;7249.38;7250.75;7304.63;8458.24;8583.40;8651.57;8717.39;8742.39;8896.42;8904.60;8927.96;8960.73;8961.82;7483.48;7747.77;7763.46;7766.34;7773.07;7784.00;7821.41;7827.18;7849.18;7855.49;7012.16;7141.57;7250.09;7253.13;7335.89;6977.97;7015.51;7042.40;7204.35;7237.20;7160.46;7293.23;7321.27;7321.82;7331.16;6268.69;6324.11;6325.78;6328.56;6342.40;6554.54;6625.30;6646.00;6650.30;6674.90<br />
4;prototype.html;237.05;251.94;256.61;259.65;263.52;4488.53;4676.88;4745.24;4745.50;4748.81;4648.47;4660.21;4666.58;4671.88;4677.32;3602.84;3611.40;3613.69;3615.69;3619.15;3604.41;3619.44;3623.24;3627.66;3628.11;3526.59;3589.35;3615.93;3616.35;3622.80;3624.69;3626.84;3628.47;3631.22;3632.15;3184.76;3186.11;3187.16;3187.78;3189.35;4353.43;4466.46;4482.57;4616.72;4617.88;4012.18;4034.84;4047.07;4047.82;4055.29;4815.11;4815.21;4816.11;4817.08;4820.40;3300.31;3345.18;3369.55;3420.98;3447.97;5026.99;5033.82;5034.50;5034.95;5038.97;3516.72;3520.79;3520.95;3521.81;3523.47;3565.29;3574.23;3574.37;3575.82;3578.37;4045.19;4053.51;4056.76;4058.76;4059.00;4714.67;4868.66;4869.66;4873.54;4878.29;1278.20;1300.92;1301.13;1301.17;1302.47;868.94;871.16;878.50;883.40;884.85;3874.71;3878.44;3881.61;3882.67;3886.92;4959.83;4968.45;4969.50;4971.38;4972.30;3862.69;3870.15;3871.79;3873.83;3878.07;2690.15;2711.66;2714.42;2715.39;2715.89;4349.04;4349.63;4351.33;4353.59;4355.46;4950.95;5101.08;5107.69;5120.21;5120.39;4336.63;4360.76;4361.96;4362.28;4365.43;4928.75;4939.41;4939.56;4943.95;4966.78;4869.03;4886.24;4888.85;4889.14;4895.76;4362.39;4362.78;4363.96;4365.00;4365.08;3408.00;3470.03;3476.37;3546.65;3547.34;4905.73;4926.21;4926.70;4926.93;4929.43;4682.88;4694.91;4696.30;4697.06;4699.69;4688.86;4691.25;4691.46;4698.37;4699.41;4628.07;4631.31;4633.42;4634.00;4636.00;4699.44;4796.02;4808.83;4809.95;4813.52;4719.10;4720.41;4722.95;4723.03;4723.53<br />
5;yui.html;569.72;602.22;627.02;647.49;692.84;9978.30;10117.54;10121.70;10129.75;10137.24;9278.68;9291.44;9349.00;9370.53;9375.86;475.79;481.92;606.51;607.42;618.73;617.68;618.89;623.30;626.58;631.85;501.81;649.76;653.22;655.69;656.71;510.62;645.56;657.42;657.88;658.39;475.53;476.77;476.80;476.92;476.96;9895.16;9976.15;9988.25;9989.85;9996.40;9483.15;9545.75;9676.37;9808.51;10360.22;8331.29;8397.87;8538.06;8714.69;8803.78;2748.93;2800.93;2802.59;2857.33;2864.46;33757.16;33804.83;33859.32;33931.00;33991.32;7818.65;7846.92;7892.09;8170.55;8217.75;13691.38;13692.86;13693.25;13698.73;13706.66;5378.70;5517.83;5615.86;5616.16;5624.00;2985.63;3002.97;3003.07;3037.73;3038.87;2459.10;2502.52;2504.91;2507.07;2507.26;396.62;405.78;411.43;412.03;412.56;543.45;550.75;568.50;578.59;592.25;6762.21;6901.72;6984.27;7064.22;7122.29;454.78;519.40;539.29;543.96;566.16;3235.39;3266.13;3453.26;3498.79;3518.54;39079.22;39722.80;41350.59;41422.38;41540.17;34435.14;34606.31;34623.31;34661.00;34672.48;29449.12;29530.11;30507.24;31938.52;31961.52;7449.33;7524.62;7629.73;7712.96;7796.42;22917.43;23319.00;23441.41;23582.88;23583.53;29780.40;30272.55;31761.00;31765.84;31839.36;6112.45;6218.35;6476.68;6603.54;6793.66;10385.79;10471.69;10518.53;10552.74;10644.95;9563.52;9571.33;9617.09;9946.35;9976.80;9406.11;9518.48;9806.46;10102.44;10173.19;9482.43;9550.28;9878.21;9902.90;9951.45;8343.17;8511.00;8606.00;8750.21;8869.29;8234.96;8462.70;8473.49;8499.58;8808.91<br />
</pre><br />
|}<br />
<br />
===== Possible regression causes =====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
==== Dromaeo DOM (Linux64 only) ====<br />
* contact: :bz, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/dromaeo dom.manifest]]<br />
* type: PageLoader<br />
* data: see Dromaeo DOM<br />
* reporting: speed in test runs per second (higher is better)<br />
<br />
Each page in the manifest is part of the dromaeo dom benchmark. These are the specific areas that Dromaeo DOM covers:<br />
<br />
===== DOM Attributes =====<br />
Measures performance of getting and setting a DOM attribute, both via <code>getAttribute</code> and via a reflecting DOM property. Also throws in some expando getting/setting for good measure.<br />
<br />
====== Possible regression causes ======<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
===== DOM Modification =====<br />
Measures performance of various things that modify the DOM tree: creating element and text nodes and inserting them into the DOM.<br />
<br />
====== Possible regression causes ======<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
===== DOM Query =====<br />
Measures performance of various methods of looking for nodes in the DOM: <code>getElementById</code>, <code>getElementsByTagName</code>, and so forth.<br />
<br />
====== Possible regression causes ======<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
===== DOM Traversal =====<br />
Measures performance of various accessors (<code>childNodes</code>, <code>firstChild</code>, etc) that would be used when doing a walk over the DOM tree.<br />
<br />
====== Possible regression causes ======<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
Please see Dromaeo CSS for examples of data.<br />
<br />
=== glterrain ===<br />
* contact: :avih :jgilbert<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/webgl/benchmarks/terrain glterrain]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the perftest.html page (which generates 4 metrics to track) 25 times, resulting in 4 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l381 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 4 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|glterrain<br />
|Measures average frames interval while animating a simple WebGL scene<br />
|}<br />
<br />
This tests animates a simple WebGL scene (static textured landscape, one moving light source, rotating viewport) and measure the frames throughput (expressed as average interval) over 100 frames. It runs in ASAP mode (vsync off) and measures the same scene 4 times - for all combination of antialiasing and alpha. It reports the results as 4 values - one for each combination. Lower results are better.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;0.WebGL-terrain-alpha-no-AA-no;19.8189;20.57185;20.5069;21.09645;20.40045;20.89025;20.34285;20.8525;20.45845;20.6499;19.94505;20.05285;20.316049;19.46745;19.46135;20.63865;20.4789;19.97015;19.9546;20.40365;20.74385;20.828649;20.78295;20.51685;20.97069<br />
1;1.WebGL-terrain-alpha-no-AA-yes;23.0464;23.5234;23.34595;23.40609;22.54349;22.0554;22.7933;23.00685;23.023649;22.51255;23.25975;23.65819;22.572249;22.9195;22.44325;22.95015;23.3567;23.02089;22.1459;23.04545;23.09235;23.40855;23.3296;23.18849;23.273249<br />
2;2.WebGL-terrain-alpha-yes-AA-no;24.01795;23.889449;24.2683;24.34649;23.0562;24.02275;23.54819;24.1874;23.93545;23.53629;23.305149;23.62459;24.01589;24.06405;24.143449;23.998549;24.08205;24.26989;24.0736;24.2346;24.01145;23.7817;23.90785;24.7118;24.2834<br />
3;3.WebGL-terrain-alpha-yes-AA-yes;25.91375;25.87005;25.64875;25.15615;25.5475;24.497449;24.56385;25.57529;25.54889;26.31559;24.143949;25.09895;24.75049;25.2087;25.52385;25.9017;25.4439;24.3495;25.9269;25.734449;26.4126;25.547449;25.667249;25.679349;25.9565<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== glvideo ===<br />
* contact: :daoshengmu<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/webgl/benchmarks/video glvideo]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: 5 cycles of the entire benchmark, each subtest will have 5 data points (see below)<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 4; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l522 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 4 subtest results.<br />
<br />
* '''Lower is better'''<br />
* unit: ms/100 ticks<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|glvideo<br />
|WebGL video texture update with 1080p video. Measures mean tick time across 100 ticks.<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;Mean tick time across 100 ticks: ;54.6916;49.0534;51.21645;51.239650000000005;52.44295<br />
</pre><br />
|}<br />
<br />
This test playbacks a video file and ask WebGL to draw video frames as WebGL textures for 100 ticks. It collects the mean tick time across 100 ticks to measure how much time it will spend for a video texture upload to be a WebGL texture (gl.texImage2D). We run it for 5 times and ignore the first found. Lower results are better.<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== IsASCII and IsUTF8 gtest microbenchmarks ===<br />
<br />
* contact: :hsivonen<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/xpcom/tests/gtest/TestStrings.cpp]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Microbench Microbench]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test is run and measured 5 times<br />
* summarization: take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the 5 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp#43-46 source: MozGTestBench.cpp]<br />
<br />
Test whose name starts with PerfIsASCII test the performance of the XPCOM string IsASCII function with ASCII inputs if different lengths.<br />
<br />
Test whose name starts with PerfIsUTF8 test the performance of the XPCOM string IsUTF8 function with ASCII inputs if different lengths.<br />
<br />
==== Possible regression causes ====<br />
* The --enable-rust-simd accidentally getting turned off in automation.<br />
* Changes to encoding_rs internals.<br />
* LLVM optimizations regressing between updates to the copy of LLVM included in the Rust compiler.<br />
<br />
=== kraken ===<br />
* contact: :h4writer, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/kraken kraken.manifest]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* measuring: JavaScript performance<br />
* reporting: Total time for all tests, in ms (lower is better)<br />
* data: there are 14 subtests in kraken, each subtest is an internal benchmark and generates 10 data points, or 14 sets of 10 data points.<br />
* summarization:<br />
** subtest: For all of the 10 data points, we take the [https://wiki.mozilla.org/Buildbot/Talos/Data#mean mean] to report a single number.<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 14 subtest results.<br />
<br />
This is the [[Kraken]] javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;ai-astar;100;95;98;102;101;99;97;98;98;102<br />
1;audio-beat-detection;147;147;191;173;145;139;186;143;183;140<br />
2;audio-dft;161;156;158;157;160;158;160;160;159;158<br />
3;audio-fft;82;83;83;154;83;83;82;83;160;82<br />
4;audio-oscillator;96;96;141;95;95;95;129;96;95;134<br />
5;imaging-gaussian-blur;116;115;116;115;115;115;115;115;117;116<br />
6;imaging-darkroom;166;164;166;165;166;166;165;165;165;166<br />
7;imaging-desaturate;87;87;87;87;88;87;88;87;87;87<br />
8;json-parse-financial;75;77;77;76;77;76;77;76;77;77<br />
9;json-stringify-tinderbox;79;79;80;79;78;79;79;78;79;79<br />
10;stanford-crypto-aes;98;97;96;98;98;98;98;98;113;95<br />
11;stanford-crypto-ccm;130;138;130;127;137;134;134;132;147;129<br />
12;stanford-crypto-pbkdf2;176;187;183;183;176;174;181;187;175;173<br />
13;stanford-crypto-sha256-iterative;86;85;83;84;86;85;85;86;83;83<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== Microbench ===<br />
* contact: :benwa<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp MozGTestBench.cpp]]<br />
* type: Custom GTest micro-benchmarking<br />
* data: Time taken for a GTest function to execute<br />
* summarization: Not a Talos test. This suite is provides a way to add low level platform performance regression tests for things that are not suited to be tested by Talos. See the [[https://wiki.mozilla.org/Buildbot/Talos/Sheriffing#Microbench_Policy Microbench Sheriffing Policy]] for some notes on how to treat regressions.<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== Other data ===<br />
<br />
These are not part of the Talos code, but like Talos they are benchmarks that record data using the graphserver and are analyzed by the same scripts for regressions.<br />
<br />
==== Number of Constructors (num_ctors) ====<br />
<br />
This test runs at build time and measures the number of static initializers in the compiled code. Reducing this number is helpful for [https://blog.mozilla.org/tglek/2010/05/27/startup-backward-constructors/ startup optimizations].<br />
<br />
* https://hg.mozilla.org/build/tools/file/348853aee492/buildfarm/utils/count_ctors.py<br />
** these are run for linux 32+64 opt and pgo builds.<br />
<br />
===== Possible regression causes =====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== PerfStrip Tests ===<br />
<br />
* contact: :milan<br />
* source: https://dxr.mozilla.org/mozilla-central/source/xpcom/tests/gtest/TestStrings.cpp<br />
* type: Microbench<br />
* reporting: execution time in ms (lower is better) for 100k function calls<br />
* data: each test run and measured 5 times<br />
* summarization:<br />
<br />
PerfStripWhitespace - call StripWhitespace() on 5 different test cases 20k times (each)<br />
<br />
PerfStripCharsWhitespace - call StripChars("\f\t\r\n") on 5 different test cases 20k times (each)<br />
<br />
PerfStripCRLF - call StripCRLF() on 5 different test cases 20k times (each)<br />
<br />
PerfStripCharsCRLF() - call StripChars("\r\n") on 5 different test cases 20k times (each)<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== rasterflood_svg ===<br />
* contact: :dvander<br />
* source: [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/gfx/benchmarks/rasterflood_svg.html rasterflood_svg.html]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the rasterflood_svg.html page ten times, measuring pageload each time, generating 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 9; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This page animates some complex SVG patterns in a requestAnimationFrame callback. However, it also churns the CPU during each callback, spinning an empty loop for 14ms each frame. The intent is that, if we consider the rasterization costs to be 0, then the animation should run close to 60fps. Otherwise it will lag. Since rasterization costs are not 0, the lower we can get them, the faster the test will run. The test runs in ASAP mode to maximize framerate. The result is how quickly the browser is able to render 600 frames of the animation.<br />
<br />
Improvements (or regressions) to general painting performance or SVG are likely to affect this benchmark.<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== rasterflood_gradient ===<br />
* contact: :dvander<br />
* source: [[https://searchfox.org/mozilla-central/source/testing/talos/talos/tests/gfx/benchmarks/rasterflood_gradient.html rasterflood_gradient.html]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load the rasterflood_gradient.html page ten times, computing a score each time, generating 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 9; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l986 source: test.py]<br />
<br />
This page animates some complex gradient patterns in a requestAnimationFrame callback. However, it also churns the CPU during each callback, spinning an empty loop for 14ms each frame. The intent is that, if we consider the rasterization costs to be 0, then the animation should run close to 60fps. Otherwise it will lag. Since rasterization costs are not 0, the lower we can get them, the faster the test will run. The test runs in ASAP mode to maximize framerate.<br />
<br />
The test runs for 10 seconds, and the resulting score is how many frames we were able to render during that time. Higher is better. Improvements (or regressions) to general painting performance or gradient rendering will affect this benchmark.<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== sessionrestore/sessionrestore_no_auto_restore/sessionrestore_many_windows ===<br />
* contact: :Yoric, :mikedeboer<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/sessionrestore talos/sessionrestore]<br />
* bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=936630 bug 936630], [https://bugzilla.mozilla.org/show_bug.cgi?id=1331937 bug 1331937], [https://bugzilla.mozilla.org/show_bug.cgi?id=1531520 bug 1531520]<br />
* type: Startup<br />
* measuring: time spent reading and restoring the session.<br />
* reporting: interval in ms (lower is better).<br />
* data: we load the session restore index page 10 times to collect 1 set of 10 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 9 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: identical to subtest<br />
<br />
Three tests measure the time spent reading and restoring the session from a valid sessionstore.js. Time is counted from the ''process start'' until the ''sessionRestored'' event.<br />
<br />
In ''sessionrestore'', this is tested with a configuration that requires the session to be restored. In ''sessionrestore_no_auto_restore'', this is tested with a configuration that requires the session to not be restored. Both of the above tests use a sessionstore.js file that contains one window and roughly 89 tabs. In ''sessionrestore_many_windows'', this is tested with a sessionstore.js that contains 3 windows and 130 tabs. The first window contains 50 tabs, 80 remaning tabs are divided equally between the second and the third window.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[2362.0, 2147.0, 2171.0, 2134.0, 2116.0, 2145.0, 2141.0, 2141.0, 2136.0, 2080.0]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== speedometer ===<br />
* contact: :jmaher, :rwood<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/speedometer/speedometer.manifest speedometer.manifest]]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* measuring: responsiveness of web applications<br />
* reporting: runs/minute score<br />
* data: there are 16 subtests in Speedometer; each of these are made up of 9 internal benchmarks.<br />
* summarization:<br />
** subtest: For all of the 16 subtests, we collect the sum of all their internal benchmark results.<br />
** suite: geometric [https://wiki.mozilla.org/Buildbot/Talos/Data#mean mean] of the 16 sums<br />
<br />
This is the [http://browserbench.org/Speedometer/ Speedometer] javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;VanillaJS-TodoMVC/Adding100Items/Sync;153.055;150.4950000000008;149.16500000000087;150.8000000000029;150.92499999998836;147.53000000000003;154.8199999999997;156.20000000000437;147.0749999999971;150.47500000000582;151.63;158.02000000000044;145.54499999999825;156.3050000000003;146.7100000000064;147.505;148.5699999999979;148.9350000000013;147.61000000000058;146.41999999999825;149.64;151.875;189.75500000000466;147.04499999999825;151.0350000000035<br />
1;VanillaJS-TodoMVC/Adding100Items/Async;29.99000000000001;17.80500000000029;27.924999999995634;44.51000000000204;23.229999999995925;33.84500000000003;22.600000000000364;60.93999999999505;45.669999999998254;17.235000000000582;22.125;54.36499999999796;69.95000000000437;16.56500000000233;16.52499999999418;26.65500000000003;31.31000000000131;40.7300000000032;18.455000000001746;34.945000000006985;25.029999999999973;28.229999999999563;20.709999999999127;15.940000000002328;15.960000000006403<br />
2;VanillaJS-TodoMVC/Adding100Items;183.04500000000002;168.3000000000011;177.0899999999965;195.31000000000495;174.15499999998428;181.37500000000006;177.42000000000007;217.13999999999942;192.74499999999534;167.7100000000064;173.755;212.3849999999984;215.49500000000262;172.87000000000262;163.23500000000058;174.16000000000003;179.8799999999992;189.6650000000045;166.06500000000233;181.36500000000524;174.66999999999996;180.10499999999956;210.46500000000378;162.98500000000058;166.9950000000099<br />
3;VanillaJS-TodoMVC/CompletingAllItems/Sync;50.01500000000004;50.154999999998836;45.95499999999447;49.95499999999447;49.345000000001164;46.67500000000001;48.17000000000007;50.075000000004366;49.6050000000032;47.5;49.20999999999998;49.86499999999796;45.79000000000087;48.45999999999913;47.27499999999418;46.964999999999975;51.279999999998836;56.42000000000553;47.49000000000524;47.09000000001106;47.66999999999996;46.97999999999956;150.63000000000466;46.42500000000291;46.06500000000233<br />
4;VanillaJS-TodoMVC/CompletingAllItems/Async;15.05499999999995;20.144999999998618;8.50499999999738;14.57499999999709;16.014999999999418;20.524999999999977;42.18000000000029;16.62000000000262;16.735000000000582;18.305000000007567;18.670000000000016;10.06499999999869;15.57999999999447;20.24500000000262;25.460000000006403;20.364999999999952;21.18500000000131;16.310000000004948;21.584999999999127;10.729999999995925;27.314999999999998;28.56499999999869;24.595000000001164;18.9800000000032;14.94999999999709<br />
5;VanillaJS-TodoMVC/CompletingAllItems;65.07;70.29999999999745;54.45999999999185;64.52999999999156;65.36000000000058;67.19999999999999;90.35000000000036;66.69500000000698;66.34000000000378;65.80500000000757;67.88;59.92999999999665;61.36999999999534;68.70500000000175;72.73500000000058;67.32999999999993;72.46500000000015;72.73000000001048;69.07500000000437;57.820000000006985;74.98499999999996;75.54499999999825;175.22500000000582;65.40500000000611;61.01499999999942<br />
6;VanillaJS-TodoMVC/DeletingAllItems/Sync;46.02499999999998;34.530000000000655;31.715000000003783;34.575000000004366;38.93000000000757;43.485000000000014;33.00500000000102;44.59499999999389;34.38500000000204;33.10000000000582;37.875;34.594999999997526;33.169999999998254;34.974999999998545;35.61999999999534;35.89500000000004;36.159999999999854;38.654999999998836;33.770000000004075;34.904999999998836;42.299999999999955;36.13999999999942;32.56999999999971;37.970000000001164;33.69499999999243<br />
7;VanillaJS-TodoMVC/DeletingAllItems/Async;15.475000000000023;11.94000000000051;17.70499999999447;20.19000000000233;9.509999999994761;7.425000000000011;14.040000000000873;10.104999999995925;13.430000000000291;11.985000000000582;6.984999999999957;23.75500000000102;63.45999999999913;8.014999999999418;12.059999999997672;21.40500000000003;13.279999999998836;11.364999999997963;7.864999999997963;33.154999999998836;12.420000000000016;22.409999999999854;8.090000000003783;12.994999999995343;7.125<br />
8;VanillaJS-TodoMVC/DeletingAllItems;61.5;46.470000000001164;49.419999999998254;54.765000000006694;48.44000000000233;50.910000000000025;47.04500000000189;54.699999999989814;47.81500000000233;45.0850000000064;44.85999999999996;58.349999999998545;96.62999999999738;42.98999999999796;47.679999999993015;57.30000000000007;49.43999999999869;50.0199999999968;41.63500000000204;68.05999999999767;54.71999999999997;58.54999999999927;40.66000000000349;50.96499999999651;40.81999999999243<br />
9;VanillaJS-TodoMVC;309.615;285.0699999999997;280.9699999999866;314.6050000000032;287.9549999999872;299.48500000000007;314.8150000000023;338.5349999999962;306.90000000000146;278.6000000000204;286.49499999999995;330.6649999999936;373.49499999999534;284.5650000000023;283.6499999999942;298.79;301.78499999999804;312.4150000000118;276.77500000000873;307.2450000000099;304.3749999999999;314.1999999999971;426.3500000000131;279.3550000000032;268.83000000000175<br />
10;Vanilla-ES2015-TodoMVC/Adding100Items/Sync;187.5;191.14999999999782;198.6999999999971;196.77500000000146;193.25;192.91499999999996;197.4350000000013;194.09999999999854;193.60499999999593;195.09500000000116;197.52000000000004;200.14500000000044;241.61499999999796;193.61999999999534;191.75500000000466;193.32000000000005;195.8100000000013;200.0699999999997;192.95000000000437;475.40499999999884;192.67999999999995;196.77000000000044;197.66500000000087;194.8550000000032;197.4250000000029<br />
11;Vanilla-ES2015-TodoMVC/Adding100Items/Async;22.949999999999932;15.715000000000146;18.2300000000032;30.5199999999968;21.53499999998894;23.80499999999995;34.409999999999854;16.494999999995343;21.619999999995343;19.130000000004657;21.230000000000018;17.354999999999563;22.25;16.18000000000029;21.02499999999418;16.92999999999995;16.280000000002474;19.965000000003783;27.185000000004948;18.630000000004657;27.039999999999964;17.125;16.510000000002037;22.06999999999971;19.514999999999418<br />
12;Vanilla-ES2015-TodoMVC/Adding100Items;210.44999999999993;206.86499999999796;216.9300000000003;227.29499999999825;214.78499999998894;216.7199999999999;231.84500000000116;210.5949999999939;215.22499999999127;214.22500000000582;218.75000000000006;217.5;263.86499999999796;209.79999999999563;212.77999999999884;210.25;212.09000000000378;220.0350000000035;220.1350000000093;494.0350000000035;219.7199999999999;213.89500000000044;214.1750000000029;216.9250000000029;216.94000000000233<br />
13;Vanilla-ES2015-TodoMVC/CompletingAllItems/Sync;54.25999999999999;50.36999999999898;55.58999999999651;52.38500000000204;56.31500000000233;52.174999999999955;50.875;50.349999999998545;56.61000000000058;51.570000000006985;52.495000000000005;50.13000000000102;62.71999999999389;51.18000000000029;53.44999999999709;51.29499999999996;50.66500000000087;87.94000000000233;52.83999999999651;60.330000000001746;51.69500000000005;50.80500000000029;52.70999999999913;54.79000000000087;54.13999999999942<br />
14;Vanilla-ES2015-TodoMVC/CompletingAllItems/Async;27.379999999999995;17.260000000002037;32.075000000004366;11.264999999999418;23.94999999999709;17.154999999999973;13.764999999999418;15.525000000001455;19.63499999999476;16.214999999996508;25.055000000000064;20.340000000000146;22.485000000000582;18.849999999998545;21.829999999987194;16.75999999999999;18.82999999999811;23.034999999996217;19.775000000001455;24.289999999993597;33.664999999999964;18.400000000001455;27.7699999999968;18.450000000004366;17.855000000010477<br />
15;Vanilla-ES2015-TodoMVC/CompletingAllItems;81.63999999999999;67.63000000000102;87.66500000000087;63.650000000001455;80.26499999999942;69.32999999999993;64.63999999999942;65.875;76.24499999999534;67.78500000000349;77.55000000000007;70.47000000000116;85.20499999999447;70.02999999999884;75.27999999998428;68.05499999999995;69.49499999999898;110.97499999999854;72.61499999999796;84.61999999999534;85.36000000000001;69.20500000000175;80.47999999999593;73.24000000000524;71.9950000000099<br />
16;Vanilla-ES2015-TodoMVC/DeletingItems/Sync;34.174999999999955;42.539999999997235;36.05500000000029;36.06500000000233;47.629999999990105;41.799999999999955;35.669999999998254;45.78500000000349;35.50499999999738;45.53500000000349;39.504999999999995;34.61000000000058;49.24500000000262;44.79500000000553;41.169999999998254;43.86500000000001;35.275000000001455;48.044999999998254;41.51000000000204;44.86500000000524;40.72000000000003;35.04000000000087;35.51499999999942;35.62999999999738;39.90000000000873<br />
17;Vanilla-ES2015-TodoMVC/DeletingItems/Async;10.754999999999995;12.934999999997672;12.819999999999709;10.430000000000291;13.205000000001746;14.090000000000032;39.77000000000044;12.014999999999418;12.299999999995634;7.349999999991269;13.724999999999909;11.579999999998108;13.019999999996799;7.219999999993888;14.464999999996508;13.370000000000005;7.424999999999272;7.0350000000034925;11.20499999999447;11.330000000001746;20.844999999999914;6.985000000000582;9.305000000000291;7.255000000004657;12.240000000005239<br />
18;Vanilla-ES2015-TodoMVC/DeletingItems;44.92999999999995;55.47499999999491;48.875;46.49500000000262;60.83499999999185;55.889999999999986;75.43999999999869;57.80000000000291;47.804999999993015;52.88499999999476;53.229999999999905;46.18999999999869;62.26499999999942;52.01499999999942;55.63499999999476;57.235000000000014;42.70000000000073;55.080000000001746;52.71499999999651;56.195000000006985;61.56499999999994;42.025000000001455;44.81999999999971;42.88500000000204;52.14000000001397<br />
19;Vanilla-ES2015-TodoMVC;337.01999999999987;329.9699999999939;353.47000000000116;337.4400000000023;355.8849999999802;341.9399999999998;371.9249999999993;334.2699999999968;339.2749999999796;334.8950000000041;349.53000000000003;334.15999999999985;411.33499999999185;331.8449999999939;343.6949999999779;335.53999999999996;324.2850000000035;386.0900000000038;345.4650000000038;634.8500000000058;366.64499999999987;325.12500000000364;339.47499999999854;333.0500000000102;341.0750000000262<br />
20;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items/Sync;186.9849999999999;192.72999999999956;196.3249999999971;198.64500000000407;204.4100000000035;195.62;357.52999999999884;201.65000000000146;191.4300000000003;199.69500000000698;199.63;200.86000000000058;274.52999999999884;210.28499999999622;196.20500000000175;194.58000000000004;192.73499999999694;212.0550000000003;204.0699999999997;223.20500000000175;196.0999999999999;194.08000000000175;198.52000000000407;224.71500000000378;191.57000000000698<br />
21;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items/Async;19.97499999999991;16.31499999999869;22.955000000001746;27.419999999998254;16.214999999996508;26.11999999999989;16.2300000000032;23.294999999998254;25.089999999996508;19.769999999989523;25.125;20.020000000000437;30.464999999996508;22.110000000000582;16.944999999992433;17.940000000000055;22.455000000001746;25.614999999997963;25.155000000006112;30.044999999998254;33.51499999999987;17.349999999998545;16.6050000000032;18.30500000000029;28.964999999996508<br />
22;Vanilla-ES2015-Babel-Webpack-TodoMVC/Adding100Items;206.9599999999998;209.04499999999825;219.27999999999884;226.06500000000233;220.625;221.7399999999999;373.76000000000204;224.9449999999997;216.5199999999968;219.4649999999965;224.755;220.88000000000102;304.99499999999534;232.3949999999968;213.14999999999418;212.5200000000001;215.1899999999987;237.66999999999825;229.22500000000582;253.25;229.61499999999978;211.4300000000003;215.12500000000728;243.02000000000407;220.5350000000035<br />
23;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems/Sync;52.31000000000017;51.87000000000262;54.81999999999971;60.59499999999389;107.30499999999302;60.569999999999936;59.724999999998545;62.32499999999709;52.86999999999534;52.17499999998836;65.69999999999982;54.22999999999956;56.705000000001746;86.8900000000067;60.57499999999709;53.044999999999845;54.87999999999738;52.54000000000087;61.580000000001746;149.7399999999907;56.49000000000001;53.3650000000016;53.224999999998545;70.97000000000116;51.845000000001164<br />
24;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems/Async;17.24000000000001;18.75;16.349999999998545;9.584999999999127;22.639999999999418;10.330000000000155;13.540000000000873;17.80500000000029;15.205000000001746;17.789999999993597;19.37000000000012;21.68500000000131;9.959999999999127;16.854999999995925;31.464999999996508;18.829999999999927;17.92000000000189;17.344999999993888;18.2699999999968;17.110000000000582;21.3900000000001;27.0099999999984;19.364999999997963;19.924999999995634;18.964999999996508<br />
25;Vanilla-ES2015-Babel-Webpack-TodoMVC/CompletingAllItems;69.55000000000018;70.62000000000262;71.16999999999825;70.17999999999302;129.94499999999243;70.90000000000009;73.26499999999942;80.12999999999738;68.07499999999709;69.96499999998196;85.06999999999994;75.91500000000087;66.66500000000087;103.74500000000262;92.0399999999936;71.87499999999977;72.79999999999927;69.88499999999476;79.84999999999854;166.84999999999127;77.88000000000011;80.375;72.58999999999651;90.8949999999968;70.80999999999767<br />
26;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems/Sync;41.649999999999864;48.38999999999942;39.984999999993306;36.25500000000466;44.76499999999942;43.409999999999854;41.56999999999971;35.03500000000349;36.43000000000029;40.05500000000757;41.25;41.08499999999913;40.86000000000058;80.55500000000029;47.75999999999476;37.92000000000007;35.22999999999956;66.125;38.7100000000064;38.48500000000058;46.309999999999945;40.19500000000335;39.7300000000032;36.674999999995634;38.05000000000291<br />
27;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems/Async;12.345000000000027;13.670000000001892;12.884999999994761;14.830000000001746;11.220000000001164;9.495000000000118;11.325000000000728;7.55000000000291;9.055000000000291;7.069999999992433;11.184999999999945;14.785000000003492;25.885000000002037;7.165000000000873;16.36500000000524;9.680000000000064;6.805000000000291;6.870000000002619;13.439999999995052;12.884999999994761;13.634999999999991;11.994999999998981;11.334999999999127;23.784999999996217;12.620000000009895<br />
28;Vanilla-ES2015-Babel-Webpack-TodoMVC/DeletingItems;53.99499999999989;62.06000000000131;52.86999999998807;51.0850000000064;55.98500000000058;52.90499999999997;52.89500000000044;42.5850000000064;45.48500000000058;47.125;52.434999999999945;55.87000000000262;66.74500000000262;87.72000000000116;64.125;47.600000000000136;42.034999999999854;72.99500000000262;52.150000000001455;51.36999999999534;59.944999999999936;52.19000000000233;51.06500000000233;60.45999999999185;50.670000000012806<br />
29;Vanilla-ES2015-Babel-Webpack-TodoMVC;330.5049999999999;341.7250000000022;343.31999999998516;347.33000000000175;406.554999999993;345.54499999999996;499.9200000000019;347.6600000000035;330.07999999999447;336.55499999997846;362.2599999999999;352.6650000000045;438.40499999999884;423.8600000000006;369.3149999999878;331.995;330.0249999999978;380.54999999999563;361.2250000000058;471.4699999999866;367.4399999999998;343.9950000000026;338.7800000000061;394.3749999999927;342.01500000001397<br />
30;React-TodoMVC/Adding100Items/Sync;299.2650000000001;299.6800000000003;321.70000000000437;308.51000000000204;313.6149999999907;321.855;306.9500000000007;305.2149999999965;335.4499999999971;338.52999999999884;316.16999999999985;317.7599999999984;312.92000000000553;315.4950000000026;357.29000000000815;311.1600000000001;338.21500000000015;314.3249999999971;335.6449999999968;314.5450000000128;308.28999999999996;309.1949999999997;325.72499999999854;324.3950000000041;316.22000000000116<br />
31;React-TodoMVC/Adding100Items/Async;19.685000000000173;23.674999999999272;23.1050000000032;29.470000000001164;21.860000000000582;23.174999999999955;26.100000000002183;21.089999999996508;34.87999999999738;21.919999999998254;23.924999999999955;57.73999999999796;29.94499999999971;23.220000000001164;22.664999999993597;24.52500000000009;32.8949999999968;23.095000000001164;24.8550000000032;38.354999999995925;26.585000000000036;29.56500000000233;50.549999999995634;20.409999999996217;30.554999999993015<br />
32;React-TodoMVC/Adding100Items;318.9500000000003;323.35499999999956;344.80500000000757;337.9800000000032;335.47499999999127;345.03;333.0500000000029;326.304999999993;370.32999999999447;360.4499999999971;340.0949999999998;375.49999999999636;342.86500000000524;338.7150000000038;379.95500000000175;335.6850000000002;371.10999999999694;337.41999999999825;360.5;352.90000000000873;334.875;338.76000000000204;376.2749999999942;344.8050000000003;346.7749999999942<br />
33;React-TodoMVC/CompletingAllItems/Sync;179.42999999999984;183.98500000000058;189.8199999999997;198.58499999999913;198.70500000000175;198.81999999999994;295.0750000000007;192.4449999999997;198.77000000000407;299.9349999999977;197.39999999999986;220.69000000000233;196.75;188.38500000000204;191.0899999999965;206.9849999999999;201.47499999999854;193.12000000000262;208.1800000000003;240.68499999999767;199.67499999999995;219.02499999999782;192.25999999999476;188.15000000000146;197.7850000000035<br />
34;React-TodoMVC/CompletingAllItems/Async;17.795000000000073;15.280000000002474;16.080000000001746;18.264999999999418;15.634999999994761;19.519999999999982;17.11999999999898;18.12999999999738;22.50499999999738;20.66500000000815;16.795000000000073;31.209999999999127;16.94000000000233;16.709999999999127;16.625;20.575000000000045;44.47999999999956;18.139999999999418;17.68000000000029;22.094999999986612;17.97499999999991;22.895000000000437;57.08499999999913;22.529999999998836;17.995000000009895<br />
35;React-TodoMVC/CompletingAllItems;197.2249999999999;199.26500000000306;205.90000000000146;216.84999999999854;214.3399999999965;218.33999999999992;312.1949999999997;210.5749999999971;221.27500000000146;320.6000000000058;214.19499999999994;251.90000000000146;213.69000000000233;205.09500000000116;207.7149999999965;227.55999999999995;245.9549999999981;211.26000000000204;225.86000000000058;262.7799999999843;217.64999999999986;241.91999999999825;249.3449999999939;210.6800000000003;215.7800000000134<br />
36;React-TodoMVC/DeletingAllItems/Sync;121.0949999999998;114.28499999999985;122.61499999999796;118.03000000000611;115.91500000000815;128.47500000000014;114.81499999999869;113.52500000000146;155.77500000000146;113.59500000000116;123.64499999999975;97.13999999999942;117.53500000000349;117.76499999999942;119.67999999999302;120.27999999999997;137.02500000000146;125.30000000000291;124.55000000000291;119.55500000000757;117.54999999999995;120.625;123.20500000000175;126.48999999999796;126.08999999999651<br />
37;React-TodoMVC/DeletingAllItems/Async;7.394999999999982;8.580000000001746;12.364999999997963;6.610000000000582;10.989999999990687;6.735000000000127;9.794999999998254;10.340000000003783;6.625;9.069999999992433;6.654999999999745;8.81000000000131;14.569999999999709;8.619999999995343;218.33000000000175;9.275000000000091;15.8849999999984;6.260000000002037;17.69000000000233;25.835000000006403;13.28500000000031;7.970000000001164;58.229999999995925;10.485000000000582;8.740000000005239<br />
38;React-TodoMVC/DeletingAllItems;128.48999999999978;122.8650000000016;134.97999999999593;124.6400000000067;126.90499999999884;135.21000000000026;124.60999999999694;123.86500000000524;162.40000000000146;122.6649999999936;130.2999999999995;105.95000000000073;132.1050000000032;126.38499999999476;338.00999999999476;129.55500000000006;152.90999999999985;131.56000000000495;142.24000000000524;145.39000000001397;130.83500000000026;128.59500000000116;181.43499999999767;136.97499999999854;134.83000000000175<br />
39;React-TodoMVC;644.665;645.4850000000042;685.685000000005;679.4700000000084;676.7199999999866;698.5800000000002;769.8549999999996;660.7449999999953;754.0049999999974;803.7149999999965;684.5899999999992;733.3499999999985;688.6600000000108;670.1949999999997;925.679999999993;692.8000000000002;769.9749999999949;680.2400000000052;728.6000000000058;761.070000000007;683.3600000000001;709.2750000000015;807.0549999999857;692.4599999999991;697.3850000000093<br />
40;React-Redux-TodoMVC/Adding100Items/Sync;434.4200000000001;453.82000000000335;714.3499999999985;445.4150000000009;449.7250000000058;480.75999999999976;448.96500000000015;436.7850000000035;446.4799999999959;456.6399999999994;446.56500000000005;434.54499999999825;486.66999999999825;442.75500000000466;444.13000000000466;437.69000000000005;444.40499999999884;453.66999999999825;447.2649999999994;446.32500000001164;441.125;455.244999999999;446.1399999999994;443.4300000000003;485.91999999999825<br />
41;React-Redux-TodoMVC/Adding100Items/Async;21.19499999999971;17.854999999999563;18.285000000003492;35.544999999998254;189.95500000000175;27.829999999999927;45.93500000000131;23.00999999999476;20.25;20.22500000000582;26.75;48.29500000000189;23.854999999995925;57.48999999999796;58.42500000000291;20.610000000000127;17.8650000000016;25.535000000003492;26.360000000000582;31.895000000004075;38.89499999999998;29.784999999999854;72.77999999999884;29.99000000000524;18.00999999999476<br />
42;React-Redux-TodoMVC/Adding100Items;455.6149999999998;471.6750000000029;732.635000000002;480.9599999999991;639.6800000000076;508.5899999999997;494.90000000000146;459.79499999999825;466.7299999999959;476.86500000000524;473.31500000000005;482.84000000000015;510.5249999999942;500.2450000000026;502.55500000000757;458.3000000000002;462.27000000000044;479.20500000000175;473.625;478.2200000000157;480.02;485.02999999999884;518.9199999999983;473.42000000000553;503.929999999993<br />
43;React-Redux-TodoMVC/CompletingAllItems/Sync;586.6949999999997;655.2200000000012;728.6900000000023;610.3300000000017;619.2949999999983;603.2900000000004;701.1849999999977;594.1750000000029;610.1949999999997;607.3999999999942;614.3800000000001;690.5900000000001;660.6000000000058;602.8550000000032;619.5099999999948;608.9550000000004;612.0949999999975;620.5999999999985;606.1599999999962;602.7949999999983;609.75;609.8400000000001;615.5;622.4400000000023;691.9250000000029<br />
44;React-Redux-TodoMVC/CompletingAllItems/Async;19.159999999999854;14.919999999998254;20.37999999999738;21.19499999999971;72.06500000000233;30.22499999999991;17.139999999999418;19.06999999999971;22.095000000001164;330.41500000000815;25.050000000000182;41.955000000001746;56.71499999999651;77.06999999999971;68.59500000000116;22.360000000000127;15.390000000003056;17.700000000004366;28.55500000000029;17.75999999999476;61.07500000000027;29.12000000000262;142.95999999999913;29.160000000003492;20.264999999999418<br />
45;React-Redux-TodoMVC/CompletingAllItems;605.8549999999996;670.1399999999994;749.0699999999997;631.5250000000015;691.3600000000006;633.5150000000003;718.3249999999971;613.2450000000026;632.2900000000009;937.8150000000023;639.4300000000003;732.5450000000019;717.3150000000023;679.9250000000029;688.1049999999959;631.3150000000005;627.4850000000006;638.3000000000029;634.7149999999965;620.554999999993;670.8250000000003;638.9600000000028;758.4599999999991;651.6000000000058;712.1900000000023<br />
46;React-Redux-TodoMVC/DeletingItems/Sync;307.10000000000036;407.27999999999884;301.90499999999884;304.2299999999959;322.7699999999895;305.7249999999999;298.40499999999884;315.1650000000009;312.3950000000041;320.1100000000006;308.3699999999999;289.6349999999984;397.7549999999974;305.20500000000175;314.8099999999977;310.00999999999976;308.1949999999997;307.86999999999534;309.7900000000009;306.6399999999994;313.05999999999995;308.6100000000006;332.34999999999854;317.83000000000175;305.7399999999907<br />
47;React-Redux-TodoMVC/DeletingItems/Async;67.1550000000002;149.01000000000204;7.5;9.934999999997672;57.125;7.349999999999909;17.1150000000016;8.505000000004657;9.594999999993888;42.50500000000466;8.2800000000002;14.270000000000437;18.435000000004948;58.92500000000291;59.125;7.7849999999998545;6.400000000001455;6.360000000000582;18.169999999998254;8.095000000001164;20.855000000000018;8.270000000000437;7.049999999995634;8.789999999993597;15.194999999992433<br />
48;React-Redux-TodoMVC/DeletingItems;374.25500000000056;556.2900000000009;309.40499999999884;314.1649999999936;379.8949999999895;313.0749999999998;315.52000000000044;323.67000000000553;321.98999999999796;362.61500000000524;316.6500000000001;303.90499999999884;416.1900000000023;364.13000000000466;373.9349999999977;317.7949999999996;314.59500000000116;314.2299999999959;327.9599999999991;314.7350000000006;333.91499999999996;316.880000000001;339.3999999999942;326.61999999999534;320.9349999999831<br />
49;React-Redux-TodoMVC;1435.725;1698.1050000000032;1791.1100000000006;1426.6499999999942;1710.9349999999977;1455.1799999999998;1528.744999999999;1396.7100000000064;1421.0099999999948;1777.2950000000128;1429.3950000000004;1519.2900000000009;1644.0299999999988;1544.3000000000102;1564.5950000000012;1407.4100000000003;1404.3500000000022;1431.7350000000006;1436.2999999999956;1413.5100000000093;1484.7600000000002;1440.8700000000026;1616.7799999999916;1451.6400000000067;1537.0549999999785<br />
50;EmberJS-TodoMVC/Adding100Items/Sync;573.5649999999996;615.864999999998;579.5349999999962;588.4250000000029;588.3950000000041;594.2149999999997;588.3050000000003;572.5450000000055;598.5299999999988;583.4650000000111;587.6000000000004;574.5449999999983;591.25;584.4000000000015;592.8699999999953;610.5000000000005;593.7050000000017;583.4349999999977;608.7149999999965;594.8600000000006;614.6350000000002;580;640.8450000000012;602.8950000000041;592.4750000000058<br />
51;EmberJS-TodoMVC/Adding100Items/Async;19.300000000000182;33.465000000000146;44.48500000000058;26.875;56.979999999995925;36.18499999999949;19.534999999999854;70.46500000000378;21.580000000001746;77.61500000000524;75.49499999999989;24.81999999999971;19.07999999999447;21.80999999999767;25.05000000000291;34.89499999999953;21.354999999999563;21.19000000000233;22.205000000001746;30.74000000000524;42.600000000000364;20.724999999998545;25.910000000003492;23.610000000000582;69.11999999999534<br />
52;EmberJS-TodoMVC/Adding100Items;592.8649999999998;649.3299999999981;624.0199999999968;615.3000000000029;645.375;630.3999999999992;607.8400000000001;643.0100000000093;620.1100000000006;661.0800000000163;663.0950000000003;599.364999999998;610.3299999999945;606.2099999999991;617.9199999999983;645.395;615.0600000000013;604.625;630.9199999999983;625.6000000000058;657.2350000000006;600.7249999999985;666.7550000000047;626.5050000000047;661.5950000000012<br />
53;EmberJS-TodoMVC/CompletingAllItems/Sync;241.21999999999935;250.63500000000204;234.49499999999534;250.66999999999825;257.6600000000035;230.34499999999935;254.08000000000175;254.91999999999825;252.30999999999767;240.6750000000029;252.625;239.49499999999898;239.08499999999913;259.1800000000003;248.43000000000757;259.77000000000044;237.9350000000013;242.84999999999854;239.86000000000058;238.9100000000035;260.1950000000006;242.99499999999898;367.45000000000437;248.7800000000061;238.5500000000029<br />
54;EmberJS-TodoMVC/CompletingAllItems/Async;17.145000000000437;47.31000000000131;18.535000000003492;30.69999999999709;22.245000000009895;20.625;30.234999999996944;67.3599999999933;21.360000000000582;273.29499999999825;64.89000000000033;25.74499999999898;15.069999999999709;17.505000000004657;28.735000000000582;40.039999999999964;20.7599999999984;18.150000000001455;22.659999999996217;19.330000000001746;14.860000000000582;20.80500000000029;28.6050000000032;19.470000000001164;71.45999999999185<br />
55;EmberJS-TodoMVC/CompletingAllItems;258.3649999999998;297.94500000000335;253.02999999999884;281.36999999999534;279.9050000000134;250.96999999999935;284.3149999999987;322.27999999999156;273.66999999999825;513.9700000000012;317.5150000000003;265.23999999999796;254.15499999999884;276.68500000000495;277.16500000000815;299.8100000000004;258.6949999999997;261;262.5199999999968;258.24000000000524;275.0550000000012;263.7999999999993;396.05500000000757;268.2500000000073;310.00999999999476<br />
56;EmberJS-TodoMVC/DeletingItems/Sync;140.9949999999999;259.15999999999985;144.56500000000233;153.38999999999942;152.125;143.3099999999995;160.1150000000016;146.71500000000378;152.93499999999767;146.0500000000029;140.0699999999997;139.61999999999898;141.51499999999942;149.23500000000058;149.72499999999127;151.09999999999945;142.37000000000262;149.84500000000116;144.82999999999447;150.30499999999302;144.23499999999967;147.44000000000233;152.25;143.18999999999505;141.86000000000058<br />
57;EmberJS-TodoMVC/DeletingItems/Async;7.585000000000036;17.81999999999971;7.2700000000040745;7.105000000003201;6.654999999998836;7.539999999999964;6.444999999999709;75.83000000000175;7.494999999995343;7.30000000000291;39.409999999999854;6.2849999999998545;6.700000000004366;12.659999999996217;6.915000000008149;14.329999999999927;6.474999999998545;10.844999999993888;12.365000000005239;9.130000000004657;16.81500000000051;6.415000000000873;12.659999999996217;9.470000000001164;62.0399999999936<br />
58;EmberJS-TodoMVC/DeletingItems;148.57999999999993;276.97999999999956;151.8350000000064;160.49500000000262;158.77999999999884;150.84999999999945;166.5600000000013;222.54500000000553;160.42999999999302;153.35000000000582;179.47999999999956;145.90499999999884;148.21500000000378;161.8949999999968;156.63999999999942;165.42999999999938;148.84500000000116;160.68999999999505;157.1949999999997;159.43499999999767;161.05000000000018;153.8550000000032;164.90999999999622;152.65999999999622;203.89999999999418<br />
59;EmberJS-TodoMVC;999.8099999999995;1224.255000000001;1028.885000000002;1057.1650000000009;1084.0600000000122;1032.219999999998;1058.7150000000001;1187.8350000000064;1054.2099999999919;1328.4000000000233;1160.0900000000001;1010.5099999999948;1012.6999999999971;1044.7900000000009;1051.7250000000058;1110.6349999999998;1022.6000000000022;1026.314999999995;1050.6349999999948;1043.2750000000087;1093.340000000002;1018.380000000001;1227.7200000000084;1047.4150000000081;1175.50499999999<br />
60;EmberJS-Debug-TodoMVC/Adding100Items/Sync;1462.4049999999997;1356.1599999999999;1356.0099999999948;1344.5;1392.8500000000058;1335.9300000000003;1409.7899999999972;1513.6649999999936;1342.2000000000044;1743.5799999999872;1419.125;1340.6850000000013;1370.5449999999983;1414.4449999999997;1743.75;1373.9099999999999;1337.130000000001;1865.7150000000038;1688.5950000000012;1387.9399999999878;1354.625;1354.5300000000025;1356.2849999999962;1370.6949999999997;1499.270000000004<br />
61;EmberJS-Debug-TodoMVC/Adding100Items/Async;30.920000000000073;107.78499999999985;23.82499999999709;83.31499999999505;28.47500000000582;37.8100000000004;31.885000000002037;25.2300000000032;24.18499999999767;25.035000000003492;25.295000000000073;71.46500000000015;37.3949999999968;33.86000000000058;23.379999999990105;28.460000000000036;72.59500000000116;26.99500000000262;22.924999999995634;24.385000000009313;31.954999999999927;71.53999999999724;24.360000000000582;31.584999999999127;33.68499999999767<br />
62;EmberJS-Debug-TodoMVC/Adding100Items;1493.3249999999998;1463.9449999999997;1379.8349999999919;1427.814999999995;1421.3250000000116;1373.7400000000007;1441.6749999999993;1538.8949999999968;1366.385000000002;1768.6149999999907;1444.42;1412.1500000000015;1407.939999999995;1448.3050000000003;1767.12999999999;1402.37;1409.7250000000022;1892.7100000000064;1711.5199999999968;1412.324999999997;1386.58;1426.0699999999997;1380.6449999999968;1402.2799999999988;1532.9550000000017<br />
63;EmberJS-Debug-TodoMVC/CompletingAllItems/Sync;635.4200000000001;721.135000000002;633.885000000002;631.6300000000047;730.1199999999953;622.8800000000001;641.8450000000012;640.25;689.114999999998;642.8450000000012;648.4650000000001;978.3799999999974;629.5750000000044;644.114999999998;655.8399999999965;631.125;612.005000000001;675.560000000005;780.9150000000009;636.1300000000047;671.8450000000003;627.5750000000007;640.8349999999991;632.6600000000035;650.1050000000105<br />
64;EmberJS-Debug-TodoMVC/CompletingAllItems/Async;19.219999999999345;20.219999999997526;14.944999999999709;355.7850000000035;30.05999999999767;14.875;26.845000000001164;38.19999999999709;22.169999999998254;33.8350000000064;12.659999999999854;42.29500000000189;18.31500000000233;19.895000000004075;33.845000000001164;21.449999999999818;292.46000000000276;34.21499999999651;32.46499999999651;18.389999999999418;34.76500000000033;266.02000000000044;27.375;15.400000000001455;21.004999999990105<br />
65;EmberJS-Debug-TodoMVC/CompletingAllItems;654.6399999999994;741.3549999999996;648.8300000000017;987.4150000000081;760.179999999993;637.7550000000001;668.6900000000023;678.4499999999971;711.2849999999962;676.6800000000076;661.125;1020.6749999999993;647.8900000000067;664.010000000002;689.6849999999977;652.5749999999998;904.4650000000038;709.7750000000015;813.3799999999974;654.5200000000041;706.6100000000006;893.5950000000012;668.2099999999991;648.060000000005;671.1100000000006<br />
66;EmberJS-Debug-TodoMVC/DeletingItems/Sync;796.5100000000002;881.880000000001;839.4449999999997;838.7900000000009;804.2599999999948;822.0099999999993;1158.4050000000025;809.6849999999977;922.9850000000006;837.7299999999959;854.1950000000006;900.8899999999994;814.5950000000012;863.2050000000017;850.3199999999924;801.0650000000005;815.6500000000015;829.364999999998;851.0900000000038;821.9799999999959;838.9949999999999;820.0900000000001;999.2700000000041;793.5199999999968;826.6999999999971<br />
67;EmberJS-Debug-TodoMVC/DeletingItems/Async;8.329999999999927;7.240000000001601;18.540000000000873;9.509999999994761;9.77499999999418;16.68499999999949;15.830000000001746;21.985000000000582;14.779999999998836;9.714999999996508;10.454999999999927;7.049999999999272;16.515000000006694;24.239999999997963;9.764999999999418;8.534999999999854;10.385000000002037;8.904999999998836;7.25;18.705000000001746;10.969999999999345;10.095000000001164;176.27500000000146;10.779999999998836;19.97500000000582<br />
68;EmberJS-Debug-TodoMVC/DeletingItems;804.8400000000001;889.1200000000026;857.9850000000006;848.2999999999956;814.0349999999889;838.6949999999988;1174.2350000000042;831.6699999999983;937.7649999999994;847.4449999999924;864.6500000000005;907.9399999999987;831.1100000000079;887.4449999999997;860.0849999999919;809.6000000000004;826.0350000000035;838.2699999999968;858.3400000000038;840.6849999999977;849.9649999999992;830.1850000000013;1175.5450000000055;804.2999999999956;846.6750000000029<br />
69;EmberJS-Debug-TodoMVC;2952.8049999999994;3094.420000000002;2886.649999999994;3263.529999999999;2995.5399999999936;2850.1899999999996;3284.600000000006;3049.014999999992;3015.4349999999977;3292.7399999999907;2970.1950000000006;3340.7649999999994;2886.9400000000096;2999.760000000002;3316.8999999999796;2864.545;3140.2250000000095;3440.7550000000047;3383.239999999998;2907.529999999999;2943.1549999999997;3149.850000000002;3224.4000000000015;2854.6399999999994;3050.7400000000052<br />
70;BackboneJS-TodoMVC/Adding100Items/Sync;178.04500000000007;175.88999999999942;185.27500000000146;183.20500000000175;172.60999999998603;177.9300000000003;190.15000000000146;193.98500000000058;174.48500000000058;186.7850000000035;190.6900000000005;189.8199999999997;181.61499999999796;184.1600000000035;175.14999999999418;184.60499999999956;190.16500000000087;185.9300000000003;187.65000000000146;195.61500000000524;180.80499999999847;186.12999999999738;186.80999999999767;184.83499999999913;183.89000000001397<br />
71;BackboneJS-TodoMVC/Adding100Items/Async;33.94000000000051;35.13999999999942;35.520000000004075;27.264999999999418;34.729999999995925;25.155000000000655;30.99500000000262;28.44499999999971;40.720000000001164;44.03500000000349;29.139999999999418;36.909999999999854;23.715000000003783;37.43499999999767;42.38999999999942;29.44499999999971;45.95999999999913;39.51000000000204;38.145000000004075;31.460000000006403;25.840000000000146;37.345000000001164;31.81999999999971;24.139999999999418;35.544999999998254<br />
72;BackboneJS-TodoMVC/Adding100Items;211.98500000000058;211.02999999999884;220.79500000000553;210.47000000000116;207.33999999998196;203.08500000000095;221.14500000000407;222.4300000000003;215.20500000000175;230.82000000000698;219.82999999999993;226.72999999999956;205.33000000000175;221.59500000000116;217.5399999999936;214.04999999999927;236.125;225.44000000000233;225.79500000000553;227.07500000001164;206.64499999999862;223.47499999999854;218.62999999999738;208.97499999999854;219.43500000001222<br />
73;BackboneJS-TodoMVC/CompletingAllItems/Sync;78.02499999999964;77.74499999999898;79.38500000000204;80.9800000000032;77.71500000001106;73.79500000000007;78.48500000000058;83.44999999999709;78.04999999999563;78.29499999999825;80.26500000000124;83.8650000000016;75.65999999999622;79.08000000000175;76.41999999999825;76.4950000000008;81.92499999999927;92.11000000000058;82.89999999999418;80.04499999999825;82.36499999999978;83.08499999999913;75.66000000000349;74.625;80.64500000000407<br />
74;BackboneJS-TodoMVC/CompletingAllItems/Async;22.94499999999971;51.60499999999956;59.74000000000524;43.06000000000495;45.23999999999069;29.829999999999927;32.17000000000189;26.69999999999709;49.099999999998545;48.94999999999709;24.219999999999345;40.69499999999971;141.06500000000233;20.9800000000032;47.43499999999767;32.6150000000016;51.91500000000087;31.005000000004657;29.375;33.85000000000582;28.93000000000029;33.27000000000044;23.090000000003783;38.04000000000087;36.25<br />
75;BackboneJS-TodoMVC/CompletingAllItems;100.96999999999935;129.34999999999854;139.12500000000728;124.04000000000815;122.95500000000175;103.625;110.65500000000247;110.14999999999418;127.14999999999418;127.24499999999534;104.48500000000058;124.56000000000131;216.72499999999854;100.06000000000495;123.85499999999593;109.1100000000024;133.84000000000015;123.11500000000524;112.27499999999418;113.89500000000407;111.29500000000007;116.35499999999956;98.75000000000728;112.66500000000087;116.89500000000407<br />
76;BackboneJS-TodoMVC/DeletingAllItems/Sync;80.18000000000029;79.99500000000262;90.93499999999767;88.20500000000175;87.04499999999825;77.03999999999905;79.93000000000029;91.87000000000262;86.34500000000116;86.5399999999936;92.58500000000095;93.15999999999985;79.00500000000466;85.45999999999913;78.54999999998836;83.94000000000051;81.30500000000029;94.04500000000553;84.15499999999884;95.00999999999476;86.03999999999905;86.375;87.94999999999709;90.36499999999796;92.02000000000407<br />
77;BackboneJS-TodoMVC/DeletingAllItems/Async;11.604999999999563;11.270000000000437;12.105000000003201;19.189999999995052;26.95999999999185;15.539999999999054;10.014999999999418;13.319999999999709;37.6449999999968;27.870000000009895;8.25;35.42000000000189;31.68000000000029;10.42000000000553;28.11500000000524;17.485000000000582;7.31000000000131;32.56999999999971;9.349999999998545;8.839999999996508;12.854999999999563;13.489999999997963;11.235000000000582;34.31999999999971;10.94999999999709<br />
78;BackboneJS-TodoMVC/DeletingAllItems;91.78499999999985;91.26500000000306;103.04000000000087;107.3949999999968;114.0049999999901;92.57999999999811;89.94499999999971;105.19000000000233;123.98999999999796;114.41000000000349;100.83500000000095;128.58000000000175;110.68500000000495;95.88000000000466;106.6649999999936;101.42500000000109;88.6150000000016;126.61500000000524;93.50499999999738;103.84999999999127;98.89499999999862;99.86499999999796;99.18499999999767;124.68499999999767;102.97000000000116<br />
79;BackboneJS-TodoMVC;404.7399999999998;431.64500000000044;462.9600000000137;441.9050000000061;444.2999999999738;399.28999999999905;421.74500000000626;437.7699999999968;466.3449999999939;472.4750000000058;425.15000000000146;479.8700000000026;532.7400000000052;417.53500000001077;448.0599999999831;424.58500000000276;458.58000000000175;475.1700000000128;431.5749999999971;444.820000000007;416.8349999999973;439.69499999999607;416.5650000000023;446.3249999999971;439.30000000001746<br />
80;AngularJS-TodoMVC/Adding100Items/Sync;534.8099999999995;542.2049999999981;530.8900000000067;512.1500000000015;552.2149999999965;522.1750000000011;534.4650000000001;548.7200000000012;528.864999999998;521.6599999999889;551.2250000000004;529.6650000000009;633.2699999999968;536.8500000000058;533.0899999999965;545.8649999999998;543.5349999999999;541.6599999999962;542.6800000000003;579.1549999999988;521.4400000000005;556.6999999999971;521.3050000000003;542.9449999999997;535.8399999999965<br />
81;AngularJS-TodoMVC/Adding100Items/Async;26.270000000000437;24.110000000000582;25.56999999999971;33.25999999999476;34.43000000000757;26.69000000000051;67.20000000000073;24.025000000001455;72.19000000000233;25.010000000009313;31.30500000000029;32.42500000000291;22.025000000001455;33.61000000000058;25.81500000000233;31.75;24.854999999999563;25.93499999999767;24.529999999998836;25.955000000001746;32.43499999999949;34.585000000002765;33.154999999998836;24.69499999999971;23.85000000000582<br />
82;AngularJS-TodoMVC/Adding100Items;561.0799999999999;566.3149999999987;556.4600000000064;545.4099999999962;586.6450000000041;548.8650000000016;601.6650000000009;572.7450000000026;601.0550000000003;546.6699999999983;582.5300000000007;562.0900000000038;655.2949999999983;570.4600000000064;558.9049999999988;577.6149999999998;568.3899999999994;567.5949999999939;567.2099999999991;605.1100000000006;553.875;591.2849999999999;554.4599999999991;567.6399999999994;559.6900000000023<br />
83;AngularJS-TodoMVC/CompletingAllItems/Sync;137.70999999999913;129.64500000000044;125.17499999999563;123.04000000000087;136.40000000000873;125.68499999999949;138.84000000000015;128.31499999999505;127.34499999999389;134.2149999999965;126.07500000000073;123.875;130.29499999999825;122.90500000000611;128.7899999999936;133.15500000000065;162.12000000000262;126.34000000000378;127.30000000000291;126.90499999999884;123.61000000000058;130.1349999999984;124.62000000000262;129.3050000000003;135.80499999999302<br />
84;AngularJS-TodoMVC/CompletingAllItems/Async;29.600000000000364;17.400000000001455;15.165000000000873;26.075000000004366;18.654999999998836;19.395000000000437;80.04000000000087;28.639999999999418;184.66500000000087;15.104999999995925;16.974999999998545;21.104999999999563;37.30000000000291;27.75499999999738;15.955000000001746;17.655000000000655;21.125;19.79500000000553;21.015000000006694;16.68499999999767;32.51500000000124;29.49499999999898;17.904999999998836;19.845000000001164;21.839999999996508<br />
85;AngularJS-TodoMVC/CompletingAllItems;167.3099999999995;147.0450000000019;140.3399999999965;149.11500000000524;155.05500000000757;145.07999999999993;218.88000000000102;156.95499999999447;312.00999999999476;149.31999999999243;143.04999999999927;144.97999999999956;167.59500000000116;150.6600000000035;144.74499999999534;150.8100000000013;183.24500000000262;146.1350000000093;148.3150000000096;143.5899999999965;156.12500000000182;159.62999999999738;142.52500000000146;149.15000000000146;157.64499999998952<br />
86;AngularJS-TodoMVC/DeletingAllItems/Sync;296.66999999999825;300.005000000001;301.68999999999505;311.7450000000026;432.0249999999942;296.8099999999995;302.66999999999825;321.77999999999884;324.04499999999825;310.36500000000524;307.0849999999991;306.28499999999985;422.8050000000003;300.15000000000146;442.3099999999977;517.5999999999985;324.90499999999884;309.09999999999854;309.02999999999884;300.36500000000524;360.6700000000001;313.7549999999974;306.8349999999991;418.5650000000023;318.1750000000029<br />
87;AngularJS-TodoMVC/DeletingAllItems/Async;37.100000000000364;15.204999999998108;15.384999999994761;22.544999999998254;16.354999999995925;19.390000000001237;44.340000000000146;12.92500000000291;23.525000000001455;16.220000000001164;17.954999999999927;12.794999999998254;17.290000000000873;23.50499999999738;20.405000000013388;17.74499999999898;13.965000000000146;20.31999999999971;17.039999999993597;23.955000000001746;17.079999999999927;28.770000000000437;23.06500000000233;15.509999999994761;15.360000000000582<br />
88;AngularJS-TodoMVC/DeletingAllItems;333.7699999999986;315.2099999999991;317.0749999999898;334.2900000000009;448.3799999999901;316.2000000000007;347.0099999999984;334.70500000000175;347.5699999999997;326.5850000000064;325.03999999999905;319.0799999999981;440.09500000000116;323.65499999999884;462.71500000001106;535.3449999999975;338.869999999999;329.41999999999825;326.06999999999243;324.320000000007;377.75;342.5249999999978;329.90000000000146;434.0749999999971;333.5350000000035<br />
89;AngularJS-TodoMVC;1062.159999999998;1028.5699999999997;1013.8749999999927;1028.8150000000023;1190.0800000000017;1010.1450000000023;1167.5550000000003;1064.4049999999988;1260.6349999999948;1022.5749999999971;1050.619999999999;1026.1500000000015;1262.9850000000006;1044.7750000000087;1166.3650000000052;1263.7699999999986;1090.505000000001;1043.1500000000015;1041.5950000000012;1073.020000000004;1087.7500000000018;1093.439999999995;1026.885000000002;1150.864999999998;1050.8699999999953<br />
90;Angular2-TypeScript-TodoMVC/Adding100Items/Sync;151.8700000000008;165.75500000000102;167.17499999999563;156.56500000000233;166.3649999999907;177.4499999999989;159.91499999999724;168.3249999999971;155.2850000000035;161.69499999999243;157.34500000000116;156;170.5699999999997;159.18999999999505;162.8350000000064;178.82999999999993;165.00499999999738;173.05999999999767;166.6999999999971;171.56500000000233;156.51999999999862;152.53499999999985;156.3550000000032;167.18999999999505;162.31000000001222<br />
91;Angular2-TypeScript-TodoMVC/Adding100Items/Async;21.670000000000073;30.794999999998254;15.560000000004948;27.5;26.42500000000291;49.414999999999054;18.985000000000582;27.69499999999971;14.845000000001164;30.464999999996508;18.549999999999272;31.69499999999971;26.955000000001746;18.145000000004075;32.75999999999476;19.350000000000364;25.514999999999418;26.580000000001746;21.56999999999971;19.07499999999709;17.039999999999054;16.25500000000102;15.489999999997963;15.854999999995925;17.90000000000873<br />
92;Angular2-TypeScript-TodoMVC/Adding100Items;173.54000000000087;196.54999999999927;182.73500000000058;184.06500000000233;192.7899999999936;226.86499999999796;178.89999999999782;196.0199999999968;170.13000000000466;192.15999999998894;175.89500000000044;187.6949999999997;197.52500000000146;177.33499999999913;195.59500000000116;198.1800000000003;190.5199999999968;199.63999999999942;188.2699999999968;190.63999999999942;173.55999999999767;168.79000000000087;171.84500000000116;183.04499999999098;180.21000000002095<br />
93;Angular2-TypeScript-TodoMVC/CompletingAllItems/Sync;24.655000000000655;26.37000000000262;26.215000000003783;24.525000000001455;25.730000000010477;24.19999999999891;25.665000000000873;25.654999999998836;25.139999999999418;27;27.145000000000437;30.360000000000582;26.20499999999447;29.24000000000524;28.27499999999418;26.045000000000073;27.00499999999738;26.205000000001746;25.409999999996217;26.82499999999709;24.9950000000008;25.18500000000131;25.094999999993888;26.334999999999127;26.739999999990687<br />
94;Angular2-TypeScript-TodoMVC/CompletingAllItems/Async;14.154999999998836;22.1150000000016;15.710000000006403;9.665000000000873;15.805000000007567;21.82499999999891;14.25499999999738;9.875;18.87000000000262;19.644999999989523;16.420000000000073;9.2400000000016;11.209999999999127;24.24000000000524;13.77499999999418;23.86499999999978;24.169999999998254;18.32499999999709;24.56999999999971;19.154999999998836;18.485000000000582;19.010000000002037;19.794999999998254;28.970000000001164;14.85000000000582<br />
95;Angular2-TypeScript-TodoMVC/CompletingAllItems;38.80999999999949;48.48500000000422;41.925000000010186;34.19000000000233;41.535000000018044;46.02499999999782;39.919999999998254;35.529999999998836;44.01000000000204;46.64499999998952;43.56500000000051;39.60000000000218;37.4149999999936;53.48000000001048;42.04999999998836;49.909999999999854;51.174999999995634;44.529999999998836;49.979999999995925;45.979999999995925;43.48000000000138;44.19500000000335;44.88999999999214;55.30500000000029;41.58999999999651<br />
96;Angular2-TypeScript-TodoMVC/DeletingItems/Sync;62.524999999999636;62.18999999999869;57.23500000000058;51.775000000001455;61.55999999999767;51.585000000000946;60.965000000000146;56.98500000000058;55.200000000004366;63.029999999998836;55.98999999999978;54.030000000002474;68.03500000000349;54.26499999999942;55.20999999999185;62.225000000000364;64.97999999999956;55.41000000000349;63.70999999999913;60.50500000000466;56.469999999999345;61.86999999999898;59.18000000000029;55.23999999999796;55.00500000000466<br />
97;Angular2-TypeScript-TodoMVC/DeletingItems/Async;20.05999999999949;20.399999999997817;9.549999999995634;7.2849999999962165;19.910000000003492;10.739999999999782;8.825000000000728;10.780000000006112;8.434999999997672;9.539999999993597;6.8399999999983265;20.95499999999811;19.229999999995925;7.059999999997672;16.729999999995925;10.56500000000051;20.49499999999898;37.36499999999796;13.785000000003492;10.460000000006403;10.715000000000146;9.3849999999984;9.380000000004657;6.169999999998254;6.8549999999959255<br />
98;Angular2-TypeScript-TodoMVC/DeletingItems;82.58499999999913;82.58999999999651;66.78499999999622;59.05999999999767;81.47000000000116;62.32500000000073;69.79000000000087;67.7650000000067;63.63500000000204;72.56999999999243;62.82999999999811;74.98500000000058;87.26499999999942;61.32499999999709;71.93999999998778;72.79000000000087;85.47499999999854;92.77500000000146;77.49500000000262;70.96500000001106;67.18499999999949;71.25499999999738;68.56000000000495;61.40999999999622;61.86000000000058<br />
99;Angular2-TypeScript-TodoMVC;294.9349999999995;327.625;291.445000000007;277.3150000000023;315.7950000000128;335.2149999999965;288.60999999999694;299.3150000000023;277.77500000000873;311.3749999999709;282.28999999999905;302.2800000000025;322.20499999999447;292.1400000000067;309.5849999999773;320.880000000001;327.169999999991;336.9449999999997;315.74499999999534;307.5850000000064;284.22499999999854;284.2400000000016;285.29499999999825;299.7599999999875;283.66000000001804<br />
100;VueJS-TodoMVC/Adding100Items/Sync;21.265000000001237;24.090000000000146;21.3949999999968;22.220000000001164;21.464999999996508;20.780000000000655;25.360000000000582;22.43000000000029;21.150000000001455;22.260000000009313;21.715000000000146;22.93499999999767;22.455000000001746;21.255000000004657;24.639999999999418;21.19499999999971;21.6349999999984;20.904999999998836;21.30999999999767;21.86500000000524;21.204999999999927;21.600000000002183;22.474999999998545;22.709999999999127;22.94999999999709<br />
101;VueJS-TodoMVC/Adding100Items/Async;98.95000000000073;100.3650000000016;91.74500000000262;102.06999999999971;95.78500000000349;117.88500000000022;111.46500000000015;105.63999999999942;104.54999999999563;98.93499999999767;105.22500000000036;107.55999999999767;123.34000000000378;94.50499999999738;114.52000000000407;94.4950000000008;112.09500000000116;134.85499999999593;104.92500000000291;95.13000000000466;95.39499999999862;91.72000000000116;95.15499999999884;104.37999999999738;105.38999999999942<br />
102;VueJS-TodoMVC/Adding100Items;120.21500000000196;124.45500000000175;113.13999999999942;124.29000000000087;117.25;138.66500000000087;136.82500000000073;128.0699999999997;125.69999999999709;121.19500000000698;126.94000000000051;130.49499999999534;145.79500000000553;115.76000000000204;139.1600000000035;115.69000000000051;133.72999999999956;155.75999999999476;126.23500000000058;116.9950000000099;116.59999999999854;113.32000000000335;117.62999999999738;127.08999999999651;128.3399999999965<br />
103;VueJS-TodoMVC/CompletingAllItems/Sync;7.700000000000728;7.920000000001892;8.084999999999127;7.904999999998836;7.875;7.770000000000437;8.470000000001164;8.239999999997963;9.080000000001746;9.32499999999709;8.199999999998909;11.145000000000437;8.694999999999709;8.05000000000291;7.955000000001746;8.284999999999854;8.755000000001019;13.940000000002328;7.915000000000873;7.724999999991269;8.764999999999418;7.67500000000291;8.230000000003201;9.794999999998254;7.975000000005821<br />
104;VueJS-TodoMVC/CompletingAllItems/Async;76.39500000000044;76.3849999999984;77.89500000000407;74.52999999999884;80.47000000000116;70.84499999999935;83.55500000000029;82.67999999999302;70.48500000000058;89.43000000000757;87.96999999999935;65.97999999999956;69.34500000000116;76.38999999999942;73.79499999999825;77.125;78.13999999999942;70.52500000000146;109.8949999999968;74.17999999999302;90.55999999999949;73.16500000000087;87.32499999999709;74.79499999999825;101.33999999999651<br />
105;VueJS-TodoMVC/CompletingAllItems;84.09500000000116;84.30500000000029;85.9800000000032;82.43499999999767;88.34500000000116;78.61499999999978;92.02500000000146;90.91999999999098;79.56500000000233;98.75500000000466;96.16999999999825;77.125;78.04000000000087;84.44000000000233;81.75;85.40999999999985;86.89500000000044;84.46500000000378;117.80999999999767;81.90499999998428;99.32499999999891;80.84000000000378;95.55500000000029;84.58999999999651;109.31500000000233<br />
106;VueJS-TodoMVC/DeletingAllItems/Sync;11.359999999998763;17.534999999999854;14.515000000006694;18.864999999997963;12.355000000010477;15.965000000000146;23.279999999998836;12.25;12.775000000001455;10.629999999990105;12.2549999999992;12.534999999999854;10.784999999996217;12.784999999996217;18.69000000000233;10.43499999999949;11.56499999999869;10.569999999999709;11.060000000004948;10.200000000011642;17.375;13.044999999998254;11.74500000000262;14.735000000000582;10.460000000006403<br />
107;VueJS-TodoMVC/DeletingAllItems/Async;22.30999999999949;22.849999999998545;22.139999999999418;22.93000000000029;21.92499999998836;23.644999999998618;27.610000000000582;22.839999999996508;36.18499999999767;23.47499999999127;24.05500000000029;40.654999999998836;27.025000000001455;24.885000000002037;34.23500000000058;24.8799999999992;30.8849999999984;22.290000000000873;27.104999999995925;26.569999999992433;27.834999999999127;21.599999999998545;26.375;23.875;22.519999999989523<br />
108;VueJS-TodoMVC/DeletingAllItems;33.669999999998254;40.3849999999984;36.65500000000611;41.794999999998254;34.279999999998836;39.60999999999876;50.88999999999942;35.08999999999651;48.95999999999913;34.10499999998137;36.30999999999949;53.18999999999869;37.80999999999767;37.669999999998254;52.92500000000291;35.31499999999869;42.44999999999709;32.86000000000058;38.16500000000087;36.770000000004075;45.20999999999913;34.6449999999968;38.12000000000262;38.61000000000058;32.979999999995925<br />
109;VueJS-TodoMVC;237.98000000000138;249.14500000000044;235.77500000000873;248.5199999999968;239.875;256.8899999999994;279.7400000000016;254.0799999999872;254.22499999999854;254.05499999999302;259.41999999999825;260.80999999999403;261.6450000000041;237.87000000000262;273.8350000000064;236.41499999999905;263.0749999999971;273.0849999999991;282.2099999999991;235.66999999999825;261.1349999999966;228.80500000000393;251.3050000000003;250.2899999999936;270.63499999999476<br />
110;jQuery-TodoMVC/Adding100Items/Sync;364.2950000000001;372.13500000000204;326.41999999999825;343.97499999999854;346.06999999999243;349.35000000000036;343.2400000000016;347.3249999999971;343.7099999999991;337.55500000000757;401.91499999999905;339.9850000000006;330.63499999999476;344.8249999999971;339.3099999999977;338.9499999999989;355.02000000000044;356.1800000000003;346.34999999999854;500.0850000000064;334.15999999999985;368.5849999999991;336.5650000000023;338.5900000000038;462.3350000000064<br />
111;jQuery-TodoMVC/Adding100Items/Async;25.354999999999563;19.159999999999854;52.104999999995925;18.764999999999418;28.97500000000582;35.68000000000029;29.465000000000146;24.200000000004366;28.640000000006694;35.81500000000233;21.625;18.149999999997817;18.05000000000291;26.084999999999127;26.889999999999418;48;23.020000000000437;18.464999999996508;28.340000000003783;19.07499999999709;37.23499999999876;18.915000000000873;45.6449999999968;21.335000000006403;19.710000000006403<br />
112;jQuery-TodoMVC/Adding100Items;389.64999999999964;391.2950000000019;378.5249999999942;362.73999999999796;375.04499999999825;385.03000000000065;372.70500000000175;371.52500000000146;372.3500000000058;373.3700000000099;423.53999999999905;358.1349999999984;348.6849999999977;370.9099999999962;366.1999999999971;386.9499999999989;378.0400000000009;374.6449999999968;374.6900000000023;519.1600000000035;371.3949999999986;387.5;382.2099999999991;359.9250000000102;482.0450000000128<br />
113;jQuery-TodoMVC/CompletingAllItems/Sync;656.9349999999995;604.6800000000003;593.7649999999994;597.5199999999968;621.6349999999948;606.6700000000001;601.1849999999977;600.9549999999945;617.3400000000038;606.3999999999942;579.9499999999989;576.2250000000022;583.4550000000017;590.2900000000009;653.4099999999889;830.505000000001;640.1500000000015;598.9599999999991;602.9200000000055;594.8450000000012;848.0150000000012;586.7950000000019;609.2299999999959;620.6150000000052;585.179999999993<br />
114;jQuery-TodoMVC/CompletingAllItems/Async;23.94499999999971;31.025000000001455;76.33999999999651;20.334999999999127;19.030000000013388;32.43000000000029;34.18999999999869;22.80000000000291;28.0199999999968;36.4600000000064;19.225000000000364;18.49499999999898;18.195000000006985;32.73500000000058;18.419999999998254;18.405000000000655;17.919999999998254;27.974999999998545;56.395000000004075;18.630000000004657;26.270000000000437;19.474999999998545;70.51499999999942;21.81999999999971;17.55000000000291<br />
115;jQuery-TodoMVC/CompletingAllItems;680.8799999999992;635.7050000000017;670.1049999999959;617.8549999999959;640.6650000000081;639.1000000000004;635.3749999999964;623.7549999999974;645.3600000000006;642.8600000000006;599.1749999999993;594.7200000000012;601.6500000000087;623.0250000000015;671.8299999999872;848.9100000000017;658.0699999999997;626.9349999999977;659.3150000000096;613.4750000000058;874.2850000000017;606.2700000000004;679.7449999999953;642.435000000005;602.7299999999959<br />
116;jQuery-TodoMVC/DeletingAllItems/Sync;301.5;298.84999999999854;298.86999999999534;306.2150000000038;366.2350000000006;317.85499999999956;339.4350000000013;305.125;326.0599999999977;317.9600000000064;296.65999999999985;299.02999999999884;299.00999999999476;351.54500000000553;327.0199999999895;299.0400000000009;300.0750000000007;311.8700000000026;353.4599999999991;318;407.8850000000002;296.5599999999977;319.70499999999447;381.875;307.4349999999977<br />
117;jQuery-TodoMVC/DeletingAllItems/Async;8.530000000000655;10.094999999997526;56.26000000000204;8.590000000003783;12.694999999992433;5.755000000001019;10.030000000002474;7.915000000000873;5.889999999999418;16.430000000007567;7.7849999999998545;6.005000000001019;9.404999999998836;17.755000000004657;10.75;6.3700000000008;10.375;15.770000000004075;6.629999999997381;6.44999999999709;11.139999999999418;13.659999999999854;57.419999999998254;6.099999999998545;10.599999999991269<br />
118;jQuery-TodoMVC/DeletingAllItems;310.03000000000065;308.94499999999607;355.1299999999974;314.80500000000757;378.929999999993;323.6100000000006;349.4650000000038;313.0400000000009;331.9499999999971;334.39000000001397;304.4449999999997;305.03499999999985;308.4149999999936;369.3000000000102;337.7699999999895;305.4100000000017;310.4500000000007;327.6400000000067;360.0899999999965;324.4499999999971;419.02499999999964;310.2199999999975;377.1249999999927;387.97499999999854;318.03499999998894<br />
119;jQuery-TodoMVC;1380.5599999999995;1335.9449999999997;1403.7599999999875;1295.4000000000015;1394.6399999999994;1347.7400000000016;1357.545000000002;1308.3199999999997;1349.6600000000035;1350.6200000000244;1327.159999999998;1257.8899999999994;1258.75;1363.2350000000079;1375.7999999999738;1541.2700000000023;1346.5600000000013;1329.2200000000012;1394.0950000000084;1457.0850000000064;1664.705;1303.989999999998;1439.0799999999872;1390.3350000000137;1402.8099999999977<br />
120;Preact-TodoMVC/Adding100Items/Sync;15.204999999999927;24.610000000000582;24.43000000000029;22.330000000001746;26.70999999999185;15.7549999999992;24.389999999999418;20.215000000003783;23.49000000000524;15.22500000000582;14.985000000000582;15.555000000000291;18.325000000004366;25.8949999999968;14.770000000004075;15.525000000001455;21.465000000000146;15.970000000001164;18.94000000000233;16.019999999989523;15.725000000000364;25.885000000002037;14.945000000006985;14.875;24.110000000000582<br />
121;Preact-TodoMVC/Adding100Items/Async;58.0049999999992;58.48999999999796;108.47999999999593;60.31499999999505;62.870000000009895;63.85499999999956;57.7599999999984;63.88500000000204;81.09999999999854;63.2899999999936;62.034999999999854;73.15000000000146;77.92500000000291;60.73500000000058;58.53499999998894;58.33499999999913;64.88500000000204;68.36000000000058;61.92000000000553;76.46499999999651;88.75;63.775000000001455;111.65000000000146;71.19499999999971;88.68499999999767<br />
122;Preact-TodoMVC/Adding100Items;73.20999999999913;83.09999999999854;132.90999999999622;82.6449999999968;89.58000000000175;79.60999999999876;82.14999999999782;84.10000000000582;104.59000000000378;78.51499999999942;77.02000000000044;88.70500000000175;96.25000000000728;86.62999999999738;73.30499999999302;73.86000000000058;86.35000000000218;84.33000000000175;80.86000000000786;92.48499999998603;104.47500000000036;89.66000000000349;126.59500000000844;86.06999999999971;112.79499999999825<br />
123;Preact-TodoMVC/CompletingAllItems/Sync;9.610000000000582;9.340000000000146;9.404999999998836;11.009999999994761;10.214999999996508;11.520000000000437;10.18999999999869;9.444999999999709;10.395000000004075;10.845000000001164;10.354999999999563;10.075000000000728;10.494999999995343;10.235000000000582;9.375;10.18999999999869;9.950000000000728;9.764999999999418;9.989999999997963;9.940000000002328;12.574999999998909;9.354999999999563;9.480000000003201;11.569999999999709;12.665000000008149<br />
124;Preact-TodoMVC/CompletingAllItems/Async;35.335000000000946;30.215000000000146;32.42500000000291;43.705000000001746;33.904999999998836;50.94499999999971;42.91500000000087;30.9800000000032;33.31500000000233;35.13499999999476;32.76999999999862;33.340000000000146;30.229999999995925;38.93499999999767;41.625;31.44000000000051;36.75;37.83499999999913;33.17500000000291;27.83499999999185;32.849999999998545;30.600000000002183;28.55999999999767;33.00500000000466;30.19000000000233<br />
125;Preact-TodoMVC/CompletingAllItems;44.94500000000153;39.55500000000029;41.830000000001746;54.71499999999651;44.11999999999534;62.465000000000146;53.10499999999956;40.42500000000291;43.7100000000064;45.979999999995925;43.12499999999818;43.41500000000087;40.72499999999127;49.169999999998254;51;41.6299999999992;46.70000000000073;47.599999999998545;43.16500000000087;37.77499999999418;45.42499999999745;39.955000000001746;38.04000000000087;44.575000000004366;42.85500000001048<br />
126;Preact-TodoMVC/DeletingItems/Sync;12.155000000000655;6.9099999999998545;6.889999999999418;6.150000000001455;7.319999999992433;14.270000000000437;14.140000000003056;8.020000000004075;7.344999999993888;7.7850000000034925;12.819999999999709;7.31499999999869;7.309999999997672;8.909999999996217;11.135000000009313;6.424999999999272;6.595000000001164;6.290000000000873;12.190000000002328;6.7850000000034925;7.014999999999418;6.229999999999563;6.3950000000040745;10.594999999993888;8.770000000004075<br />
127;Preact-TodoMVC/DeletingItems/Async;12.410000000001673;17.700000000000728;67.28000000000611;16.655000000006112;18.470000000001164;17.704999999999927;28.700000000000728;15.00499999999738;16.50499999999738;19.535000000003492;14.350000000000364;15.364999999997963;19.150000000001455;16.205000000001746;11;12.385000000000218;11.770000000000437;12.12000000000262;20.299999999995634;6.809999999997672;6.764999999999418;16.030000000002474;6.440000000002328;11.989999999997963;18.69999999999709<br />
128;Preact-TodoMVC/DeletingItems;24.56500000000233;24.610000000000582;74.17000000000553;22.805000000007567;25.789999999993597;31.975000000000364;42.84000000000378;23.025000000001455;23.84999999999127;27.320000000006985;27.170000000000073;22.679999999996653;26.459999999999127;25.114999999997963;22.135000000009313;18.80999999999949;18.3650000000016;18.410000000003492;32.48999999999796;13.595000000001164;13.779999999998836;22.260000000002037;12.835000000006403;22.58499999999185;27.470000000001164<br />
129;Preact-TodoMVC;142.72000000000298;147.26499999999942;248.9100000000035;160.16500000000087;159.4899999999907;174.04999999999927;178.09500000000116;147.5500000000102;172.15000000000146;151.81500000000233;147.3149999999987;154.79999999999927;163.43499999999767;160.9149999999936;146.44000000000233;134.29999999999927;151.4150000000045;150.34000000000378;156.5150000000067;143.85499999998137;163.67999999999665;151.87500000000728;177.47000000001572;153.22999999999593;183.1200000000099<br />
130;Inferno-TodoMVC/Adding100Items/Sync;126.0099999999984;133.8100000000013;139.45499999999447;128.51000000000204;132.47500000000582;135.21999999999935;144.1349999999984;136.52000000000407;130.47000000000116;137.07000000000698;132.65999999999985;134.09999999999854;133.9449999999997;142.1449999999968;145.49000000000524;142.53499999999985;128.76500000000306;139.93499999999767;138.20999999999913;131.15499999999884;130.96500000000015;127.7300000000032;146.9300000000003;136.5300000000061;132<br />
131;Inferno-TodoMVC/Adding100Items/Async;16.965000000000146;34.715000000000146;36.424999999995634;21.299999999995634;18.195000000006985;22.854999999999563;27.040000000000873;39.15999999999622;30.614999999997963;32.354999999995925;33.590000000000146;30.589999999996508;29.345000000001164;21.709999999999127;19.389999999999418;25.73999999999978;17.19499999999971;18.125;34.23999999999796;27.504999999990105;27.75;18.724999999998545;17.3949999999968;17.034999999996217;30.10000000000582<br />
132;Inferno-TodoMVC/Adding100Items;142.97499999999854;168.52500000000146;175.8799999999901;149.80999999999767;150.6700000000128;158.0749999999989;171.17499999999927;175.6800000000003;161.08499999999913;169.4250000000029;166.25;164.68999999999505;163.29000000000087;163.85499999999593;164.88000000000466;168.27499999999964;145.96000000000276;158.05999999999767;172.4499999999971;158.65999999998894;158.71500000000015;146.45500000000175;164.3249999999971;153.56500000000233;162.10000000000582<br />
133;Inferno-TodoMVC/CompletingAllItems/Sync;144.375;160.22000000000116;173.22000000000116;152.77999999999884;156.7100000000064;154.8150000000005;129.1899999999987;154.75;130.63500000000204;152.72000000000116;130.91500000000087;149.90499999999884;156.22499999999854;162.76000000000204;145.4649999999965;129.0650000000005;157.0649999999987;154.5699999999997;156.8050000000003;151.60499999999593;129.4449999999997;146.60999999999694;120.52500000000146;159.7699999999968;147.44000000000233<br />
134;Inferno-TodoMVC/CompletingAllItems/Async;24.460000000000946;42.05500000000029;35.12000000000262;129.40499999999884;17.910000000003492;59.75;25.775000000001455;40.45499999999447;19.285000000003492;9.584999999991851;32.30500000000029;31.165000000000873;27.80500000000029;168.125;6.255000000004657;13.364999999999782;12.784999999999854;6.3400000000037835;9.064999999995052;20.414999999993597;13.635000000000218;11.829999999998108;20.935000000004948;23.17500000000291;12.494999999995343<br />
135;Inferno-TodoMVC/CompletingAllItems;168.83500000000095;202.27500000000146;208.34000000000378;282.1849999999977;174.6200000000099;214.5650000000005;154.96500000000015;195.20499999999447;149.92000000000553;162.30499999999302;163.22000000000116;181.0699999999997;184.02999999999884;330.88500000000204;151.72000000000116;142.4300000000003;169.84999999999854;160.9100000000035;165.86999999999534;172.01999999998952;143.07999999999993;158.43999999999505;141.4600000000064;182.9449999999997;159.93499999999767<br />
136;Inferno-TodoMVC/DeletingItems/Sync;598.1900000000005;566.8400000000001;628.6800000000003;575.2350000000006;556.7149999999965;806.4950000000008;576.1649999999972;602.3050000000003;575.4649999999965;606.6499999999942;790.4950000000008;577.8100000000013;595.8099999999977;599.0749999999971;590.5399999999936;583.6100000000006;564.9550000000017;605.8250000000044;591.7150000000038;586.0399999999936;566.1049999999996;562.375;584.5250000000015;571.695000000007;573.9599999999919<br />
137;Inferno-TodoMVC/DeletingItems/Async;38.784999999999854;74.45999999999913;7;43.71499999999651;7.605000000010477;17.295000000000073;10.544999999998254;58.729999999995925;6.365000000005239;35.04000000000815;6.779999999998836;16.770000000000437;21.400000000001455;47.04000000000087;16.105000000010477;7.364999999999782;9.43999999999869;31.81500000000233;10.12999999999738;9.880000000004657;15.295000000000073;36.5;16.459999999999127;37.74499999999534;17.31500000000233<br />
138;Inferno-TodoMVC/DeletingItems;636.9750000000004;641.2999999999993;635.6800000000003;618.9499999999971;564.320000000007;823.7900000000009;586.7099999999955;661.0349999999962;581.8300000000017;641.6900000000023;797.2749999999996;594.5800000000017;617.2099999999991;646.114999999998;606.6450000000041;590.9750000000004;574.3950000000004;637.6400000000067;601.8450000000012;595.9199999999983;581.3999999999996;598.875;600.9850000000006;609.4400000000023;591.2749999999942<br />
139;Inferno-TodoMVC;948.7849999999999;1012.1000000000022;1019.8999999999942;1050.9449999999924;889.6100000000297;1196.4300000000003;912.8499999999949;1031.919999999991;892.8350000000064;973.4199999999983;1126.7450000000008;940.3399999999965;964.5299999999988;1140.854999999996;923.2450000000099;901.6800000000003;890.2050000000017;956.6100000000079;940.1649999999936;926.5999999999767;883.1949999999997;903.7699999999968;906.7700000000041;945.9500000000044;913.3099999999977<br />
140;Elm-TodoMVC/Adding100Items/Sync;305.84000000000015;310.3500000000022;312.47000000000116;317.6200000000026;299.5650000000023;304.28000000000065;323.7350000000006;354.11500000000524;312.3050000000003;322.0749999999971;327.6700000000001;357.6650000000009;314.6949999999997;304.36499999999796;308.27999999999884;319.7000000000007;305.7649999999994;314.4650000000038;322.31499999999505;327.8799999999901;319.6399999999994;300.70500000000175;296.4050000000061;309.54499999999825;318.41999999999825<br />
141;Elm-TodoMVC/Adding100Items/Async;20.350000000000364;35.904999999998836;47.724999999998545;51.83499999999913;49.104999999995925;43.92500000000109;31.385000000002037;18.729999999995925;22.214999999996508;29.739999999990687;20.290000000000873;25.534999999999854;22.19999999999709;73;38.21499999999651;18.13500000000022;200.40499999999884;23.43000000000029;23.114999999997963;19.64999999999418;20.51000000000022;46.3650000000016;35.18999999999505;29.510000000002037;21.44000000000233<br />
142;Elm-TodoMVC/Adding100Items;326.1900000000005;346.255000000001;360.1949999999997;369.45500000000175;348.66999999999825;348.20500000000175;355.1200000000026;372.84500000000116;334.5199999999968;351.8149999999878;347.96000000000095;383.2000000000007;336.8949999999968;377.36499999999796;346.49499999999534;337.83500000000095;506.16999999999825;337.8950000000041;345.429999999993;347.5299999999843;340.14999999999964;347.07000000000335;331.59500000000116;339.0550000000003;339.8600000000006<br />
143;Elm-TodoMVC/CompletingAllItems/Sync;290.65499999999884;304.84999999999854;376.7350000000006;312.4150000000009;309.61500000000524;301.2999999999993;425.2400000000016;469.5400000000009;318.375;316.54499999999825;421.89000000000124;305.83500000000276;297.90499999999884;309.02999999999884;291.0399999999936;314.1650000000009;299.8099999999977;316.5599999999977;299.09500000000116;338.91999999999825;297.6749999999993;305.6850000000013;416.2450000000026;300.70500000000175;311.2749999999942<br />
144;Elm-TodoMVC/CompletingAllItems/Async;15.274999999999636;41.62999999999738;27.685000000004948;28.19999999999709;36.92500000000291;17.729999999999563;17.095000000001164;20.964999999996508;26.470000000001164;20.729999999995925;18.639999999999418;17.7599999999984;21.68000000000029;77.58499999999185;63.63499999999476;27.05000000000109;54.43999999999869;19.75499999999738;14.440000000002328;27.61500000000524;23.05000000000109;75.04000000000087;18.715000000003783;25.139999999999418;30.45000000001164<br />
145;Elm-TodoMVC/CompletingAllItems;305.9299999999985;346.4799999999959;404.42000000000553;340.61499999999796;346.54000000000815;319.02999999999884;442.33500000000276;490.5049999999974;344.84500000000116;337.2749999999942;440.53000000000065;323.59500000000116;319.5849999999991;386.6149999999907;354.67499999998836;341.21500000000196;354.24999999999636;336.31499999999505;313.5350000000035;366.5350000000035;320.72500000000036;380.7250000000022;434.9600000000064;325.84500000000116;341.7250000000058<br />
146;Elm-TodoMVC/DeletingItems/Sync;249.29500000000007;267.8899999999994;264.2450000000026;261.1499999999942;282.54999999998836;267.60499999999956;278.6100000000006;262.0049999999974;268.0149999999994;262.63499999999476;256.97999999999956;280.65000000000146;278.5349999999962;271.31999999999243;254.02499999999418;292.1700000000001;260.4750000000022;278.66999999999825;257.79999999999563;296.9100000000035;266.1399999999994;259.3999999999978;442;264.8350000000064;272.5650000000023<br />
147;Elm-TodoMVC/DeletingItems/Async;15.635000000000218;14.850000000002183;16.50499999999738;15.275000000008731;10.84000000001106;8.090000000000146;43.93500000000131;9.20499999999447;12.75;18.56500000000233;9.905000000000655;10.24500000000262;8.930000000000291;231;20.570000000006985;13.965000000000146;49.875;10.839999999996508;8.269999999996799;8.19999999999709;13.699999999998909;60.405000000002474;13.544999999998254;15.009999999994761;10.479999999995925<br />
148;Elm-TodoMVC/DeletingItems;264.9300000000003;282.7400000000016;280.75;276.4250000000029;293.3899999999994;275.6949999999997;322.5450000000019;271.20999999999185;280.7649999999994;281.1999999999971;266.8850000000002;290.8950000000041;287.4649999999965;502.31999999999243;274.59500000000116;306.1350000000002;310.3500000000022;289.50999999999476;266.06999999999243;305.1100000000006;279.8399999999983;319.8050000000003;455.54499999999825;279.84500000000116;283.04499999999825<br />
149;Elm-TodoMVC;897.0499999999993;975.4749999999985;1045.3650000000052;986.4950000000026;988.6000000000058;942.9300000000003;1120.0000000000073;1134.5599999999904;960.1299999999974;970.289999999979;1055.3750000000018;997.690000000006;943.9449999999924;1266.299999999981;975.7649999999849;985.1850000000031;1170.7699999999968;963.7199999999939;925.0349999999889;1019.1749999999884;940.7149999999983;1047.6000000000058;1222.1000000000058;944.7450000000026;964.6300000000047<br />
150;Flight-TodoMVC/Adding100Items/Sync;136.78000000000065;143.5600000000013;134.66999999999825;138.38000000000466;138.74000000000524;135.96500000000015;131.82500000000437;140.47500000000582;132.15000000000873;132.5850000000064;132.70499999999993;133.35499999999956;134.71500000000378;137.02499999999418;136.7850000000035;132.9300000000003;139.55999999999767;131.11499999999796;139.84000000001106;134.65999999998894;136.50500000000102;142.97000000000116;140.9300000000003;132.61999999999534;139.9100000000035<br />
151;Flight-TodoMVC/Adding100Items/Async;37.56999999999971;23.700000000000728;20.825000000004366;31.185000000012224;44.86000000000058;21.670000000000073;45.76499999999942;28.32499999999709;32.75;18.80999999999767;26.960000000000946;54.659999999999854;20.80500000000029;32.74000000000524;31.56500000000233;22.735000000000582;20.270000000000437;38.63999999999942;18.235000000000582;22.895000000004075;23.23999999999978;17.80999999999767;38.55000000000291;28.904999999998836;18.414999999993597<br />
152;Flight-TodoMVC/Adding100Items;174.35000000000036;167.26000000000204;155.49500000000262;169.56500000001688;183.60000000000582;157.63500000000022;177.59000000000378;168.8000000000029;164.90000000000873;151.39500000000407;159.66500000000087;188.01499999999942;155.52000000000407;169.76499999999942;168.35000000000582;155.66500000000087;159.8299999999981;169.75499999999738;158.07500000001164;157.55499999999302;159.7450000000008;160.77999999999884;179.4800000000032;161.52499999999418;158.3249999999971<br />
153;Flight-TodoMVC/CompletingAllItems/Sync;130.51500000000124;135.38000000000102;115.40499999999884;198.59999999999127;150.05499999999302;123.46500000000015;126.97499999999854;125.84000000000378;130.18499999999767;120.81999999999243;119.02499999999964;129.78499999999985;121.94000000000233;119.05000000000291;129.3000000000029;121.40999999999985;119.27999999999884;121.24500000000262;132.65499999999884;128.9499999999971;126.07500000000073;143.8849999999984;124.23500000000058;126.56000000001222;117.94499999999243<br />
154;Flight-TodoMVC/CompletingAllItems/Async;19.484999999998763;60.54000000000087;20.715000000003783;34.07499999999709;30.610000000000582;20.11499999999978;25.95499999999447;21.010000000002037;37.58499999999185;25.375;32.32500000000073;54.095000000001164;32.63500000000204;19.40999999998894;29.645000000004075;22.534999999999854;20.20499999999811;48.359999999993306;21.875;26.57500000001164;24.894999999998618;18.040000000000873;47.65999999999622;27.92500000000291;23.369999999995343<br />
155;Flight-TodoMVC/CompletingAllItems;150;195.9200000000019;136.12000000000262;232.67499999998836;180.6649999999936;143.57999999999993;152.92999999999302;146.85000000000582;167.76999999998952;146.19499999999243;151.35000000000036;183.88000000000102;154.57500000000437;138.45999999999185;158.94500000000698;143.9449999999997;139.48499999999694;169.60499999999593;154.52999999999884;155.52500000000873;150.96999999999935;161.92499999999927;171.8949999999968;154.48500000001513;141.31499999998778<br />
156;Flight-TodoMVC/DeletingItems/Sync;104.86499999999978;120.29000000000087;110.06999999999971;107.19999999999709;101.55000000000291;99.44500000000153;108.51499999999942;106.78500000000349;102.66000000000349;107.36500000000524;105.46500000000015;103.22000000000116;109.83499999999913;100.46999999998661;106.92500000000291;100.94499999999971;98.97000000000116;119.27500000000146;96.86500000000524;105.19499999999243;102.6200000000008;110.17499999999927;109.18999999999505;99.49499999999534;113.125<br />
157;Flight-TodoMVC/DeletingItems/Async;11.319999999999709;20.919999999998254;9.834999999999127;16.089999999996508;18.03499999998894;7.440000000000509;9.959999999999127;8.00499999999738;31.070000000006985;7.184999999997672;7.369999999998981;50.099999999998545;10.92500000000291;7.444999999992433;23.264999999999418;12.06500000000051;14.510000000002037;13.180000000000291;8.565000000002328;7.150000000008731;7.4099999999998545;22.349999999998545;18.510000000002037;19.014999999999418;10.134999999994761<br />
158;Flight-TodoMVC/DeletingItems;116.18499999999949;141.20999999999913;119.90499999999884;123.2899999999936;119.58499999999185;106.88500000000204;118.47499999999854;114.79000000000087;133.73000000001048;114.55000000000291;112.83499999999913;153.3199999999997;120.76000000000204;107.91499999997905;130.19000000000233;113.01000000000022;113.4800000000032;132.45500000000175;105.43000000000757;112.34500000000116;110.03000000000065;132.52499999999782;127.69999999999709;118.50999999999476;123.25999999999476<br />
159;Flight-TodoMVC;440.53499999999985;504.39000000000306;411.5200000000041;525.5299999999988;483.84999999999127;408.1000000000022;448.99499999999534;430.4400000000096;466.40000000000873;412.1399999999994;423.85000000000036;525.2150000000001;430.8550000000105;416.1399999999703;457.48500000001513;412.6200000000008;412.79499999999825;471.81499999999505;418.03500000001804;425.4250000000029;420.7450000000008;455.2299999999959;479.0749999999971;434.5200000000041;422.8999999999796<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== Stylo gtest microbenchmarks ===<br />
<br />
* contact: :bholley, :SimonSapin<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/layout/style/test/gtest]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Microbench Microbench]<br />
* reporting: intervals in ms (lower is better)<br />
* data: each test is run and measured 5 times<br />
* summarization: take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the 5 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/gtest/mozilla/MozGTestBench.cpp#43-46 source: MozGTestBench.cpp]<br />
<br />
<br />
Servo_StyleSheet_FromUTF8Bytes_Bench parses a sample stylesheet 20 times with Stylo’s CSS parser that is written in Rust. It starts from an in-memory UTF-8 string, so that I/O or UTF-16-to-UTF-8 conversion is not measured.<br />
<br />
Gecko_nsCSSParser_ParseSheet_Bench does the same with Gecko’s previous CSS parser that is written in C++, for comparison.<br />
<br />
Servo_DeclarationBlock_SetPropertyById_Bench parses the string "10px" with Stylo’s CSS parser and sets it as the value of a property in a declaration block, a million times. This is similar to animations that are based on JavaScript code modifying Element.style instead of using CSS @keyframes.<br />
<br />
Servo_DeclarationBlock_SetPropertyById_WithInitialSpace_Bench is the same, but with the string " 10px" with an initial space. That initial space is less typical of JS animations, but is almost always there in stylesheets or full declarations like "width: 10px". This microbenchmark was used to test the effect of some specific code changes. Regressions here may be acceptable if Servo_StyleSheet_FromUTF8Bytes_Bench is not affected.<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== tabpaint ===<br />
* contact: :mconley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tabpaint tabpaint]<br />
* bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1253382<br />
* type: Pageloader<br />
* measuring: <br />
** The time it takes to paint the content of a newly opened tab when the tab is opened from the parent (ex: by hitting Ctrl-T)<br />
** The time it takes to paint the content of a newly opened tab when the tab is opened from content (ex: by clicking on a target="_blank" link)<br />
* '''NOT''' measuring:<br />
** The time it takes to animate the tabs. That's the responsibility of the TART test. tabpaint is strictly concerned with the painting of the web content.<br />
* data: we load the tabpaint trigger page 20 times, each run produces two values (the time it takes to paint content when opened from the parent, and the time it takes to paint content when opened from content), resulting in 2 sets of 20 data points.<br />
** Example:<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;tabpaint-from-parent;105;76;66;64;64;69;65;63;70;68;64;60;65;63;54;61;64;67;61;64<br />
1; tabpaint-from-content;129;68;72;72;70;78;86;85;82;79;120;92;76;80;74;82;76;89;77;85<br />
</pre><br />
|}<br />
<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 19 data points<br />
** suite: geometric_mean(subtests)<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== TART/CART ===<br />
* contact: :jmaher, :mconley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tart tart]<br />
* type: PageLoader<br />
* measuring: Desktop Firefox UI animation speed and smoothness<br />
* reporting: intervals in ms (lower is better) - see below for details<br />
* data: there are 30 reported subtests from TART which we load 25 times, resulting in 30 sets of 25 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 24 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 30 subtest results.<br />
<br />
TART is the '''Tab Animation Regression Test''' and CART is the '''Customize Animation Regression Test'''.<br />
<br />
TART tests tab animation on these cases:<br />
* Simple: single new tab of about:blank open/close without affecting (shrinking/expanding) other tabs.<br />
* icon: same as above with favicons and long title instead of about:blank.<br />
* Newtab: newtab open with thumbnails preview - without affecting other tabs, with and without preload.<br />
* Fade: opens a tab, then measures fadeout/fadein (tab animation without the overhead of opening/closing a tab).<br />
** Case 1 is tested with DPI scaling of 1.<br />
** Case 2 is tested with DPI scaling of 1.0 and 2.0.<br />
** Case 3 is tested with the default scaling of the test system.<br />
** Case 4 is tested with DPI scaling of 2.0 with the "icon" tab (favicon and long title).<br />
** Each animation produces 3 test results:<br />
*** error: difference between the designated duration and the actual completion duration from the trigger.<br />
*** half: average frame interval over the 2nd half of the animation.<br />
*** all: average frame interval over all recorded intervals.<br />
*** And the run logs also include the explicit intervals from which these 3 values were derived.<br />
<br />
CART uses the same framework to measure performance of the Australize "customize" animation (for entering the toolbar/menu customization view). Subtests include:<br />
* Customize-enter animation (full and css-animation-only part).<br />
* Customize-exit animation<br />
<br />
TART/CART can be used as a stand-alone addon:<br />
* Set the browser to ASAP mode (preferences layout.frame_rate=0, docshell.event_starvation_delay_hint=1). This makes the browser refresh the screen as fast as possible instead of limiting it to 60hz, thus allows higher resolution measurements. Requires restart to take effect.<br />
* [https://hg.mozilla.org/mozilla-central/raw-file/tip/testing/talos/talos/generate-tart-xpi.html Install the latest addon xpi], or zip the addon dir of the source code, rename the extension to xpi and install.<br />
* Visit chrome://tart/content/tart.html<br />
* Select subtests to run. By default the selected tests are all the TART tests. CART is the "Customize" test.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;simple-open-DPI1.half.TART;2.35;2.42;2.63;2.47;2.71;2.38;2.37;2.41;2.48;2.70;2.44;2.41;2.51;2.43;2.41;2.56;2.76;2.49;2.36;2.40;2.70;2.53;2.35;2.46;2.47<br />
1;simple-open-DPI1.all.TART;2.80;2.95;3.12;2.92;3.46;2.87;2.92;2.99;2.89;3.24;2.94;2.95;3.25;2.92;3.02;3.00;3.21;3.31;2.84;2.87;3.10;3.13;3.10;2.94;2.95<br />
2;simple-open-DPI1.error.TART;33.60;36.33;35.93;35.97;38.17;34.77;36.00;35.01;36.25;36.22;35.24;35.76;36.64;36.31;34.74;34.40;34.34;41.48;35.04;34.83;34.27;34.04;34.37;35.22;36.52<br />
3;simple-close-DPI1.half.TART;1.95;1.88;1.91;1.94;2.00;1.97;1.88;1.76;1.84;2.18;1.99;1.83;2.04;1.93;1.81;1.77;1.79;1.90;1.82;1.84;1.78;1.75;1.76;1.89;1.81<br />
4;simple-close-DPI1.all.TART;2.19;2.08;2.07;2.32;2.65;2.32;2.26;1.96;2.02;2.26;2.05;2.16;2.19;2.11;2.04;1.98;2.05;2.02;2.01;2.11;1.97;1.97;2.05;2.01;2.12<br />
5;simple-close-DPI1.error.TART;21.35;23.87;22.60;22.02;22.97;22.35;22.15;22.79;21.81;21.90;22.26;22.58;23.15;22.43;22.76;23.36;21.86;22.70;22.96;22.70;22.28;22.03;21.78;22.33;22.23<br />
6;icon-open-DPI1.half.TART;2.42;2.33;2.50;2.58;2.36;2.51;2.60;2.35;2.52;2.51;2.59;2.34;3.29;2.63;2.46;2.57;2.53;2.50;2.39;2.51;2.44;2.66;2.72;2.36;2.52<br />
7;icon-open-DPI1.all.TART;3.12;2.94;3.42;3.23;3.10;3.21;3.33;3.14;3.24;3.32;3.46;2.90;3.65;3.19;3.27;3.47;3.32;3.13;2.95;3.23;3.21;3.33;3.47;3.15;3.32<br />
8;icon-open-DPI1.error.TART;38.39;37.96;37.03;38.85;37.03;37.17;37.19;37.56;36.67;36.33;36.89;36.85;37.54;38.46;35.38;37.52;36.68;36.48;36.03;35.71;37.12;37.08;37.74;38.09;35.85<br />
9;icon-close-DPI1.half.TART;1.94;1.93;1.79;1.89;1.83;1.83;1.90;1.89;1.75;1.76;1.77;1.74;1.81;1.86;1.95;1.99;1.73;1.83;1.97;1.80;1.94;1.84;2.01;1.88;2.03<br />
10;icon-close-DPI1.all.TART;2.14;2.14;1.98;2.03;2.02;2.25;2.29;2.13;1.97;2.01;1.94;2.01;1.99;2.05;2.11;2.09;2.02;2.02;2.12;2.02;2.20;2.11;2.19;2.07;2.27<br />
11;icon-close-DPI1.error.TART;24.51;25.03;25.17;24.54;23.86;23.70;24.02;23.61;24.10;24.53;23.92;23.75;23.73;23.78;23.42;25.40;24.21;24.55;23.96;24.96;24.41;24.96;24.16;24.20;23.65<br />
12;icon-open-DPI2.half.TART;2.60;2.60;2.60;2.53;2.51;2.53;2.59;2.43;2.66;2.60;2.47;2.61;2.64;2.43;2.49;2.63;2.61;2.60;2.52;3.06;2.65;2.74;2.69;2.44;2.43<br />
13;icon-open-DPI2.all.TART;3.45;3.22;3.38;3.47;3.10;3.31;3.47;3.13;3.37;3.14;3.28;3.20;3.40;3.15;3.14;3.23;3.41;3.16;3.26;3.55;3.29;3.49;3.44;3.11;3.22<br />
14;icon-open-DPI2.error.TART;40.20;37.86;37.53;41.46;37.03;38.77;37.48;36.97;37.28;37.72;36.09;36.71;38.89;38.21;37.37;38.91;36.79;36.10;37.60;36.99;37.56;35.76;38.92;37.46;37.52<br />
15;icon-close-DPI2.half.TART;2.27;1.97;1.83;1.86;2.08;1.88;1.80;1.90;1.77;1.89;2.06;1.89;1.89;1.86;2.01;1.79;1.78;1.83;1.89;1.85;1.74;1.82;1.84;1.81;1.79<br />
16;icon-close-DPI2.all.TART;2.33;2.13;2.18;2.03;2.33;2.03;1.95;2.06;1.96;2.13;2.25;2.10;2.13;2.03;2.18;2.00;2.05;2.01;2.08;2.05;1.96;2.04;2.10;2.04;2.08<br />
17;icon-close-DPI2.error.TART;22.99;23.02;24.32;23.58;23.05;23.34;22.92;23.22;22.90;23.33;23.33;23.05;22.80;23.45;24.05;22.39;22.14;22.97;22.85;22.13;22.89;22.98;23.69;22.99;23.08<br />
18;iconFade-close-DPI2.half.TART;2.14;1.84;1.78;1.84;1.66;2.07;1.81;3.82;1.68;1.85;1.62;2.54;2.06;1.85;2.17;1.80;1.71;1.67;2.11;1.73;2.94;2.14;1.93;1.72;2.05<br />
19;iconFade-close-DPI2.all.TART;2.17;1.76;1.80;1.89;1.70;1.93;1.80;3.38;1.78;1.90;1.70;2.50;1.94;1.81;2.29;1.82;1.79;1.76;2.23;1.80;2.85;2.06;1.84;1.83;2.09<br />
20;iconFade-close-DPI2.error.TART;4.67;4.11;3.69;4.51;4.46;3.88;4.54;3.68;4.56;3.82;4.32;4.87;4.42;3.72;3.72;4.54;4.93;4.46;4.64;3.39;4.09;3.28;3.58;4.11;3.80<br />
21;iconFade-open-DPI2.half.TART;2.37;2.61;2.37;2.62;2.54;2.84;2.57;2.44;4.33;2.57;2.59;2.67;2.58;2.48;2.38;2.39;2.50;2.39;2.50;2.57;2.52;2.55;2.47;2.69;2.41<br />
22;iconFade-open-DPI2.all.TART;2.45;2.64;2.39;2.60;2.57;2.60;2.61;2.59;3.14;2.55;2.54;2.66;2.57;2.48;2.47;2.46;2.55;2.45;2.51;2.61;2.54;2.58;2.50;2.54;2.40<br />
23;iconFade-open-DPI2.error.TART;3.64;4.67;4.31;5.79;6.43;3.64;4.82;8.68;5.78;4.38;3.80;3.98;4.64;653.63;4.63;3.76;4.23;5.01;5.48;4.99;3.48;5.10;5.02;6.14;5.58<br />
24;newtab-open-preload-no.half.TART;5.02;2.90;3.06;3.03;2.94;2.94;3.08;3.12;3.60;3.19;2.82;2.96;3.67;7.85;2.79;3.12;3.18;2.92;2.86;2.96;2.96;3.00;2.90;2.97;2.94<br />
25;newtab-open-preload-no.all.TART;7.11;4.66;5.03;4.68;4.50;4.58;4.76;4.76;5.67;4.96;4.36;4.51;5.21;11.16;4.38;4.69;4.77;4.45;4.45;4.70;4.51;4.61;4.54;4.69;4.60<br />
26;newtab-open-preload-no.error.TART;40.82;40.85;37.38;37.40;36.30;36.47;36.89;37.63;37.12;38.65;36.73;36.95;36.11;38.59;37.39;37.77;37.93;37.54;37.46;38.29;36.58;38.25;38.32;37.92;36.93<br />
27;newtab-open-preload-yes.half.TART;3.14;2.96;2.97;8.37;2.98;3.00;2.96;3.05;3.12;3.48;3.07;3.23;3.05;2.88;2.92;3.06;2.90;3.01;3.19;2.90;3.18;3.11;3.04;3.16;3.21<br />
28;newtab-open-preload-yes.all.TART;5.10;4.60;4.63;8.94;5.01;4.69;4.63;4.67;4.93;5.43;4.78;5.12;4.77;4.65;4.50;4.78;4.75;4.63;4.76;4.45;4.86;4.88;4.69;4.86;4.92<br />
29;newtab-open-preload-yes.error.TART;35.90;37.24;38.57;40.60;36.04;38.12;38.78;36.73;36.91;36.69;38.12;36.69;37.79;35.80;36.11;38.01;36.59;38.85;37.14;37.30;38.02;38.95;37.64;37.86;36.43<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* CART<br />
** Regressions might be reported for patches that add new buttons to the menu panel by default, since this can add new rows to the panel and make it scrollable, which increases the amount of work to do during the transition. See {{bug|1230671}} for details.<br />
<br />
=== TestStandardURL ===<br />
<br />
* contact: :valentin<br />
* source:<br />
* type:<br />
* reporting:<br />
* data:<br />
* summarization:<br />
<br />
TestStandardURL.Perf - Runs 10K iterations on the most important getters and setters of nsStandardURL<br />
<br />
TestStandardURL.NormalizePerf - Runs 20K x 5 iterations on nsStandardURL::NormalizeIPv4 on input that are valid IPv4 strings<br />
<br />
TestStandardURL.NormalizePerfFails - Runs 20K x 5 iterations on nsStandardURL::NormalizeIPv4 on input that is not valid IPv4<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== tp5 ===<br />
* contact: :jmaher<br />
* source: [https://people.mozilla.org/~jmaher/taloszips/zips/tp5n.zip tp5n.zip]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load each of the 51 tp5o pages 25 times, resulting in 51 sets of 25 data points.<br />
* '''To run it locally''', you'd need [[#tp5n_pages_set|tp5n.zip]].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l449 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 51 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tp5o<br />
|tp5 with limited pageset (48 pages as others have too much noise)<br />
|}<br />
<br />
Tests the time it takes Firefox to load the [https://people.mozilla.org/~jmaher/taloszips/zips/tp5n.zip tp5 web page test set]. The web set was culled from the Alexa top 500 April 8th, 2011 and consists of 51 pages. <br />
<br />
Here are the broad steps we use to create the test set:<br />
# Take the Alexa top 500 sites list<br />
# Remove all sites with questionable or explicit content<br />
# Remove duplicate site (for ex. many Google search front pages)<br />
# Manually select to keep interesting pages (such as pages in different locales)<br />
# Select a more representative page from any site presenting a simple search/login/etc. page<br />
# Deal with Windows 255 char limit for cached pages<br />
# Limit test set to top 100 pages<br />
<br />
Note that the above steps did not eliminate all outside network access so we had to take further action to scrub all the pages so that there are 0 outside network accesses (this is done so that the tp test is as deterministic measurement of our rendering/layout/paint process as possible).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;163.com/www.163.com/index.html;1035;512;542;519;505;514;551;513;554;793;487;528;528;498;503;530;527;490;521;535;521;496;498;564;520<br />
1;56.com/www.56.com/index.html;1081;583;580;577;597;580;623;558;572;592;598;580;564;583;596;600;579;580;566;573;566;581;571;600;586<br />
2;aljazeera.net/aljazeera.net/portal.html;688;347;401;382;346;362;347;372;337;345;365;337;380;338;355;360;356;366;367;352;350;366;346;375;382<br />
3;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;1392;878;901;852;886;867;877;864;862;877;866;888;3308;870;863;869;873;850;851;850;857;873;869;860;855<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;455;271;272;271;279;289;276;285;277;291;281;286;278;286;274;285;276;285;287;286;276;288;279;272;278<br />
5;beatonna.livejournal.com/beatonna.livejournal.com/index.html;290;123;123;129;120;121;124;125;119;125;120;150;121;147;121;121;113;121;119;122;117;112;127;117;139<br />
6;bild.de/www.bild.de/index.html;1314;937;946;931;922;918;920;937;934;930;947;928;936;933;933;928;930;941;951;946;947;938;925;939;938<br />
7;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;495;324;330;328;321;308;315;308;321;313;327;330;317;339;333;322;312;370;336;327;310;312;312;355;330<br />
8;chemistry.about.com/chemistry.about.com/index.html;238;156;156;154;158;161;152;151;152;167;179;152;154;156;161;161;157;167;151;167;154;149;178;153;160<br />
9;chinaz.com/chinaz.com/index.html;347;223;255;234;245;233;264;234;244;228;260;224;258;223;280;220;243;225;251;226;258;232;258;232;247<br />
10;cnn.com/www.cnn.com/index.html;551;384;436;394;391;375;371;407;371;374;398;372;368;388;376;380;386;377;363;383;384;370;388;381;374<br />
11;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;984;606;551;561;545;542;576;564;543;560;566;557;561;544;545;576;548;539;568;567;557;560;545;544;578<br />
12;dailymotion.com/www.dailymotion.com/us.html;473;271;286;272;285;288;290;290;280;268;286;269;287;275;289;282;293;287;304;261;289;284;281;277;286<br />
13;digg.com/digg.com/news/story/New_logo_for_Mozilla_Firefox_browser.html;410;321;304;303;322;300;319;321;320;306;323;313;312;305;312;338;317;338;301;325;297;302;309;305;300<br />
14;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;234;177;163;163;186;176;185;175;167;156;162;199;163;190;173;181;175;178;165;159;182;170;183;169;158<br />
15;globo.com/www.globo.com/index.html;684;468;466;485;482;445;433;467;467;450;487;466;440;484;444;451;511;443;429;469;468;430;485;459;447<br />
16;google.com/www.google.com/search@q=mozilla.html;150;100;102;101;97;104;99;116;107;100;98;137;102;102;99;106;98;112;100;102;105;104;107;96;100<br />
17;goo.ne.jp/goo.ne.jp/index.html;328;125;132;132;143;121;122;120;132;145;166;139;144;125;128;152;128;145;130;132;154;126;142;133;139<br />
18;guardian.co.uk/www.guardian.co.uk/index.html;462;311;296;322;309;305;303;288;301;308;301;304;319;309;295;305;294;308;304;322;310;314;302;303;292<br />
19;homeway.com.cn/www.hexun.com/index.html;584;456;396;357;417;374;376;406;363;392;400;378;378;402;390;373;398;393;366;385;383;361;418;386;351<br />
20;huffingtonpost.com/www.huffingtonpost.com/index.html;811;609;575;596;568;585;589;571;568;600;571;588;585;570;574;616;576;564;598;594;589;590;572;572;612<br />
21;ifeng.com/ifeng.com/index.html;829;438;478;462;448;465;469;470;429;463;465;432;482;444;476;453;460;476;461;484;467;510;447;477;443<br />
22;imdb.com/www.imdb.com/title/tt1099212/index.html;476;337;358;332;414;379;344;420;354;363;387;345;358;371;341;385;359;379;353;349;392;349;358;378;347<br />
23;imgur.com/imgur.com/gallery/index.html;419;205;224;231;207;222;206;231;204;219;209;210;210;208;202;215;203;210;203;212;218;219;202;224;230<br />
24;indiatimes.com/www.indiatimes.com/index.html;530;339;348;384;376;381;353;350;403;333;356;393;350;328;393;329;389;346;394;349;382;332;409;327;354<br />
25;mail.ru/mail.ru/index.html;500;256;308;251;271;270;270;246;273;252;279;249;301;252;251;256;271;246;267;254;265;248;277;247;275<br />
26;mashable.com/mashable.com/index.html;699;497;439;508;440;448;512;446;431;500;445;427;495;455;458;499;440;432;522;443;447;488;445;461;489<br />
27;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;294;203;195;189;213;186;195;186;204;188;190;220;204;202;195;204;192;204;191;187;204;199;191;192;211<br />
28;myspace.com/www.myspace.com/albumart.html;595;446;455;420;433;425;416;429;452;411;435;439;389;434;418;402;422;426;396;438;423;391;434;438;395<br />
29;naver.com/www.naver.com/index.html;626;368;338;386;342;377;371;352;379;348;362;357;359;354;386;338;394;330;326;372;345;392;336;336;368<br />
30;noimpactman.typepad.com/noimpactman.typepad.com/index.html;431;333;288;292;285;313;277;289;282;292;276;293;270;294;289;281;275;302;285;290;280;285;278;284;283<br />
31;page.renren.com/page.renren.com/index.html;373;232;228;228;213;227;224;227;226;216;234;226;230;212;213;221;224;230;212;218;217;221;212;222;230<br />
32;people.com.cn/people.com.cn/index.html;579;318;305;339;307;341;325;326;307;309;315;314;318;317;321;309;307;299;312;313;305;326;318;384;310<br />
33;rakuten.co.jp/www.rakuten.co.jp/index.html;717;385;371;388;381;348;394;358;396;368;343;386;348;388;393;388;360;339;398;357;392;378;395;386;367<br />
34;reddit.com/www.reddit.com/index.html;340;254;248;255;241;241;248;275;251;250;250;252;243;274;240;269;254;249;242;257;271;253;243;278;252<br />
35;reuters.com/www.reuters.com/index.html;513;404;355;358;379;343;354;385;379;354;418;363;342;412;355;351;402;375;354;400;362;355;380;373;336<br />
36;slideshare.net/www.slideshare.net/jameswillamor/lolcats-in-popular-culture-a-historical-perspective.html;397;279;270;283;285;283;291;286;289;284;275;281;288;284;280;279;290;301;290;270;292;282;289;267;278<br />
37;sohu.com/www.sohu.com/index.html;727;414;479;414;431;485;418;440;488;431;432;464;442;407;488;435;416;465;445;414;480;416;403;463;429<br />
38;spiegel.de/www.spiegel.de/index.html;543;430;391;380;440;387;375;430;380;397;415;383;434;420;384;399;421;392;384;418;388;380;427;403;392<br />
39;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;503;377;356;438;370;388;409;367;366;407;375;363;393;360;363;396;376;391;426;363;378;408;400;359;408<br />
40;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;488;327;344;343;333;329;328;348;361;342;362;332;389;333;382;331;382;343;405;343;326;325;329;323;340<br />
41;thepiratebay.org/thepiratebay.org/top/201.html;412;274;317;260;256;269;266;261;258;289;245;284;256;277;251;302;276;307;268;268;247;285;260;271;257<br />
42;tudou.com/www.tudou.com/index.html;522;304;281;283;287;285;288;307;279;288;282;303;292;288;290;287;311;271;279;274;294;272;290;269;290<br />
43;uol.com.br/www.uol.com.br/index.html;668;387;450;411;395;452;386;431;452;394;385;436;413;414;440;401;412;439;408;430;426;415;382;433;387<br />
44;w3.org/www.w3.org/standards/webdesign/htmlcss.html;225;143;129;151;181;141;147;137;159;179;142;153;136;139;191;140;151;143;141;181;140;154;142;143;183<br />
45;wsj.com/online.wsj.com/home-page.html;634;466;512;463;467;507;461;432;492;494;491;507;466;477;495;455;451;495;461;463;494;468;444;497;442<br />
46;xinhuanet.com/xinhuanet.com/index.html;991;663;727;659;647;639;644;656;666;658;670;648;676;653;652;654;641;636;664;668;655;657;646;674;633<br />
47;xunlei.com/xunlei.com/index.html;802;625;624;636;641;652;659;642;623;635;628;606;667;688;683;694;672;640;628;620;653;626;633;654;643<br />
48;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;752;475;502;472;477;512;489;478;501;472;454;517;487;474;521;467;450;513;491;464;536;507;455;511;481<br />
49;youku.com/www.youku.com/index.html;844;448;498;441;417;497;478;439;467;436;447;465;438;461;466;446;452;496;457;446;486;449;467;499;442<br />
50;youtube.com/www.youtube.com/music.html;443;338;253;289;238;296;254;290;242;302;237;290;253;305;253;293;251;311;244;293;255;291;246;316;249<br />
</pre><br />
|}<br />
<br />
==== File IO ====<br />
<br />
===== Possible regression causes =====<br />
* '''nonmain_startup_fileio opt (with or without e10s) windows7-32''' – {{bug|1274018}} This test seems to consistently report a higher result for mozilla-central compared to Try even for an identical revision due to extension signing checks. In other words, if you are comparing Try and Mozilla-Central you may see a false-positive regression on perfherder. Graphs: [https://treeherder.mozilla.org/perf.html#/graphs?timerange=604800&series=%5Bmozilla-central,e5f5eaa174ef22fdd6b6e150e8c450aa827c2ff6,1,1%5D&series=%5Btry,e5f5eaa174ef22fdd6b6e150e8c450aa827c2ff6,1,1%5D non-e10s] [https://treeherder.mozilla.org/perf.html#/graphs?series=%5B%22mozilla-central%22,%222f3af3833d55ff371ecf01c41aeee1939ef3a782%22,1,1%5D&series=%5B%22try%22,%222f3af3833d55ff371ecf01c41aeee1939ef3a782%22,1,1%5D&timerange=604800 e10s]<br />
<br />
==== Xres (X Resource Monitoring) ====<br />
<br />
A memory metric tracked during tp5 test runs. This metric is sampled every 20 seconds. This metric is collected on linux only.<br />
<br />
[https://linux.die.net/man/3/xres xres man page].<br />
<br />
===== Possible regression causes =====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
==== % CPU ====<br />
<br />
Cpu usage tracked during tp5 test runs. This metric is sampled every 20 seconds. This metric is collected on windows only.<br />
<br />
===== Possible regression causes =====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
==== Responsiveness ====<br />
contact: :jimm, :jmaher<br />
<br />
Measures the delay for the event loop to process a [[Performance/Snappy#Current Infrastructure|tracer event]]. For more details, see {{bug|631571}}.<br />
<br />
The score on this benchmark is proportional to the sum of squares of all event delays that exceed a 20ms threshold. Lower is better.<br />
<br />
We collect 8000+ data points from the browser during the test and apply [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/output.py#l95 this formula] to the results:<br />
<pre><br />
return sum([float(x)*float(x) / 1000000.0 for x in val_list])<br />
</pre><br />
<br />
===== Possible regression causes =====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
==== Memory tests ====<br />
<br />
The memory tests have been deprecated in favor of [[AWSY/Tests|AWSY]].<br />
<br />
=== tp5o_scroll ===<br />
* contact: :jmaher<br />
* source: [https://people.mozilla.org/~jmaher/taloszips/zips/tp5n.zip tp5n.zip]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos#Page_Load_Tests PageLoader]<br />
* data: we load each of the 51 tp5o pages 12 times, resulting in 51 sets of 12 data points.<br />
* '''To run it locally''', you'd need [[#tp5n_pages_set|tp5n.zip]].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 11; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l470 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 51 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tp5o_scroll<br />
|Measures average frames interval while scrolling the pages of the tp5o set<br />
|}<br />
<br />
This test is identical to tscrollx, but it scrolls the 50 pages of the tp5o set (rather than 6 synthetic pages which tscrollx scrolls). For each page, the test waits 500ms after the page load event fires, then iterates 100 scroll steps of 10px each (or until the bottom of the page is reached - whichever comes first), then reports the average frame interval.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;163.com/www.163.com/index.html;9.73;8.61;7.37;8.17;7.58;7.29;6.88;7.45;6.91;6.61;8.47;7.12<br />
1;56.com/www.56.com/index.html;10.85;10.24;10.75;10.30;10.23;10.10;10.31;10.06;11.10;10.06;9.56;10.30<br />
2;aljazeera.net/aljazeera.net/portal.html;9.23;7.15;7.50;7.26;7.73;7.05;7.14;7.66;7.23;7.93;7.26;7.18<br />
3;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;7.14;6.87;7.18;6.31;6.93;6.71;6.37;7.00;6.59;5.37;7.31;6.13<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;7.39;6.33;6.22;7.66;6.67;7.77;6.91;7.74;7.08;6.36;6.03;7.12<br />
5;beatonna.livejournal.com/beatonna.livejournal.com/index.html;5.79;5.79;5.68;5.46;5.55;5.48;5.69;5.83;5.88;5.97;5.93;5.88<br />
6;bild.de/www.bild.de/index.html;8.65;7.63;7.17;6.36;7.44;7.68;8.63;6.71;8.34;7.15;7.82;7.70<br />
7;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;7.12;6.81;7.22;6.98;7.05;5.68;7.15;6.54;7.31;7.18;7.82;7.77<br />
8;chemistry.about.com/chemistry.about.com/index.html;6.76;6.17;6.41;6.88;5.67;5.47;6.83;6.28;6.16;6.81;6.21;6.75<br />
9;chinaz.com/chinaz.com/index.html;10.72;7.99;7.33;7.10;7.85;8.62;8.39;6.72;6.26;6.65;8.14;7.78<br />
10;cnn.com/www.cnn.com/index.html;7.73;6.80;6.08;8.27;9.24;7.81;7.69;7.05;8.17;7.70;7.90;6.81<br />
11;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;6.37;8.28;7.19;8.00;8.09;7.43;6.90;7.24;7.77;7.29;7.38;6.14<br />
12;dailymotion.com/www.dailymotion.com/us.html;9.53;9.80;9.29;9.03;9.10;8.64;8.62;8.71;8.77;9.81;9.64;8.96<br />
13;digg.com/digg.com/news/story/New_logo_for_Mozilla_Firefox_browser.html;7.72;7.06;7.60;5.67;6.85;7.32;7.80;5.98;8.27;6.68;7.52;8.39<br />
14;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;7.14;7.11;8.09;7.17;6.87;7.12;7.65;7.74;7.26;7.36;6.91;6.95<br />
15;globo.com/www.globo.com/index.html;6.71;7.91;5.83;7.34;7.75;8.00;7.73;7.85;7.03;6.42;8.43;8.11<br />
16;google.com/www.google.com/search@q=mozilla.html;6.49;6.23;7.96;6.39;7.23;8.19;7.35;7.39;6.94;7.24;7.55;7.62<br />
17;goo.ne.jp/goo.ne.jp/index.html;8.56;7.18;7.15;7.03;6.85;7.62;7.66;6.99;7.84;7.51;7.23;7.18<br />
18;guardian.co.uk/www.guardian.co.uk/index.html;7.32;7.62;8.18;7.62;7.83;8.08;7.60;8.17;8.47;7.54;7.92;8.09<br />
19;homeway.com.cn/www.hexun.com/index.html;10.18;8.75;8.83;8.64;8.98;8.07;7.76;9.29;8.05;7.55;8.91;7.78<br />
20;huffingtonpost.com/www.huffingtonpost.com/index.html;8.38;7.17;7.03;6.83;6.49;6.47;6.69;7.08;6.81;7.29;7.13;7.70<br />
21;ifeng.com/ifeng.com/index.html;12.45;8.65;8.75;7.56;8.26;7.71;8.04;7.45;7.83;7.14;8.38;7.68<br />
22;imdb.com/www.imdb.com/title/tt1099212/index.html;8.53;5.65;6.94;7.18;6.10;7.57;6.26;8.34;8.16;7.29;7.62;8.51<br />
23;imgur.com/imgur.com/gallery/index.html;8.10;7.20;7.50;7.88;7.27;6.97;8.13;7.14;7.59;7.39;8.01;8.82<br />
24;indiatimes.com/www.indiatimes.com/index.html;8.00;6.74;7.37;8.52;7.03;8.45;7.08;8.47;9.26;7.89;7.17;6.74<br />
25;mail.ru/mail.ru/index.html;7.64;9.50;9.47;7.03;6.45;6.24;8.03;6.72;7.18;6.39;6.25;6.25<br />
26;mashable.com/mashable.com/index.html;7.97;8.03;6.10;7.80;7.91;7.26;7.49;7.45;7.60;7.08;7.63;7.36<br />
27;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;290.00;195.00;217.00;199.00;204.00;196.00;198.00;206.00;209.00;208.00;192.00;196.00<br />
28;myspace.com/www.myspace.com/albumart.html;14.40;13.45;13.29;13.62;13.42;14.15;13.86;14.34;14.69;14.10;13.82;14.13<br />
29;naver.com/www.naver.com/index.html;9.15;8.31;9.40;9.89;7.29;8.43;8.87;8.77;8.96;8.24;8.16;8.21<br />
30;noimpactman.typepad.com/noimpactman.typepad.com/index.html;7.27;7.14;7.70;7.86;7.43;6.95;7.30;7.58;7.51;7.95;7.43;7.05<br />
31;page.renren.com/page.renren.com/index.html;7.94;8.13;6.76;7.77;6.93;6.60;7.62;7.61;6.88;7.56;7.55;7.48<br />
32;people.com.cn/people.com.cn/index.html;11.92;9.22;8.49;8.55;8.34;8.49;6.91;9.92;8.69;8.63;7.69;9.34<br />
33;rakuten.co.jp/www.rakuten.co.jp/index.html;11.10;7.13;8.68;7.85;8.37;7.91;6.74;8.27;8.55;8.93;7.15;9.02<br />
34;reddit.com/www.reddit.com/index.html;6.38;7.95;6.84;7.04;6.96;7.15;8.05;7.71;8.13;7.13;6.60;7.53<br />
35;reuters.com/www.reuters.com/index.html;7.51;7.25;6.60;6.98;7.41;6.45;7.61;7.46;6.11;7.15;7.05;6.94<br />
36;slideshare.net/www.slideshare.net/jameswillamor/lolcats-in-popular-culture-a-historical-perspective.html;7.20;6.32;6.80;6.87;6.29;6.45;7.18;6.92;6.57;7.41;7.08;6.51<br />
37;sohu.com/www.sohu.com/index.html;11.72;9.64;8.85;7.12;7.96;9.14;7.76;8.19;7.14;7.68;8.08;7.24<br />
38;spiegel.de/www.spiegel.de/index.html;7.24;7.30;6.64;7.01;6.74;6.70;6.36;6.84;7.86;7.08;7.12;7.40<br />
39;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;7.39;5.88;7.22;6.51;7.12;6.51;6.46;6.53;6.63;6.54;6.48;6.80<br />
40;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;6.23;7.17;7.39;8.98;7.99;8.03;9.12;8.37;8.56;7.61;8.06;7.55<br />
41;thepiratebay.org/thepiratebay.org/top/201.html;9.08;8.93;8.09;7.49;7.30;7.80;7.54;7.65;7.91;7.53;8.37;8.04<br />
42;tudou.com/www.tudou.com/index.html;10.06;9.38;8.68;7.37;8.57;9.11;8.20;7.91;8.78;9.64;8.11;8.47<br />
43;uol.com.br/www.uol.com.br/index.html;9.04;9.49;9.48;9.31;8.68;8.41;9.16;8.91;9.49;8.37;9.77;8.73<br />
44;w3.org/www.w3.org/standards/webdesign/htmlcss.html;6.62;5.98;6.87;6.47;7.22;6.05;6.42;6.50;7.47;7.18;5.82;7.11<br />
45;wsj.com/online.wsj.com/home-page.html;7.49;8.57;6.84;8.12;7.60;7.24;8.16;8.22;6.81;8.28;8.11;8.58<br />
46;xinhuanet.com/xinhuanet.com/index.html;13.66;9.21;10.09;9.56;8.99;10.29;10.24;8.91;11.23;10.82;9.64;10.11<br />
47;xunlei.com/xunlei.com/index.html;8.99;8.16;8.82;8.37;7.01;8.48;7.98;8.69;8.10;8.10;7.10;6.41<br />
48;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;8.18;7.45;7.01;8.14;7.12;7.82;8.24;7.13;7.00;6.41;6.85;7.31<br />
49;youku.com/www.youku.com/index.html;12.21;10.29;10.37;10.34;8.40;9.82;9.23;9.91;9.64;9.91;8.90;10.23<br />
50;youtube.com/www.youtube.com/music.html;9.90;9.06;9.29;9.17;8.85;8.77;9.83;9.21;9.29;10.09;9.69;8.64<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
Some examples of things that cause regressions in this test are:<br />
* Increased displayport size (which causes a larger display list to be built)<br />
* Slowdown in the building of display list<br />
* Slowdown in rasterization of content<br />
<br />
=== tp6 ===<br />
* contact: :rwood, :jmaher, :bsmedberg<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/quantum_pageload tp6]<br />
* type: [https://wiki.mozilla.org/Buildbot/Talos/Tests#Page_Load_Tests PageLoader]<br />
* reporting: intervals in ms (lower is better)<br />
* data: we load each of the tp6 pages 25 times<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first five] data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [http://searchfox.org/mozilla-central/rev/8a61c71153a79cda2e1ae7d477564347c607cc5f/testing/talos/talos/test.py#246 source: test.py]<br />
** suite: identical to subtest; each tp6_* test is reported individually (they're NOT aggregated)<br />
<br />
The talos tp6 (also known as 'quantum-pageload') test suite loads various pages and reports their load times. Each test page/URL is reported individually. The result values (ms) is the 'time to first non-blank paint'.<br />
<br />
Instead of loading the page sets from a local file, a tool called [http://docs.mitmproxy.org/en/latest/introduction.html mitmproxy] is used to playback page archives via an https proxy. When the tp6 suite is run via ./mach talos-test, mozharness automatically downloads and installs the mitmproxy tool and pageset archives.<br />
<br />
The mitmproxy tool is started, the proxy setup in Firefox, and the mitmproxy https security certificate is loaded into Firefox, all automatically. The pagesets are made available for playback via the proxy, at which point each of the tp6 test pages are ready for load and measurement.<br />
<br />
The tp6 suite currently consists of these individual pageload tests:<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
| tp6_amazon<br />
| Measures page load of an amazon search result for the keyword "laptop"<br />
|-<br />
| tp6_facebook<br />
| Measures page load of a facebook timeline (post-login)<br />
|-<br />
| tp6_google<br />
| Measures page load of a google search result for the keywords "barack obama"<br />
|-<br />
| tp6_youtube<br />
| Measures page load of the youtube home page<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data for tp6_youtube<br />
|-<br />
| <pre><br />
https://www.youtube.co/;409;441;354;337;326;375;353;650;354;712;667;336;791;497;342;355;611;334;<br />
692;320;714;434;582;610;333<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
Some examples of things that cause regressions in this test are:<br />
* Please update this when regressions are found<br />
<br />
==== Recording a tp6 test page ====<br />
Test pages used for tp6 are mitmproxy recordings that are played back during the tp6 test (and ultimately loaded in Firefox via the local proxy). Each test page is a separate mitmproxy recording (*.mp) file, however all recordings for the tp6 suite are archived in a single zip file on tooltool. When tp6 is run, talos automatically downloads the mitmproxy recording archive for use during the test.<br />
<br />
The following process was used to record the tp6 mitmproxy page archives (on Windows 10):<br />
<br />
1. Install mitmproxy following the mitmproxy [http://docs.mitmproxy.org/en/stable/install.html installation instructions]<br />
<br />
2. Setup a local proxy in Firefox:<br />
* Start Firefox<br />
* Preferences => General<br />
* Network Proxy => Settings<br />
* On the "Connection Settings" screen, select "Manual proxy configuration"<br />
* For "HTTP Proxy" type in "127.0.0.1" with port "8080"<br />
* For "SSL Proxy" use the same "127.0.0.1" with port "8080"<br />
* Click the "OK" button to save the proxy settings<br />
<br />
3. Install the mitmproxy CA certificate:<br />
* Open a terminal window<br />
* Startup mitmproxy in host mode:<br />
mitmproxy --host<br />
* In Firefox, browse to "mitm.it" and follow the directions on how to accept the CA certificate<br />
* Shutdown the mitmproxy tool (in terminal hit "Q", then "Y" to quit)<br />
<br />
4. Record a new page:<br />
* Start Firefox with the proxy still enabled<br />
* Clear the browser history/cache<br />
* In a terminal window start the mitmdump recording tool:<br />
mitmdump -w /path/to/save/recording.mp<br />
* Inside Firefox browse to the URL that you want to record (i.e. www.spacex.com)<br />
* Wait for the page to be fully loaded and displayed<br />
* In the mitmdump terminal window press "ctrl + c" to stop the recording<br />
<br />
5. To test playing back your recorded page:<br />
* Start Firefox with the proxy still enabled<br />
* With mitmproxy NOT running, browse to your recorded URL (i.e. www.spacex.com); you'll just get an error saying that the proxy server is refusing connections<br />
* In a terminal window, start mitmproxy playback:<br />
mitmdump -k /path/to/save/recording.mp<br />
* In Firefox browse to the URL that you recorded already (i.e. www.spacex.com). This time the page will load successfully; it is actually loading the page from the local mitmdump archive file (*.mp) and not the external site<br />
* In the terminal window press "ctrl + c" to stop the playback<br />
<br />
6. When you're finished remember to turn off your Firefox proxy:<br />
* Preferences => General<br />
* Network Proxy => Settings<br />
* Select "No proxy" and click the "OK" button<br />
<br />
=== tpaint ===<br />
* contact: :jimm, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tpaint.html tpaint-window.html]]<br />
* type: Startup<br />
* data: we load the tpaint test window 20 times, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 15; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l190 source: test.py]<br />
** suite: identical to subtest<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
|Talos test name<br />
|Description<br />
|-<br />
|tpaint<br />
|twinopen but measuring the time after we receive the [[Buildbot/Talos/Tests#Paint_Tests|MozAfterPaint and OnLoad event]].<br />
|}<br />
<br />
Tests the amount of time it takes the open a new window. This test does not include startup time. Multiple test windows are opened in succession, results reported are the average amount of time required to create and display a window in the running instance of the browser. (Measures ctrl-n performance.)<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[209.219, 222.180, 225.299, 225.970, 228.090, 229.450, 230.625, 236.315, 239.804, 242.795, 244.5, 244.770, 250.524, 251.785, 253.074, 255.349, 264.729, 266.014, 269.399, 326.190]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== tabswitch ===<br />
* contact: :blassey, :mconley<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/tabswitch tabswitch]<br />
* bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1166132<br />
* type: Pageloader<br />
* measuring: <br />
** The time between switching a tab and the first paint to the content area<br />
* reporting:<br />
* data: we load 50 web pages 5 times each, resulting in 50 sets of 5 data points.<br />
* '''To run it locally''', you'd need [[#tp5n_pages_set|tp5n.zip]].<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 4 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l305 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 50 subtest results.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html;66.34;54.15;53.08;55.79;49.12<br />
1;cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html;50.85;46.57;39.51;36.71;36.47<br />
2;163.com/www.163.com/index.html;95.05;80.80;76.09;69.29;68.96<br />
3;mail.ru/mail.ru/index.html;66.21;52.04;56.33;55.11;45.61<br />
4;bbc.co.uk/www.bbc.co.uk/news/index.html;35.80;44.59;48.02;45.71;42.58<br />
5;store.apple.com/store.apple.com/us@mco=Nzc1MjMwNA.html;52.98;49.45;58.47;56.79;61.29<br />
6;imdb.com/www.imdb.com/title/tt1099212/index.html;46.51;55.12;46.22;50.60;47.63<br />
7;cnn.com/www.cnn.com/index.html;43.02;50.77;43.88;49.70;50.02<br />
8;sohu.com/www.sohu.com/index.html;74.03;62.89;63.30;67.71;89.35<br />
9;youku.com/www.youku.com/index.html;43.98;52.69;45.80;63.00;57.02<br />
10;ifeng.com/ifeng.com/index.html;88.01;87.54;104.47;94.93;113.91<br />
11;tudou.com/www.tudou.com/index.html;45.32;48.10;46.03;39.26;58.38<br />
12;chemistry.about.com/chemistry.about.com/index.html;38.24;37.07;39.59;39.48;39.60<br />
13;beatonna.livejournal.com/beatonna.livejournal.com/index.html;35.59;50.75;36.17;48.49;52.61<br />
14;rakuten.co.jp/www.rakuten.co.jp/index.html;90.28;71.95;62.66;60.33;67.76<br />
15;uol.com.br/www.uol.com.br/index.html;42.89;48.05;53.77;40.02;42.41<br />
16;thepiratebay.org/thepiratebay.org/top/201.html;40.46;42.46;47.63;57.66;45.49<br />
17;page.renren.com/page.renren.com/index.html;47.61;66.78;47.91;62.78;47.19<br />
18;chinaz.com/chinaz.com/index.html;50.34;58.17;118.43;55.47;63.80<br />
19;globo.com/www.globo.com/index.html;41.34;38.52;42.82;53.14;45.20<br />
20;spiegel.de/www.spiegel.de/index.html;33.60;34.34;36.25;36.18;47.04<br />
21;dailymotion.com/www.dailymotion.com/us.html;37.68;36.13;39.52;37.15;42.79<br />
22;goo.ne.jp/goo.ne.jp/index.html;50.74;47.30;63.04;58.41;58.96<br />
23;stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html;44.66;44.40;43.39;47.38;57.65<br />
24;ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html;37.38;45.01;40.29;36.26;39.28<br />
25;huffingtonpost.com/www.huffingtonpost.com/index.html;39.57;43.35;55.01;44.13;58.28<br />
26;media.photobucket.com/media.photobucket.com/image/funny%20gif/findstuff22/Best%20Images/Funny/funny-gif1.jpg@o=1.html;39.77;42.46;75.54;42.38;47.72<br />
27;imgur.com/imgur.com/gallery/index.html;34.72;37.37;46.74;40.93;37.08<br />
28;reddit.com/www.reddit.com/index.html;42.47;39.89;51.54;51.51;41.68<br />
29;noimpactman.typepad.com/noimpactman.typepad.com/index.html;54.28;47.40;52.38;52.15;50.97<br />
30;myspace.com/www.myspace.com/albumart.html;48.97;64.12;61.66;48.32;68.53<br />
31;mashable.com/mashable.com/index.html;36.76;40.95;35.30;53.86;42.76<br />
32;dailymail.co.uk/www.dailymail.co.uk/ushome/index.html;42.06;40.64;44.24;37.32;61.35<br />
33;whois.domaintools.com/whois.domaintools.com/mozilla.com.html;34.73;35.23;39.25;48.24;35.72<br />
34;indiatimes.com/www.indiatimes.com/index.html;52.67;55.51;46.29;52.69;58.82<br />
35;reuters.com/www.reuters.com/index.html;32.92;33.08;36.95;39.23;39.27<br />
36;xinhuanet.com/xinhuanet.com/index.html;125.85;102.56;138.89;130.34;147.45<br />
37;56.com/www.56.com/index.html;63.89;75.00;61.45;62.20;58.67<br />
38;bild.de/www.bild.de/index.html;35.61;43.74;34.79;33.45;31.83<br />
39;guardian.co.uk/www.guardian.co.uk/index.html;38.91;55.93;62.34;42.63;45.99<br />
40;naver.com/www.naver.com/index.html;78.10;89.07;127.67;75.18;109.32<br />
41;yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html;42.54;46.92;39.19;49.82;50.43<br />
42;wsj.com/online.wsj.com/home-page.html;46.43;55.51;44.16;81.79;48.78<br />
43;google.com/www.google.com/search@q=mozilla.html;35.62;36.71;44.47;45.00;40.22<br />
44;xunlei.com/xunlei.com/index.html;67.57;60.69;83.83;85.53;85.08<br />
45;aljazeera.net/aljazeera.net/portal.html;65.03;51.84;73.29;64.77;69.70<br />
46;w3.org/www.w3.org/standards/webdesign/htmlcss.html;53.57;58.50;72.98;66.95;55.62<br />
47;homeway.com.cn/www.hexun.com/index.html;105.59;117.32;108.95;116.10;70.32<br />
48;youtube.com/www.youtube.com/music.html;40.53;41.48;59.67;40.81;40.07<br />
49;people.com.cn/people.com.cn/index.html;96.49;103.64;115.12;66.05;117.84<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== tresize ===<br />
* contact: :jimm, :jmaher, :avih<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tresize/addon/content/tresize-test.html tresize-test.html]]<br />
* type: StartupTest<br />
* measuring: Time to do XUL resize, in ms (lower is better).<br />
* data: we run the tresize test page 20 times, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 15 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l205 source: test.py]<br />
** suite: same as subtest result<br />
<br />
A purer form of paint measurement than tpaint. This test opens a single window positioned at 10,10 and sized to 300,300, then resizes the window outward |max| times measuring the amount of time it takes to repaint each resize. Dumps the resulting dataset and average to stdout or logfile.<br />
<br />
In {{bug|1102479}} tresize was rewritten to work in e10s mode which involved a full rewrite of the test.<br />
<br />
To run resize locally without talos, please [https://hg.mozilla.org/mozilla-central/raw-file/tip/testing/talos/talos/generate-tresize-xpi.html install the addon] to run the test locally.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[23.2565333333333, 23.763383333333362, 22.58369999999999, 22.802766666666653, 22.304050000000025, 23.010383333333326, 22.865466666666677, 24.233716666666705, 24.110983333333365, 22.21390000000004, 23.910333333333316, 23.409816666666647, 19.873049999999992, 21.103966666666686, 20.389749999999978, 20.777349999999984, 20.326283333333365, 22.341616666666667, 20.29813333333336, 20.769600000000104]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
<br />
=== ts_paint ===<br />
<br />
* contact: :mak, :jimm, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/startup_test/tspaint_test.html tspaint_test.html]<br />
* Perfomatic: "Ts, Paint"<br />
* type: Startup<br />
* data: 20 times we start the browser and time how long it takes to paint the startup test page, resulting in 1 set of 20 data points.<br />
* summarization:<br />
** subtest: identical to suite<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 19 data points; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l135 source: test.py]<br />
<br />
Starts the browser to display tspaint_test.html with the start time in the url, waits for [[Buildbot/Talos/Tests#Paint_Tests|MozAfterPaint and onLoad]] to fire, then records the end time and calculates the time to startup.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
[1666.0, 1195.0, 1139.0, 1198.0, 1248.0, 1224.0, 1213.0, 1194.0, 1229.0, 1196.0, 1191.0, 1230.0, 1247.0, 1169.0, 1217.0, 1184.0, 1196.0, 1192.0, 1224.0, 1192.0]<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* (and/or maybe tpaint?) will regress if a new <panel> element is added to the browser window (e.g. browser.xul) and it's frame gets created. Fix this by ensuring it's display:none by default.<br />
<br />
=== tscrollx ===<br />
* contact: :jrmuizel, :jmaher, :avih<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/scroll scroll.manifest]]<br />
* type: PageLoader<br />
* measuring: Scroll performance<br />
* reporting: Average frame interval (1/FPS). Lower is better.<br />
* data: we load 6 pages 25 times each, collecting 6 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] data point, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 24; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 6 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tscrollx<br />
|[https://groups.google.com/d/topic/mozilla.dev.platform/RICw5SJhNMo/discussion Replacing tscroll,tsvg with tscrollx,tsvgx]<br />
|}<br />
<br />
<br />
This test scrolls several pages where each represent a different known "hard" case to scroll (* needinfo), and measures the average frames interval (1/FPS) on each. The ASAP test (tscrollx) iterates in unlimited frame-rate mode thus reflecting the maximum scroll throughput per page. To turn on ASAP mode, we set these preferences:<br />
preferences = {'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;tiled.html;5.41;5.57;5.34;5.64;5.53;5.48;5.44;5.49;5.50;5.50;5.49;5.66;5.50;5.37;5.57;5.54;5.46;5.31;5.41;5.57;5.50;5.52;5.71;5.31;5.44<br />
fixed.html;10.404609053497941;10.47;10.66;10.45;10.73;10.79;10.64;10.64;10.82;10.43;10.92;10.47;10.47;10.64;10.74;10.67;10.40;10.83;10.77;10.54;10.38;10.70;10.44;10.38;10.56<br />
downscale.html;5.493209876543211;5.27;5.50;5.50;5.51;5.46;5.58;5.58;5.51;5.49;5.49;5.47;9.09;5.56;5.61;5.50;5.47;5.59;5.47;5.49;5.60;5.61;5.58;5.40;5.43<br />
downscale.html;10.676522633744854;10.82;10.79;10.41;10.75;10.91;10.52;10.61;10.50;10.55;10.80;10.17;10.68;10.41;10.42;10.41;10.58;10.28;10.56;10.66;10.68;10.47;10.60;10.61;10.26<br />
4;iframe.svg;13.82;14.87;14.78;14.35;14.73;14.50;14.15;14.46;14.80;14.48;15.10;14.93;14.77;14.52;14.08;15.01;14.58;14.52;15.23;14.35;14.72;14.28;14.30;14.27;14.96<br />
5;reader.htm;10.72;10.62;10.23;10.48;10.42;10.64;10.40;10.40;10.14;10.60;10.51;10.36;10.57;10.41;10.52;10.75;10.19;10.72;10.44;9.75;10.49;10.07;10.54;10.46;10.44<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
=== tsvgr_opacity ===<br />
* contact: :jwatt, :jmaher, :avih<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svg_opacity/svg_opacity.manifest]<br />
* type: PageLoader<br />
* data: we load the 2 svg opacity pages 25 times, resulting in 2 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 2 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvgr_opacity<br />
|[[#Row_Major_vs._Column_Major|Row Major]] and 25 cycles/page.<br />
|}<br />
<br />
Renders many semi-transparent, partially overlapping SVG rectangles, and measures time to completion of this rendering.<br />
<br />
Note that this test also tends to reflect changes in network efficiency and navigation bar rendering issues:<br />
<br />
* Most of the page load tests measure from before the location is changed, until onload + mozafterpaint, therefore any changes in chrome performance from the location change, or network performance (the pages load from a local web server) would affect page load times. SVG opacity is rather quick by itself, so any such chrome/network/etc performance changes would affect this test more than other page load tests (relatively, in percentages).<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;big-optimizable-group-opacity-2500.svg;170;171;205;249;249;244;192;252;192;431;182;250;189;249;151;168;209;194;247;250;193;250;255;247;247<br />
1;small-group-opacity-2500.svg;585;436;387;441;512;438;440;380;443;391;450;386;459;383;445;388;450;436;485;443;383;438;528;444;441<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
<br />
=== tsvg_static ===<br />
* contact: :jwatt, :jmaher, :dholbert, :neerja<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svg_static/ svg_static]<br />
* type: PageLoader<br />
* data: we load the 5 svg pages 25 times, resulting in 5 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 5 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvg_static<br />
|An svg-only number that measures SVG rendering performance of some complex (but static) SVG content.<br />
|}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;gearflowers.svg;262;184;184;198;197;187;181;186;177;192;196;194;194;186;195;190;237;193;188;182;188;196;191;194;184<br />
1;composite-scale.svg;69;52;48;49;57;51;52;87;52;49;49;51;58;53;64;57;49;65;67;58;53;59;56;68;50<br />
2;composite-scale-opacity.svg;72;53;91;54;51;58;60;46;51;57;59;58;66;70;57;61;47;51;76;65;52;65;64;64;63<br />
3;composite-scale-rotate.svg;70;76;89;62;62;78;57;77;79;82;74;56;61;79;73;64;75;74;81;82;76;58;77;61;62<br />
4;composite-scale-rotate-opacity.svg;91;60;67;84;62;66;78;69;65;68;62;73;68;63;64;71;79;77;63;80;85;65;82;76;81<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
=== tsvgx ===<br />
* contact: :jwatt, :jmaher, :avih<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/svgx svgx]<br />
* type: PageLoader<br />
* data: we load the 7 svg pages 25 times, resulting in 7 sets of 25 data points<br />
* summarization:<br />
** subtest: [https://wiki.mozilla.org/Buildbot/Talos/Data#ignore_first ignore first] '''5''' data points, then take the [https://wiki.mozilla.org/Buildbot/Talos/Data#median median] of the remaining 20; [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l623 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#geometric_mean geometric mean] of the 7 subtest results.<br />
<br />
{| cellspacing="1" cellpadding="1" border="1"<br />
|-<br />
| Talos test name<br />
| Description<br />
|-<br />
|tsvgx<br />
|SVG-ASAP<br />
|[https://groups.google.com/d/topic/mozilla.dev.platform/RICw5SJhNMo/discussion Replacing tscroll,tsvg with tscrollx,tsvgx]<br />
|}<br />
<br />
An svg-only number that measures SVG rendering performance, with animations or iterations of rendering. This is an ASAP test -- i.e. it iterates in unlimited frame-rate mode thus reflecting the maximum rendering throughput of each test. The reported value is the overall duration the sequence/animation took to complete. To turn on ASAP mode, we set these preferences:<br />
preferences = {'layout.frame_rate': 0, 'docshell.event_starvation_delay_hint': 1}<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;hixie-001.xml;562;555;508;521;522;520;499;510;492;514;502;504;500;521;510;506;511;505;495;517;520;512;503;504;502<br />
1;hixie-002.xml;510;613;536;530;536;522;498;505;500;504;498;529;498;509;493;512;501;506;504;499;496;505;508;511;503<br />
2;hixie-003.xml;339;248;242;261;250;241;240;248;258;244;235;240;247;248;239;247;241;245;242;245;251;239;241;240;237<br />
3;hixie-004.xml;709;540;538;536;540;536;552;539;535;535;543;533;536;535;545;537;537;537;537;539;538;535;536;538;536<br />
4;hixie-005.xml;3096;3086;3003;3809;3213;3323;3143;3313;3192;3203;3225;3048;3069;3101;3189;3251;3172;3122;3266;3183;3159;3076;3014;3237;3100<br />
5;hixie-006.xml;5586;5668;5565;5666;5668;5728;5886;5534;5484;5607;5678;5577;5745;5753;5532;5585;5506;5516;5648;5778;5894;5994;5794;5852;5810<br />
6;hixie-007.xml;1823;1743;1739;1743;1744;1787;1802;1788;1782;1766;1787;1750;1748;1788;1766;1779;1767;1794;1758;1768;1781;1773;1765;1798;1805<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* Did you change the dimensions of the content area? Even a little? The tsvgx test seems to be sensitive to changes like this. See {{bug|1375479}}, for example. Usually, these sorts of "regressions" aren't real regressions - they just mean that we need to re-baseline our expectations from the test.<br />
<br />
=== V8, version 7===<br />
* contact: :h4writer, :jmaher<br />
* source: [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/tests/v8_7 v8.manifest]]<br />
* type: PageLoader<br />
* measuring: ???<br />
* reporting: weighted score (higher is better)<br />
* data: there are 10 subtests in kraken, each subtest is an internal benchmark and generates a single replicate.<br />
* summarization:<br />
** subtest: For all of the 10 data points, we take filter with [https://wiki.mozilla.org/Buildbot/Talos/Data#v8_subtest v8_subtest] to apply the reference value for the subtest to generate a single number. [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/test.py#l489 source: test.py]<br />
** suite: [https://wiki.mozilla.org/Buildbot/Talos/Data#v8_metric v8 metric] is basically the geometric mean of the 10 subtests and multiples the output by 100.<br />
<br />
this is the V8 (version 7) javascript benchmark taken verbatim and slightly modified to fit into our pageloader extension and talos harness.<br />
<br />
The previous version of this test is V8 version 5 which was run on selective branches and operating systems.<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable"<br />
! Example data<br />
|-<br />
| <pre><br />
0;Richards;152.99877600979192<br />
1;DeltaBlue;210.7481559536354<br />
2;Encrypt;291.29041654529567<br />
3;Decrypt;5358.288770053476<br />
4;RayTrace;1833.3333333333333<br />
5;Earley;678.42605156038<br />
6;Boyer;10265.30612244898<br />
7;RegExp;28333.333333333332<br />
8;Splay;528.2620179609086<br />
9;NavierStokes;5055.555555555556<br />
</pre><br />
|}<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
<br />
<br />
<br />
=== xperf ===<br />
* contact: :aklotz, :jmaher<br />
* source: [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xtalos xperf instrumentation]<br />
* type: Pageloader (tp5n) / Startup<br />
* measuring: IO counters from windows (currently, only startup IO is in scope)<br />
* reporting: Summary of read/write counters for disk, network (lower is better)<br />
<br />
Talos will turn orange for 'x' jobs on windows 7 if your changeset accesses files which are not predefined in the [[https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xtalos/xperf_whitelist.json whitelist]] during startup; specifically, before the "[https://hg.mozilla.org/mozilla-central/file/0eebc33d8593/toolkit/components/startup/nsAppStartup.cpp#l631 sessionstore-windows-restored]" Firefox event. If your job turns orange, you will see a list of files in Treeherder (or in the log file) which have been accessed unexpectedly (similar to this):<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\secmod.db' was accessed and we were not expecting it. DiskReadCount: 6, DiskWriteCount: 0, DiskReadBytes: 16904, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\cert8.db' was accessed and we were not expecting it. DiskReadCount: 4, DiskWriteCount: 0, DiskReadBytes: 33288, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File 'c:\$logfile' was accessed and we were not expecting it. DiskReadCount: 0, DiskWriteCount: 2, DiskReadBytes: 0, DiskWriteBytes: 32768 TEST-UNEXPECTED-FAIL : xperf: File '{profile}\secmod.db' was accessed and we were not expecting it. DiskReadCount: 6, DiskWriteCount: 0, DiskReadBytes: 16904, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File '{profile}\cert8.db' was accessed and we were not expecting it. DiskReadCount: 4, DiskWriteCount: 0, DiskReadBytes: 33288, DiskWriteBytes: 0<br />
* TEST-UNEXPECTED-FAIL : xperf: File 'c:\$logfile' was accessed and we were not expecting it. DiskReadCount: 0, DiskWriteCount: 2, DiskReadBytes: 0, DiskWriteBytes: 32768 <br />
<br />
In the case that these files are expected to be accessed during startup by your changeset, then we can add them to the [https://bugzilla.mozilla.org/enter_bug.cgi?product=Testing&component=Talos whitelist].<br />
<br />
Xperf runs tp5 while collecting xperf metrics for disk IO and network IO. The providers we listen for are:<br />
* [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xperf.config#l10 'PROC_THREAD', 'LOADER', 'HARD_FAULTS', 'FILENAME', 'FILE_IO', 'FILE_IO_INIT']<br />
<br />
The values we collect during stackwalk are:<br />
* [https://dxr.mozilla.org/mozilla-central/source/testing/talos/talos/xperf.config#l11 'FileRead', 'FileWrite', 'FileFlush']<br />
<br />
==== Possible regression causes ====<br />
* None listed yet. If you fix a regression for this test and have some tips to share, this is a good place for them.<br />
* [https://wiki.mozilla.org/Performance_sheriffing/Talos/Tests go to new page]</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/12-Feb-2019&diff=1208132Firefox/12-Feb-20192019-02-26T03:53:00Z<p>Felipc: Fix page</p>
<hr />
<div>[[Firefox/Meeting/12-Feb-2019|Correct page for meetings notes from Feb 12, 2019]]</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting&diff=1208131Firefox/Meeting2019-02-26T03:50:41Z<p>Felipc: Add entry for Feb 12, 2019</p>
<hr />
<div>We meet biweekly to discuss development status of [[Firefox]] desktop. Please use [irc://irc.mozilla.org/%23fx-team #fx-team] or [https://mail.mozilla.org/listinfo/firefox-dev firefox-dev@mozilla.org] for communication.<br />
<br />
== Meeting Details == <br />
<br />
* Every second Tuesday @ 8:00AM Pacific <br />
{{conf|91337}}<br />
* "Firefox" Vidyo room. Guest link: https://v.mozilla.com/flex.html?roomdirect.html&key=oZj3CpyOlv<br />
*[irc://irc.mozilla.org/%23fx-team #fx-team] for backchannel<br />
<br />
== Meeting Notes ==<br />
[[Firefox/Meeting/Template|Template]]<br />
<br />
{| class="wikitable mw-collapsible" style="width: 100%"<br />
! 2019<br />
|-<br />
|<br />
* [https://docs.google.com/document/d/1hM9bmIdIe0PeQEB4SbU7NG3m7MmjgLJjUB7Fzr7fGEU/edit Feb 26, 2019]<br />
* [[/12-Feb-2019|Feb 12, 2019]]<br />
* [[/29-Jan-2019|Jan 29, 2019]]<br />
* [[/15-Jan-2019|Jan 15, 2019]]<br />
* Jan 1, 2019 - Cancelled due to New Years Eve<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2018<br />
|-<br />
|<br />
* [[/18-Dec-2018|Dec 18, 2018]]<br />
* Dec 4, 2018 - Cancelled due to all-hands<br />
* [[/20-Nov-2018|Nov 20, 2018]]<br />
* [[/06-Nov-2018|Nov 6, 2018]]<br />
* [[/23-Oct-2018|Oct 23, 2018]]<br />
* [[/09-Oct-2018|Oct 09, 2018]]<br />
* [[/25-Sep-2018|Sep 25, 2018]]<br />
* [[/11-Sep-2018|Sep 11, 2018]]<br />
* [[/28-Aug-2018|Aug 28, 2018]]<br />
* [[/14-Aug-2018|Aug 14, 2018]]<br />
* Jul 31, 2018 - Missing. :(<br />
* [[/17-Jul-2018|Jul 17, 2018]]<br />
* [[/03-Jul-2018|Jul 3, 2018]]<br />
* Jun 19, 2018 - Cancelled due to all-hands the prior week<br />
* [[/05-Jun-2018|Jun 5, 2018]]<br />
* [[/22-May-2018|May 22, 2018]]<br />
* [[/08-May-2018|May 8, 2018]]<br />
* [[/24-Apr-2018|Apr 24, 2018]]<br />
* [[/10-Apr-2018|Apr 10, 2018]]<br />
* [[/27-Mar-2018|Mar 27, 2018]]<br />
* [[/13-Mar-2018|Mar 13, 2018]]<br />
* [[/27-Feb-2018|Feb 27, 2018]]<br />
* [[/13-Feb-2018|Feb 13, 2018]]<br />
* [[/30-Jan-2018|Jan 30, 2018]]<br />
* [[/16-Jan-2018|Jan 16, 2018]]<br />
* Jan 2, 2018 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2017<br />
|-<br />
|<br />
* Dec 19, 2017 - Cancelled due to Austin All-Hands the prior week<br />
* [[/05-Dec-2017|Dec 05, 2017]]<br />
* [[/21-Nov-2017|Nov 21, 2017]]<br />
* [[/07-Nov-2017|Nov 07, 2017]]<br />
* [[/24-Oct-2017|Oct 24, 2017]]<br />
* [[/10-Oct-2017|Oct 10, 2017]]<br />
* [[/26-Sep-2017|Sep 26, 2017]]<br />
* [[/12-Sep-2017|Sep 12, 2017]]<br />
* [[/29-Aug-2017|Aug 29, 2017]]<br />
* [[/15-Aug-2017|Aug 15, 2017]]<br />
* [[/01-Aug-2017|Aug 01, 2017]]<br />
* [[/18-Jul-2017|Jul 18, 2017]]<br />
* [[/20-Jun-2017|Jun 20, 2017]]<br />
* [[/06-Jun-2017|Jun 06, 2017]]<br />
* [[/23-May-2017|May 23, 2017]]<br />
* [[/09-May-2017|May 09, 2017]]<br />
* [[/25-Apr-2017|Apr 25, 2017]]<br />
* [[/11-Apr-2017|Apr 11, 2017]]<br />
* [[/28-Mar-2017|Mar 28, 2017]]<br />
* [[/14-Mar-2017|Mar 14, 2017]]<br />
* [[/28-Feb-2017|Feb 28, 2017]]<br />
* [[/14-Feb-2017|Feb 14, 2017]]<br />
* [[/31-Jan-2017|Jan 31, 2017]]<br />
* [[/17-Jan-2017|Jan 17, 2017]]<br />
* Jan 3, 2017 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2016<br />
|-<br />
|<br />
* [[/20-Dec-2016|Dec 20, 2016]] <br />
* Dec 6, 2016 - Cancelled due to meeting in Hawaii<br />
* [[/22-Nov-2016|Nov 22, 2016]]<br />
* [[/08-Nov-2016|Nov 08, 2016]]<br />
* [[/25-Oct-2016|Oct 25, 2016]]<br />
* [[/11-Oct-2016|Oct 11, 2016]]<br />
* [[/27-Sep-2016|Sep 27, 2016]]<br />
* [[/13-Sep-2016|Sep 13, 2016]]<br />
* [[/30-Aug-2016|Aug 30, 2016]]<br />
* [[/16-Aug-2016|Aug 16, 2016]]<br />
* [[/02-Aug-2016|Aug 02, 2016]]<br />
* [[/19-Jul-2016|Jul 19, 2016]]<br />
* [[/05-Jul-2016|Jul 05, 2016]]<br />
* Jun 21, 2016 - Cancelled due to meeting in London the week before<br />
* [[/07-Jun-2016|Jun 07, 2016]]<br />
* [[/24-May-2016|May 24, 2016]]<br />
* [[/10-May-2016|May 10, 2016]]<br />
* [[/26-Apr-2016|Apr 26, 2016]]<br />
* [[/12-Apr-2016|Apr 12, 2016]]<br />
* [[/29-Mar-2016|Mar 29, 2016]]<br />
* [[/15-Mar-2016|Mar 15, 2016]]<br />
* [[/01-Mar-2016|Mar 01, 2016]]<br />
* [[/16-Feb-2016|Feb 16, 2016]]<br />
* [[/02-Feb-2016|Feb 02, 2016]]<br />
* [[/19-Jan-2016|Jan 19, 2016]]<br />
* Jan 05, 2016 - Cancelled due to holiday recovery<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2015<br />
|-<br />
|<br />
* Dec 22, 2015 - Cancelled due to holidays<br />
* Dec 8, 2015 - Cancelled due to in-person meetings<br />
* [[/24-Nov-2015|Nov 24, 2015]]<br />
* [[/10-Nov-2015|Nov 10, 2015]]<br />
* [[/27-Oct-2015|Oct 27, 2015]]<br />
* [[/13-Oct-2015|Oct 13, 2015]]<br />
* [[/29-Sep-2015|Sep 29, 2015]]<br />
* [[/15-Sep-2015|Sep 15, 2015]]<br />
* [[/01-Sep-2015|Sep 01, 2015]]<br />
* [[/18-Aug-2015|Aug 18, 2015]]<br />
* [[/04-Aug-2015|Aug 04, 2015]]<br />
* [[/21-Jul-2015|Jul 21, 2015]]<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2014 <br />
|-<br />
|<br />
* [[/4-Feb-2014|Feb 04, 2014]]<br />
* [[/28-Jan-2014|Jan 28, 2014]]<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2013 <br />
|-<br />
|<br />
* [[/17-Dec-2013|December 17, 2013]]<br />
* [[/10-Dec-2013|December 10, 2013]]<br />
* [[/3-Dec-2013|December 3, 2013]]<br />
* [[/19-Nov-2013|November 19, 2013]]<br />
* [[/12-Nov-2013|November 12, 2013]]<br />
* [[/5-Nov-2013|November 5, 2013]]<br />
* [[/29-Oct-2013|October 29, 2013]]<br />
* [[/22-Oct-2013|October 22, 2013]]<br />
* [[/15-Oct-2013|October 15, 2013]]<br />
* [[/1-Oct-2013|October 1, 2013]]<br />
* [[/24-Sep-2013|September 24, 2013]]<br />
* [[/17-Sep-2013|September 17, 2013]]<br />
* [[/10-Sep-2013|September 10, 2013]]<br />
* [[/03-Sep-2013|September 3, 2013]]<br />
* [[/27-Aug-2013|August 27, 2013]]<br />
* [[/20-Aug-2013|August 20, 2013]]<br />
* [[/13-Aug-2013|August 13, 2013]]<br />
* [[/6-Aug-2013|August 6, 2013]]<br />
* [[/30-Jul-2013|July 30, 2013]]<br />
* [[/23-Jul-2013|July 23, 2013]]<br />
* [[/16-Jul-2013|July 16, 2013]]<br />
* [[/9-Jul-2013|July 9, 2013]]<br />
* [[/2-Jul-2013|July 2, 2013]]<br />
* [[/18-Jun-2013|June 18, 2013]]<br />
* [[/11-Jun-2013|June 11, 2013]]<br />
* [[/4-Jun-2013|June 4, 2013]]<br />
* [[/28-May-2013|May 28, 2013]]<br />
* [[/21-May-2013|May 21, 2013]]<br />
* [[/14-May-2013|May 14, 2013]]<br />
* [[/7-May-2013|May 7, 2013]]<br />
* [[/30-Apr-2013|Apr 30, 2013]]<br />
* [[/23-Apr-2013|Apr 23, 2013]]<br />
* [[/16-Apr-2013|Apr 16, 2013]]<br />
* [[/9-Apr-2013|Apr 9, 2013]]<br />
* [[/2-Apr-2013|Apr 2, 2013]]<br />
* [[/26-Mar-2013|Mar 26, 2013]]<br />
* [[/19-Mar-2013|Mar 19, 2013]]<br />
* [[/12-Mar-2013|Mar 12, 2013]]<br />
* [[/5-Mar-2013|Mar 5, 2013]]<br />
* [[/26-Feb-2013|Feb 26, 2013]]<br />
* [[/19-Feb-2013|Feb 19, 2013]]<br />
* [[/12-Feb-2013|Feb 12, 2013]]<br />
* [[/5-Feb-2013|Feb 5, 2013]]<br />
* [[/22-Jan-2013|Jan 22, 2013]]<br />
* [[/15-Jan-2013|Jan 15, 2013]]<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
|}<br />
<br />
{| class="wikitable mw-collapsible mw-collapsed" style="width: 100%"<br />
! 2012 <br />
|-<br />
|<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
* [[/18-Dec-2012|Dec 18, 2012]]<br />
* [[/11-Dec-2012|Dec 11, 2012]]<br />
* [[/4-Dec-2012|Dec 4, 2012]]<br />
* [[/27-Nov-2012|Nov 27, 2012]]<br />
* [[/20-Nov-2012|Nov 20, 2012]]<br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/12-Feb-2019&diff=1208130Firefox/Meeting/12-Feb-20192019-02-26T03:49:49Z<p>Felipc: Create page for Feb 12, 2019 meeting</p>
<hr />
<div>== General Topics / Roundtable ==<br />
<br />
* [MattN] Credit card autofill was [https://bugzilla.mozilla.org/show_bug.cgi?id=1521194 ''disabled by default so we dogfood and test what we ship''] since it’s not a priority to ship in the short term.<br />
<br />
== Friends of the Firefox team ==<br />
<br />
=== Introductions ===<br />
<br />
* [mconley] Eric Smyth (:esmyth)<br />
<br />
=== [https://mzl.la/2UUgScl ''Resolved bugs (excluding employees)''] ===<br />
<br />
=== Fixed more than one bug ===<br />
<br />
<ul><br />
<li>Abdoulaye O. LY</li><br />
<li>Avery Berninger</li><br />
<li><p>Manish [:manishkk]</p><br />
<ul><br />
<li><blockquote><p>Special shout-out for fixing '''10 bugs''' in the last two weeks! 🎉 </p></blockquote></li></ul><br />
</li><br />
<li>Martin Koroknay</li><br />
<li>Oriol Brufau [:Oriol]</li><br />
<li>Shivam Singhal [ :championshuttler ]</li><br />
<li>Tim Nguyen :ntim</li></ul><br />
<br />
=== New contributors (🌟 = first patch) ===<br />
<br />
* 🌟 Avery Berninger [https://bugzilla.mozilla.org/show_bug.cgi?id=1517519 ''migrated about:tabcrashed to Fluent''], and also [https://bugzilla.mozilla.org/show_bug.cgi?id=1517510 ''updated browser_all_files_referenced.js so that it also looks for Fluent ftl files'']!<br />
* 🌟 Brian Chen [https://bugzilla.mozilla.org/show_bug.cgi?id=1517307 ''migrated the “reset profile” strings''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1519923 ''about:rights''] to Fluent, and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1517496 ''made browser_misused_characters_in_strings.js check Fluent files'']<br />
* edward.i.wu [https://bugzilla.mozilla.org/show_bug.cgi?id=1450114 ''made it possible to theme selection text and background colours''] from a WebExtension theme<br />
* Garvit Khatri [:garvitdelhi] [https://bugzilla.mozilla.org/show_bug.cgi?id=1513922 ''fixed a styling glitch''] in our DevTools Font Inspector<br />
* 🌟 Martin Koroknay [https://bugzilla.mozilla.org/show_bug.cgi?id=1426122 ''fixed a bug where add-ons could get stuck checking for updates''], and made it so that [https://bugzilla.mozilla.org/show_bug.cgi?id=1523861 ''we always show the filter toolbar buttons for the console'']<br />
* 🌟 Sakshaat Choyikandi [https://bugzilla.mozilla.org/show_bug.cgi?id=1522057 ''improved our DevTools documentation'']<br />
* 🌟 SresthaSrivastava [:srestha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1523679 ''removed some unused attributes from aboutNetError.xhtml'']<br />
* 🌟 Varun [:vdey he/him IST] [https://bugzilla.mozilla.org/show_bug.cgi?id=1524227 ''cleaned up some of our Telemetry tests'']<br />
<br />
== Project Updates ==<br />
<br />
=== Activity Stream ===<br />
<br />
* <br />
<br />
=== Add-ons / Web Extensions ===<br />
<br />
* Support for update.rdf [https://bugzilla.mozilla.org/show_bug.cgi?id=857458 ''was removed'']. 🎉 🎉 🎉 🎉<br />
* Themes got the ability to handle [https://bugzilla.mozilla.org/show_bug.cgi?id=1450114 ''selection colors''].<br />
* Moving an unloaded tab [https://bugzilla.mozilla.org/show_bug.cgi?id=1488095 ''no longer loads it''].<br />
* Work on [https://bugzilla.mozilla.org/show_bug.cgi?id=1380809 ''extensions in private browsing mode''] continues.<br />
* The first bits of a [https://bugzilla.mozilla.org/show_bug.cgi?id=1505924 ''new about:addons''] written in HTML landed.<br />
<br />
=== Applications ===<br />
<br />
==== Screenshots ====<br />
<br />
<ul><br />
<li><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1521168 ''Latest export''] landed in Nightly: disables uploads, provides migration instructions for past uploaders, adds ctrl + shift + s keyboard shortcut</p><br />
<ul><br />
<li><blockquote><p>Show context menu when there's a text selection ([https://github.com/mozilla-services/screenshots/issues/5334 ''#5334''])</p></blockquote></li><br />
<li><blockquote><p>Enable pageAction on reader mode ([https://github.com/mozilla-services/screenshots/issues/5282 ''#5282''])</p></blockquote></li><br />
<li><blockquote><p>Add additional requestIdleCallback wait around migration server check ([https://github.com/mozilla-services/screenshots/issues/5335 ''#5335'']).</p></blockquote></li><br />
<li><blockquote><p>Metrics improvements ([https://github.com/mozilla-services/screenshots/issues/5315 ''#5315'']) </p></blockquote><br />
<ul><br />
<li>stop sending metrics if server isn't available</li><br />
<li>Also adds logic to not send timing information if server is unavailable</li><br />
<li>only send analytics for 10% of user.</li></ul><br />
</li><br />
<li><blockquote><p>Make Enter download a shot. ([https://github.com/mozilla-services/screenshots/issues/5259 ''#5259''])</p></blockquote></li><br />
<li><blockquote><p>Use incognito: spanning in manifest ([https://github.com/mozilla-services/screenshots/issues/5294 ''#5294''])</p></blockquote></li><br />
<li><blockquote><p>Update first slide text to remove references to uploading[https://github.com/mozilla-services/screenshots/commit/43c8db5 ][https://github.com/mozilla-services/screenshots/commit/43c8db5 ''43c8db5'']</p></blockquote></li><br />
<li><blockquote><p>Query user status from server ([https://github.com/mozilla-services/screenshots/issues/5260 ''#5260''])</p></blockquote></li><br />
<li><blockquote><p>Remove My Shots links for non-server-users ([https://github.com/mozilla-services/screenshots/issues/5263 ''#5263''])</p></blockquote></li><br />
<li><blockquote><p>Pop open server page for people with indefinite shots. ([https://github.com/mozilla-services/screenshots/issues/5261 ''#5261''])</p></blockquote></li><br />
<li><blockquote><p>Remove My Shots test, since My Shots button is usually gone[https://github.com/mozilla-services/screenshots/commit/534eba4 ][https://github.com/mozilla-services/screenshots/commit/534eba4 ''534eba4'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
==== Lockbox ====<br />
<br />
* [https://lockbox.firefox.com/ ''Firefox Lockbox''] is a password manager project that is adding a webextension, and will be working together with the password manager team. The code is currently hosted on [https://github.com/mozilla-lockbox/lockbox-addon ''github''].<br />
* This past sprint covered foundational work on the webextension:<br />
* [lorchard] [https://github.com/mozilla-lockbox/lockbox-addon/commit/10feb59a9194d400ccd49b4a9b548dd81b4ba972 ''Disable prompts to save logins while on extension pages (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/74 ''#74''][https://github.com/mozilla-lockbox/lockbox-addon/commit/10feb59a9194d400ccd49b4a9b548dd81b4ba972 '')'']<br />
* [JSON_voorhees] [https://github.com/mozilla-lockbox/lockbox-addon/commit/e26cdfc33955103649cb1e7b643e1022333a1d19 ''Update styles in the doorhanger list view (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/64 ''#64''][https://github.com/mozilla-lockbox/lockbox-addon/commit/e26cdfc33955103649cb1e7b643e1022333a1d19 '')'']<br />
* [lorchard] Add integration tests for [https://github.com/mozilla-lockbox/lockbox-addon/commit/3440b21a757caae93260468a6292350f6bdfd627 ''item deletion &amp; modification (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/71 ''#71''][https://github.com/mozilla-lockbox/lockbox-addon/commit/3440b21a757caae93260468a6292350f6bdfd627 '')''] <br />
* [6a68] [https://github.com/mozilla-lockbox/lockbox-addon/commit/5284a72751ada7786305afbb9997a3f46e6fcfc5 ''Filter out sync logins in event handlers (''][https://github.com/mozilla-lockbox/lockbox-addon/issues/67 ''#67''][https://github.com/mozilla-lockbox/lockbox-addon/commit/5284a72751ada7786305afbb9997a3f46e6fcfc5 '')''] <br />
* [6a68] [https://github.com/mozilla-lockbox/lockbox-addon/commit/8cbd5f2053f47699f3fa61954ea03c64393ef6c1 ''Derive entry titles from saved login URL (''][https://github.com/mozilla-lockbox/lockbox-addon/issues/16 ''#16''][https://github.com/mozilla-lockbox/lockbox-addon/commit/8cbd5f2053f47699f3fa61954ea03c64393ef6c1 '')'']<br />
* [Relequestual] [https://github.com/mozilla-lockbox/lockbox-addon/commit/29c1fd9e0576927cf65cf9d34fdd62948d38cc2f ''Updated Readme (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/75 ''#75''][https://github.com/mozilla-lockbox/lockbox-addon/commit/29c1fd9e0576927cf65cf9d34fdd62948d38cc2f '')'']<br />
<br />
==== Services (Firefox Accounts / Sync / Push) ====<br />
<br />
<ul><br />
<li><p>We’re continuing to [https://github.com/mozilla/application-services/tree/e89df99e3556c2c9041447a1ea944cefabc7fb5a/components/places ''port Places to Rust''] for Fenix and Firefox for iOS!</p><br />
<ul><br />
<li><blockquote><p>Thom is looking at optimizing our [https://github.com/mozilla/application-services/issues/610 ''frecency algorithm''] and [https://github.com/mozilla/application-services/issues/611 ''history expiration''].</p></blockquote></li><br />
<li><blockquote><p>Thom also has a [https://github.com/mozilla/application-services/pull/658 ''proposal''] for generic syncing for key-value shaped data.</p></blockquote></li><br />
<li><blockquote><p>History sync is largely complete (and ready to test in the Android Reference Browser!), with [https://github.com/mozilla/application-services/pull/632 ''new APIs for clearing history''] landing soon.</p></blockquote></li><br />
<li><blockquote><p>Mark has landed an initial cut of the [https://github.com/mozilla/application-services/pull/525 ''bookmarks schema'']. We’ll be implementing syncing and merging next.</p></blockquote></li><br />
<li><blockquote><p>Our bookmark sync merging algorithm lives in a [https://github.com/mozilla/dogear ''separate Rust crate now''], called Dogear.</p></blockquote></li><br />
<li><blockquote><p>Lina [https://bugzilla.mozilla.org/show_bug.cgi?id=1482608 ''integrated the Rust merger into Desktop''], using a Rust XPCOM binding. Patches should be ready for review this week.</p></blockquote></li></ul><br />
</li><br />
<li>Edouard implemented Web Push crypto in Rust, to support Send Tab (and, eventually, Web Push!) in Android Components.</li><br />
<li>JR and Phil are working on a [https://github.com/mozilla/application-services/tree/e89df99e3556c2c9041447a1ea944cefabc7fb5a/components/push ''Push component''] for Rust.</li><br />
<li>TL;DR: Lots of Rust! 🦀</li></ul><br />
<br />
=== Browser Architecture ===<br />
<br />
* [https://arewefluentyet.com/ ''We now have more Fluent strings than DTD!'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1488845#c12 ''Documents in System Addons can use Fluent now'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1517880 ''Fluent XUL cache''] (in review) will allow us to use Fluent on the startup path<br />
<br />
=== Developer Tools ===<br />
<br />
<ul><br />
<li>The new ''scrollable'' badge got [https://bugzilla.mozilla.org/show_bug.cgi?id=1523543 ''enabled''] on Nightly by [https://twitter.com/FirefoxDevTools/status/1090664067432398848 ''Patrick Brosset''], letting you quickly find the element causing unwanted scrollbars<br /><br />
[[File:Pictures/10000201000005D40000028294800A78E81717A6.png|428x184px]]</li><br />
<li><p>Debugger team is working across [https://bugzilla.mozilla.org/show_bug.cgi?id=1517623 ''many''] fronts to provide you the Breakpoints quality that you deserve!</p><br />
<ul><br />
<li><blockquote><p>Brian Hackett is [https://bugzilla.mozilla.org/show_bug.cgi?id=1518661 ''cleaning''] the Debugger’s sources/script handling which not only fixes long-standing [https://bugzilla.mozilla.org/showdependencytree.cgi?id=1517623&hide_resolved=0 ''issues''] with inline, console, evaled &amp; gc’d scripts but also sets the foundation for shipping “windowless” worker debugging.</p></blockquote></li><br />
<li><blockquote><p>Landing: Logan Smyth [https://bugzilla.mozilla.org/show_bug.cgi?id=1518661 ''unified''] the pause location logic in the Debugger Server &amp; JS Engine. Expect rock solid &amp; fast pausing/stepping!</p></blockquote><br />
<ul><br />
<li>''Sneak preview'': Having proper locations support will also unblock the new [https://github.com/devtools-html/debugger.html/issues/7241 ''Column Breakpoints''] feature and [https://bugzilla.mozilla.org/show_bug.cgi?id=1070862 ''Pretty Print''] improvements.</li></ul><br />
</li><br />
<li><blockquote><p>'''📣 Call to Action: '''✨''Use All The Breakpoints'' ✨ Keep an eye for issues. If you see something, [https://bugzilla.mozilla.org/enter_bug.cgi?product=DevTools&component=Debugger ''say something''].</p></blockquote></li></ul><br />
</li><br />
<li>Razvan [https://bugzilla.mozilla.org/show_bug.cgi?id=1524548 ''landed the Copy support''] for the new ''Changes'' panel, so you can easily export the style modifications done the Inspector to share or apply in your IDE.<br /><br />
[[File:Pictures/1000020100000392000002DCF770B99046E6A333.png|252x202px]]</li><br />
<li>Logpoints [https://github.com/devtools-html/debugger.html/pull/7811 ''landed''] in the Debugger, letting you add and edit console logs everywhere, without ever touching the files – thanks to [https://github.com/bomsy ''Bomsy'']!<br /><br />
[[File:Pictures/10000201000001DA00000148FA871ADCA2C2286C.png|147x101px]]</li><br />
<li>UX Contributor Florens Verschelde continues his icon update work with [https://bugzilla.mozilla.org/show_bug.cgi?id=1513516 ''more''] and [https://github.com/devtools-html/debugger.html/pull/7890 ''more''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1522041 ''batches''].</li><br />
<li>Nicolas making it easier to copy and share traces from the Console by [https://bugzilla.mozilla.org/show_bug.cgi?id=1486870 ''improving''] the copied formatting.</li><br />
<li>Micah [https://bugzilla.mozilla.org/show_bug.cgi?id=1114936 ''added''] a ''Copy Stylesheet URL'' to the Style Editor to make compat debugging easier</li><br />
<li>Contributor [https://github.com/ravefalcon92 ''Anthony X.''] [https://github.com/devtools-html/debugger.html/pull/7911 ''added''] syntax highlighting to the Debugger’s conditional breakpoint input</li><br />
<li>Contributor Jarim [https://github.com/devtools-html/debugger.html/pull/7721 ''added the method filter''] to the XHR Breakpoints</li></ul><br />
<br />
=== Fission ===<br />
<br />
<ul><br />
<li>First [https://mystor.github.io/fission-news-1.html ''Fission Newsletter''] published</li><br />
<li><p>Fission now has milestones! (Fission Milestone in Bugzilla)</p><br />
<ul><br />
<li><blockquote><p>M1 -&gt; Render an OOP iframe -&gt; End of February</p></blockquote></li><br />
<li><blockquote><p>M2 -&gt; Interactive OOP iframes -&gt; +1 or 2 months, TBD</p></blockquote></li><br />
<li><blockquote><p>M3 … Future</p></blockquote></li><br />
<li><blockquote><p>Please nominate bugs with Fission Milestone -&gt; ? if you think it applies to Fission</p></blockquote></li></ul><br />
</li><br />
<li>Groundwork for [https://bugzilla.mozilla.org/show_bug.cgi?id=1467212 ''framescript replacement''] is landing at a fast pace</li><br />
<li>Some [https://wiki.mozilla.org/Project_Fission/FrontEnd ''docs for the front-end''] are on the wiki</li></ul><br />
<br />
=== [https://firefox-source-docs.mozilla.org/tools/lint/index.html ''Lint''] ===<br />
<br />
* Standard8 is investigating [https://bugzilla.mozilla.org/show_bug.cgi?id=1415265 ''centralising the configuration for test directories''] so that we don't need a .eslintrc.js in every test directory.<br />
* ESLint is discussing a [https://github.com/eslint/rfcs/pull/9 ''big change to how they manage configurations''].<br />
<br />
=== NodeJS ===<br />
<br />
* <br />
<br />
=== [https://wiki.mozilla.org/Toolkit:Password_Manager ''Password Manager''] ===<br />
<br />
<ul><br />
<li>[MattN] Project areas are coming together and should be prioritized by the end of the week</li><br />
<li><p>Completed</p><br />
<ul><br />
<li><blockquote><p>[everyone] Lots of test fixes to prepare for new development</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1174327 ''Added an Allow/Disallow autofill password option in the management UI'']</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] We now[https://bugzilla.mozilla.org/show_bug.cgi?id=1189524 '' provide visual feedback when a password field is autofilled''] bringing login fields in line with autofilled address form fields. </p></blockquote></li><br />
<li><blockquote><p>[sfoster] You now have[https://bugzilla.mozilla.org/show_bug.cgi?id=1520960 '' the option to save passwords in Private Browsing mode'']</p></blockquote></li></ul><br />
</li><br />
<li><p>In Progress</p><br />
<ul><br />
<li><blockquote><p>[sfoster] [https://bugzilla.mozilla.org/show_bug.cgi?id=1149500 ''Delay autofill on background tabs until selected'']</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1189618 ''Add a &quot;View Saved Logins&quot; footer to the password manager autocomplete popup'']</p></blockquote></li><br />
<li><blockquote><p>[jaws] [https://bugzilla.mozilla.org/show_bug.cgi?id=1520949 ''Logins imported from Chrome (on Windows) have the wrong character encoding'']</p></blockquote></li><br />
<li><blockquote><p>[MattN] [https://bugzilla.mozilla.org/show_bug.cgi?id=1439023 ''Selection of previously entered form history (and username) data broken in Nightly when Form Autofill is enabled'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Performance ===<br />
<br />
<ul><br />
<li>[https://mikeconley.ca/blog/2019/02/06/firefox-front-end-performance-update-12/ ''Firefox Front-end Performance Update #12 posted'']</li><br />
<li><p>dthayer’s research into [https://bugzilla.mozilla.org/show_bug.cgi?id=1518203 ''a warm-up service''] seems to indicate that we can perhaps shave off 1s of net time required to start Firefox from cold OS boot.</p><br />
<ul><br />
<li><blockquote><p>esmyth is running a Heartbeat survey to get some user sentiment on the various trade-offs here</p></blockquote></li></ul><br />
</li><br />
<li>dthayer is [https://bugzilla.mozilla.org/show_bug.cgi?id=1364235 ''going to collect Telemetry on startup cache hits and misses'']</li><br />
<li>felipe’s [https://bugzilla.mozilla.org/show_bug.cgi?id=1355588 ''new tab animations''] have been baking in Nightly behind the browser.tabs.newanimations pref, and plawless has been working with UX to free up epang to help figure out the remaining animations</li><br />
<li><p>felipe has also [https://bugzilla.mozilla.org/show_bug.cgi?id=827976 ''resurrected an older patch to make creating the ever-mysterious Hidden Window lazy to load''] on Windows and Linux</p><br />
<ul><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1527219 ''This has resulted in some nice clean-ups''], since felipe has discovered quite a bit of unused code</p></blockquote></li></ul><br />
</li><br />
<li><p>Gijs [https://bugzilla.mozilla.org/show_bug.cgi?id=1526517 ''landed a patch to make it easier to experiment with the low-end hardware browser adjustment on beta'']. He’s going to try shifting the technique to lower the frame rate by having the RefreshDriver skip every other vsync, rather than lowering the vsync rate.</p><br />
<ul><br />
<li><blockquote><p>We believe this will allow scrolling and video to still play at 60fps, but that painting of web and chrome content will happen less frequently per second</p></blockquote></li></ul><br />
</li><br />
<li>Gijs also [https://bugzilla.mozilla.org/show_bug.cgi?id=1445739 ''made it so that we don’t invalidate the start-up cache''] when installing or uninstalling a WebExtension</li><br />
<li>mconley [https://mzl.la/2Bwq3Zs ''landed a probe''] that measures the time from process start to painting the top sites in the initial tab’s about:home</li><br />
<li><p>mconley enabled the [https://bugzilla.mozilla.org/show_bug.cgi?id=1476981 ''process priority manager by default on Windows on Nightly''].</p><br />
<ul><br />
<li><blockquote><p>Got our first [https://bugzilla.mozilla.org/show_bug.cgi?id=1524193 ''fallout''] report, and just today landed some patches to increase the priority of background tabs playing audio</p></blockquote></li></ul><br />
</li><br />
<li><p>Using some handy scripts from Florian, mconley was able to do some frame recordings on the 2018 reference hardware to measure start-up performance</p><br />
<ul><br />
<li><blockquote><p>Firefox Nightly is running in the 4 on the left, Google Chrome is running in the 4 on the right</p></blockquote></li><br />
<li><blockquote><p>[[File:Pictures/100000A000000280000000B419115B45A7C19BF2.gif|526x147px]]</p></blockquote></li><br />
<li><blockquote><p>Observations</p></blockquote><br />
<ul><br />
<li>Firefox Nightly is consistently faster to get to first paint and to painting the browser toolbars</li><br />
<li>The primary deficit appears to be presenting about:home.</li><br />
<li>We probably should delay the Update</li></ul><br />
</li><br />
<li><blockquote><p>The team will be focusing on trying to improve our time to painting about:home.</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Policy Engine ===<br />
<br />
<ul><br />
<li><p>New policies for</p><br />
<ul><br />
<li><blockquote><p>CaptivePortal (turning it off) [https://bugzilla.mozilla.org/show_bug.cgi?id=1523810 ''1523810'']</p></blockquote></li><br />
<li><blockquote><p>NetworkPrediction (prefetch) [https://bugzilla.mozilla.org/show_bug.cgi?id=1524089 ''1524089'']</p></blockquote></li><br />
<li><blockquote><p>ExtensionUpdate [https://bugzilla.mozilla.org/show_bug.cgi?id=1526439 ''1526439'']</p></blockquote></li></ul><br />
</li><br />
<li>Making progress on extension whitelist, fixing blocking add-on bugs along the way</li><br />
<li>Started investigating the [https://github.com/LegacyBrowserSupport/legacy-browser-support ''Chrome Legacy Browser Extension'']</li></ul><br />
<br />
=== Privacy/Security ===<br />
<br />
* <br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
==== Bookmarks &amp; History ====<br />
<br />
* Marco fixed an issue with [https://bugzilla.mozilla.org/show_bug.cgi?id=1519058 ''Favicons where we would lose them in some circumstances if you clear history on shutdown''].<br />
* Mark fixed an issue where [https://bugzilla.mozilla.org/show_bug.cgi?id=1523665 ''importing bookmarks could unnecessarily fail earlier if invalid entries resulted in an empty section''].<br />
<br />
==== Search ====<br />
<br />
* Mike de Boer [https://bugzilla.mozilla.org/show_bug.cgi?id=1524593 ''landed a patch to make the Search Service load asynchronously'']. Preparation for loading WebExtension based engines <br />
<br />
==== Quantum Bar ====<br />
<br />
* Lots of bug fixes and code cleanups, list too long.<br />
* Search one-off buttons have been added to the display, but currently can't be [https://bugzilla.mozilla.org/show_bug.cgi?id=1527260 ''selected'']/[https://bugzilla.mozilla.org/show_bug.cgi?id=1525318 ''clicked on''].<br />
* Now ported the [https://bugzilla.mozilla.org/show_bug.cgi?id=1514162 ''majority of tests in the urlbar directory''] to work with QuantumBar. Likely to start on those outside the urlbar directory soon.<br />
* Working on getting the list of bugs remaining for [https://bugzilla.mozilla.org/showdependencytree.cgi?id=1520799&hide_resolved=1 ''nightly down''], will likely be looking at starting wider testing soon.<br />
<br />
=== User Experience ===<br />
<br />
<ul><br />
<li><p>After the implementation of CFR for Extensions, the goal is to extend recommendations to include Firefox features, like Pinned tabs. For example, if you open multiple tabs and repeatedly use these tabs, we may offer you a feature called “Pin Tabs” and explain how it works. Firefox curates the suggested features and notifies you in an appropriate context.</p><br />
<ul><br />
<li><blockquote><p>After several rounds of user testing, we've finalized the design and will run CFR Pinned Tab in a shield study. Engineering work is scheduled for 67.</p></blockquote></li><br />
<li><blockquote><p>CFR Pinned Tabs Bug - [https://bugzilla.mozilla.org/show_bug.cgi?id=1501815 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1501815'']</p></blockquote></li><br />
<li><blockquote><p>CFR - Pinned Tabs Spec - [https://mozilla.invisionapp.com/share/R3OVTEX9X76#/screens ''https://mozilla.invisionapp.com/share/R3OVTEX9X76#/screens'']</p></blockquote></li></ul><br />
</li><br />
<li><p>[https://twitter.com/bwinton/status/1088078920820367360 ''Touchbar support has been enabled in Nightly'']!</p><br />
<ul><br />
<li><blockquote><p>[[File:Pictures/10000201000004380000043865EB3797D09797B4.png|333x334px]]</p></blockquote></li></ul><br />
</li></ul><br />
<br />
== This week I learned ==<br />
<br />
* [felipe] There’s a non-standard [https://developer.mozilla.org/en-US/docs/Web/Events/transitioncancel ''transitioncancel event''], useful when a transition is interrupted midway and you still need to do work. It can be interrupted by some CSS changes such as the element receiving display: none, the transition-property changing, etc.<br />
* [felipe] elem.getAnimations() also returns ongoing transitions, and there’s a `finished` promise on it (which resolves or rejects if the transition was canceled)<br />
* [6a68] Github contributors in contributors list? (Sure!)</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/12-Feb-2019&diff=1208129Firefox/12-Feb-20192019-02-26T03:47:13Z<p>Felipc: Meeting notes from Feb 12, 2019</p>
<hr />
<div>== General Topics / Roundtable ==<br />
<br />
* [MattN] Credit card autofill was [https://bugzilla.mozilla.org/show_bug.cgi?id=1521194 ''disabled by default so we dogfood and test what we ship''] since it’s not a priority to ship in the short term.<br />
<br />
== Friends of the Firefox team ==<br />
<br />
=== Introductions ===<br />
<br />
* [mconley] Eric Smyth (:esmyth)<br />
<br />
=== [https://mzl.la/2UUgScl ''Resolved bugs (excluding employees)''] ===<br />
<br />
=== Fixed more than one bug ===<br />
<br />
<ul><br />
<li>Abdoulaye O. LY</li><br />
<li>Avery Berninger</li><br />
<li><p>Manish [:manishkk]</p><br />
<ul><br />
<li><blockquote><p>Special shout-out for fixing '''10 bugs''' in the last two weeks! 🎉 </p></blockquote></li></ul><br />
</li><br />
<li>Martin Koroknay</li><br />
<li>Oriol Brufau [:Oriol]</li><br />
<li>Shivam Singhal [ :championshuttler ]</li><br />
<li>Tim Nguyen :ntim</li></ul><br />
<br />
=== New contributors (🌟 = first patch) ===<br />
<br />
* 🌟 Avery Berninger [https://bugzilla.mozilla.org/show_bug.cgi?id=1517519 ''migrated about:tabcrashed to Fluent''], and also [https://bugzilla.mozilla.org/show_bug.cgi?id=1517510 ''updated browser_all_files_referenced.js so that it also looks for Fluent ftl files'']!<br />
* 🌟 Brian Chen [https://bugzilla.mozilla.org/show_bug.cgi?id=1517307 ''migrated the “reset profile” strings''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1519923 ''about:rights''] to Fluent, and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1517496 ''made browser_misused_characters_in_strings.js check Fluent files'']<br />
* edward.i.wu [https://bugzilla.mozilla.org/show_bug.cgi?id=1450114 ''made it possible to theme selection text and background colours''] from a WebExtension theme<br />
* Garvit Khatri [:garvitdelhi] [https://bugzilla.mozilla.org/show_bug.cgi?id=1513922 ''fixed a styling glitch''] in our DevTools Font Inspector<br />
* 🌟 Martin Koroknay [https://bugzilla.mozilla.org/show_bug.cgi?id=1426122 ''fixed a bug where add-ons could get stuck checking for updates''], and made it so that [https://bugzilla.mozilla.org/show_bug.cgi?id=1523861 ''we always show the filter toolbar buttons for the console'']<br />
* 🌟 Sakshaat Choyikandi [https://bugzilla.mozilla.org/show_bug.cgi?id=1522057 ''improved our DevTools documentation'']<br />
* 🌟 SresthaSrivastava [:srestha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1523679 ''removed some unused attributes from aboutNetError.xhtml'']<br />
* 🌟 Varun [:vdey he/him IST] [https://bugzilla.mozilla.org/show_bug.cgi?id=1524227 ''cleaned up some of our Telemetry tests'']<br />
<br />
== Project Updates ==<br />
<br />
=== Activity Stream ===<br />
<br />
* <br />
<br />
=== Add-ons / Web Extensions ===<br />
<br />
* Support for update.rdf [https://bugzilla.mozilla.org/show_bug.cgi?id=857458 ''was removed'']. 🎉 🎉 🎉 🎉<br />
* Themes got the ability to handle [https://bugzilla.mozilla.org/show_bug.cgi?id=1450114 ''selection colors''].<br />
* Moving an unloaded tab [https://bugzilla.mozilla.org/show_bug.cgi?id=1488095 ''no longer loads it''].<br />
* Work on [https://bugzilla.mozilla.org/show_bug.cgi?id=1380809 ''extensions in private browsing mode''] continues.<br />
* The first bits of a [https://bugzilla.mozilla.org/show_bug.cgi?id=1505924 ''new about:addons''] written in HTML landed.<br />
<br />
=== Applications ===<br />
<br />
==== Screenshots ====<br />
<br />
<ul><br />
<li><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1521168 ''Latest export''] landed in Nightly: disables uploads, provides migration instructions for past uploaders, adds ctrl + shift + s keyboard shortcut</p><br />
<ul><br />
<li><blockquote><p>Show context menu when there's a text selection ([https://github.com/mozilla-services/screenshots/issues/5334 ''#5334''])</p></blockquote></li><br />
<li><blockquote><p>Enable pageAction on reader mode ([https://github.com/mozilla-services/screenshots/issues/5282 ''#5282''])</p></blockquote></li><br />
<li><blockquote><p>Add additional requestIdleCallback wait around migration server check ([https://github.com/mozilla-services/screenshots/issues/5335 ''#5335'']).</p></blockquote></li><br />
<li><blockquote><p>Metrics improvements ([https://github.com/mozilla-services/screenshots/issues/5315 ''#5315'']) </p></blockquote><br />
<ul><br />
<li>stop sending metrics if server isn't available</li><br />
<li>Also adds logic to not send timing information if server is unavailable</li><br />
<li>only send analytics for 10% of user.</li></ul><br />
</li><br />
<li><blockquote><p>Make Enter download a shot. ([https://github.com/mozilla-services/screenshots/issues/5259 ''#5259''])</p></blockquote></li><br />
<li><blockquote><p>Use incognito: spanning in manifest ([https://github.com/mozilla-services/screenshots/issues/5294 ''#5294''])</p></blockquote></li><br />
<li><blockquote><p>Update first slide text to remove references to uploading[https://github.com/mozilla-services/screenshots/commit/43c8db5 ][https://github.com/mozilla-services/screenshots/commit/43c8db5 ''43c8db5'']</p></blockquote></li><br />
<li><blockquote><p>Query user status from server ([https://github.com/mozilla-services/screenshots/issues/5260 ''#5260''])</p></blockquote></li><br />
<li><blockquote><p>Remove My Shots links for non-server-users ([https://github.com/mozilla-services/screenshots/issues/5263 ''#5263''])</p></blockquote></li><br />
<li><blockquote><p>Pop open server page for people with indefinite shots. ([https://github.com/mozilla-services/screenshots/issues/5261 ''#5261''])</p></blockquote></li><br />
<li><blockquote><p>Remove My Shots test, since My Shots button is usually gone[https://github.com/mozilla-services/screenshots/commit/534eba4 ][https://github.com/mozilla-services/screenshots/commit/534eba4 ''534eba4'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
==== Lockbox ====<br />
<br />
* [https://lockbox.firefox.com/ ''Firefox Lockbox''] is a password manager project that is adding a webextension, and will be working together with the password manager team. The code is currently hosted on [https://github.com/mozilla-lockbox/lockbox-addon ''github''].<br />
* This past sprint covered foundational work on the webextension:<br />
* [lorchard] [https://github.com/mozilla-lockbox/lockbox-addon/commit/10feb59a9194d400ccd49b4a9b548dd81b4ba972 ''Disable prompts to save logins while on extension pages (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/74 ''#74''][https://github.com/mozilla-lockbox/lockbox-addon/commit/10feb59a9194d400ccd49b4a9b548dd81b4ba972 '')'']<br />
* [JSON_voorhees] [https://github.com/mozilla-lockbox/lockbox-addon/commit/e26cdfc33955103649cb1e7b643e1022333a1d19 ''Update styles in the doorhanger list view (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/64 ''#64''][https://github.com/mozilla-lockbox/lockbox-addon/commit/e26cdfc33955103649cb1e7b643e1022333a1d19 '')'']<br />
* [lorchard] Add integration tests for [https://github.com/mozilla-lockbox/lockbox-addon/commit/3440b21a757caae93260468a6292350f6bdfd627 ''item deletion &amp; modification (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/71 ''#71''][https://github.com/mozilla-lockbox/lockbox-addon/commit/3440b21a757caae93260468a6292350f6bdfd627 '')''] <br />
* [6a68] [https://github.com/mozilla-lockbox/lockbox-addon/commit/5284a72751ada7786305afbb9997a3f46e6fcfc5 ''Filter out sync logins in event handlers (''][https://github.com/mozilla-lockbox/lockbox-addon/issues/67 ''#67''][https://github.com/mozilla-lockbox/lockbox-addon/commit/5284a72751ada7786305afbb9997a3f46e6fcfc5 '')''] <br />
* [6a68] [https://github.com/mozilla-lockbox/lockbox-addon/commit/8cbd5f2053f47699f3fa61954ea03c64393ef6c1 ''Derive entry titles from saved login URL (''][https://github.com/mozilla-lockbox/lockbox-addon/issues/16 ''#16''][https://github.com/mozilla-lockbox/lockbox-addon/commit/8cbd5f2053f47699f3fa61954ea03c64393ef6c1 '')'']<br />
* [Relequestual] [https://github.com/mozilla-lockbox/lockbox-addon/commit/29c1fd9e0576927cf65cf9d34fdd62948d38cc2f ''Updated Readme (''][https://github.com/mozilla-lockbox/lockbox-addon/pull/75 ''#75''][https://github.com/mozilla-lockbox/lockbox-addon/commit/29c1fd9e0576927cf65cf9d34fdd62948d38cc2f '')'']<br />
<br />
==== Services (Firefox Accounts / Sync / Push) ====<br />
<br />
<ul><br />
<li><p>We’re continuing to [https://github.com/mozilla/application-services/tree/e89df99e3556c2c9041447a1ea944cefabc7fb5a/components/places ''port Places to Rust''] for Fenix and Firefox for iOS!</p><br />
<ul><br />
<li><blockquote><p>Thom is looking at optimizing our [https://github.com/mozilla/application-services/issues/610 ''frecency algorithm''] and [https://github.com/mozilla/application-services/issues/611 ''history expiration''].</p></blockquote></li><br />
<li><blockquote><p>Thom also has a [https://github.com/mozilla/application-services/pull/658 ''proposal''] for generic syncing for key-value shaped data.</p></blockquote></li><br />
<li><blockquote><p>History sync is largely complete (and ready to test in the Android Reference Browser!), with [https://github.com/mozilla/application-services/pull/632 ''new APIs for clearing history''] landing soon.</p></blockquote></li><br />
<li><blockquote><p>Mark has landed an initial cut of the [https://github.com/mozilla/application-services/pull/525 ''bookmarks schema'']. We’ll be implementing syncing and merging next.</p></blockquote></li><br />
<li><blockquote><p>Our bookmark sync merging algorithm lives in a [https://github.com/mozilla/dogear ''separate Rust crate now''], called Dogear.</p></blockquote></li><br />
<li><blockquote><p>Lina [https://bugzilla.mozilla.org/show_bug.cgi?id=1482608 ''integrated the Rust merger into Desktop''], using a Rust XPCOM binding. Patches should be ready for review this week.</p></blockquote></li></ul><br />
</li><br />
<li>Edouard implemented Web Push crypto in Rust, to support Send Tab (and, eventually, Web Push!) in Android Components.</li><br />
<li>JR and Phil are working on a [https://github.com/mozilla/application-services/tree/e89df99e3556c2c9041447a1ea944cefabc7fb5a/components/push ''Push component''] for Rust.</li><br />
<li>TL;DR: Lots of Rust! 🦀</li></ul><br />
<br />
=== Browser Architecture ===<br />
<br />
* [https://arewefluentyet.com/ ''We now have more Fluent strings than DTD!'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1488845#c12 ''Documents in System Addons can use Fluent now'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1517880 ''Fluent XUL cache''] (in review) will allow us to use Fluent on the startup path<br />
<br />
=== Developer Tools ===<br />
<br />
<ul><br />
<li>The new ''scrollable'' badge got [https://bugzilla.mozilla.org/show_bug.cgi?id=1523543 ''enabled''] on Nightly by [https://twitter.com/FirefoxDevTools/status/1090664067432398848 ''Patrick Brosset''], letting you quickly find the element causing unwanted scrollbars<br /><br />
[[File:Pictures/10000201000005D40000028294800A78E81717A6.png|428x184px]]</li><br />
<li><p>Debugger team is working across [https://bugzilla.mozilla.org/show_bug.cgi?id=1517623 ''many''] fronts to provide you the Breakpoints quality that you deserve!</p><br />
<ul><br />
<li><blockquote><p>Brian Hackett is [https://bugzilla.mozilla.org/show_bug.cgi?id=1518661 ''cleaning''] the Debugger’s sources/script handling which not only fixes long-standing [https://bugzilla.mozilla.org/showdependencytree.cgi?id=1517623&hide_resolved=0 ''issues''] with inline, console, evaled &amp; gc’d scripts but also sets the foundation for shipping “windowless” worker debugging.</p></blockquote></li><br />
<li><blockquote><p>Landing: Logan Smyth [https://bugzilla.mozilla.org/show_bug.cgi?id=1518661 ''unified''] the pause location logic in the Debugger Server &amp; JS Engine. Expect rock solid &amp; fast pausing/stepping!</p></blockquote><br />
<ul><br />
<li>''Sneak preview'': Having proper locations support will also unblock the new [https://github.com/devtools-html/debugger.html/issues/7241 ''Column Breakpoints''] feature and [https://bugzilla.mozilla.org/show_bug.cgi?id=1070862 ''Pretty Print''] improvements.</li></ul><br />
</li><br />
<li><blockquote><p>'''📣 Call to Action: '''✨''Use All The Breakpoints'' ✨ Keep an eye for issues. If you see something, [https://bugzilla.mozilla.org/enter_bug.cgi?product=DevTools&component=Debugger ''say something''].</p></blockquote></li></ul><br />
</li><br />
<li>Razvan [https://bugzilla.mozilla.org/show_bug.cgi?id=1524548 ''landed the Copy support''] for the new ''Changes'' panel, so you can easily export the style modifications done the Inspector to share or apply in your IDE.<br /><br />
[[File:Pictures/1000020100000392000002DCF770B99046E6A333.png|252x202px]]</li><br />
<li>Logpoints [https://github.com/devtools-html/debugger.html/pull/7811 ''landed''] in the Debugger, letting you add and edit console logs everywhere, without ever touching the files – thanks to [https://github.com/bomsy ''Bomsy'']!<br /><br />
[[File:Pictures/10000201000001DA00000148FA871ADCA2C2286C.png|147x101px]]</li><br />
<li>UX Contributor Florens Verschelde continues his icon update work with [https://bugzilla.mozilla.org/show_bug.cgi?id=1513516 ''more''] and [https://github.com/devtools-html/debugger.html/pull/7890 ''more''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1522041 ''batches''].</li><br />
<li>Nicolas making it easier to copy and share traces from the Console by [https://bugzilla.mozilla.org/show_bug.cgi?id=1486870 ''improving''] the copied formatting.</li><br />
<li>Micah [https://bugzilla.mozilla.org/show_bug.cgi?id=1114936 ''added''] a ''Copy Stylesheet URL'' to the Style Editor to make compat debugging easier</li><br />
<li>Contributor [https://github.com/ravefalcon92 ''Anthony X.''] [https://github.com/devtools-html/debugger.html/pull/7911 ''added''] syntax highlighting to the Debugger’s conditional breakpoint input</li><br />
<li>Contributor Jarim [https://github.com/devtools-html/debugger.html/pull/7721 ''added the method filter''] to the XHR Breakpoints</li></ul><br />
<br />
=== Fission ===<br />
<br />
<ul><br />
<li>First [https://mystor.github.io/fission-news-1.html ''Fission Newsletter''] published</li><br />
<li><p>Fission now has milestones! (Fission Milestone in Bugzilla)</p><br />
<ul><br />
<li><blockquote><p>M1 -&gt; Render an OOP iframe -&gt; End of February</p></blockquote></li><br />
<li><blockquote><p>M2 -&gt; Interactive OOP iframes -&gt; +1 or 2 months, TBD</p></blockquote></li><br />
<li><blockquote><p>M3 … Future</p></blockquote></li><br />
<li><blockquote><p>Please nominate bugs with Fission Milestone -&gt; ? if you think it applies to Fission</p></blockquote></li></ul><br />
</li><br />
<li>Groundwork for [https://bugzilla.mozilla.org/show_bug.cgi?id=1467212 ''framescript replacement''] is landing at a fast pace</li><br />
<li>Some [https://wiki.mozilla.org/Project_Fission/FrontEnd ''docs for the front-end''] are on the wiki</li></ul><br />
<br />
=== [https://firefox-source-docs.mozilla.org/tools/lint/index.html ''Lint''] ===<br />
<br />
* Standard8 is investigating [https://bugzilla.mozilla.org/show_bug.cgi?id=1415265 ''centralising the configuration for test directories''] so that we don't need a .eslintrc.js in every test directory.<br />
* ESLint is discussing a [https://github.com/eslint/rfcs/pull/9 ''big change to how they manage configurations''].<br />
<br />
=== NodeJS ===<br />
<br />
* <br />
<br />
=== [https://wiki.mozilla.org/Toolkit:Password_Manager ''Password Manager''] ===<br />
<br />
<ul><br />
<li>[MattN] Project areas are coming together and should be prioritized by the end of the week</li><br />
<li><p>Completed</p><br />
<ul><br />
<li><blockquote><p>[everyone] Lots of test fixes to prepare for new development</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1174327 ''Added an Allow/Disallow autofill password option in the management UI'']</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] We now[https://bugzilla.mozilla.org/show_bug.cgi?id=1189524 '' provide visual feedback when a password field is autofilled''] bringing login fields in line with autofilled address form fields. </p></blockquote></li><br />
<li><blockquote><p>[sfoster] You now have[https://bugzilla.mozilla.org/show_bug.cgi?id=1520960 '' the option to save passwords in Private Browsing mode'']</p></blockquote></li></ul><br />
</li><br />
<li><p>In Progress</p><br />
<ul><br />
<li><blockquote><p>[sfoster] [https://bugzilla.mozilla.org/show_bug.cgi?id=1149500 ''Delay autofill on background tabs until selected'']</p></blockquote></li><br />
<li><blockquote><p>[prathiksha] [https://bugzilla.mozilla.org/show_bug.cgi?id=1189618 ''Add a &quot;View Saved Logins&quot; footer to the password manager autocomplete popup'']</p></blockquote></li><br />
<li><blockquote><p>[jaws] [https://bugzilla.mozilla.org/show_bug.cgi?id=1520949 ''Logins imported from Chrome (on Windows) have the wrong character encoding'']</p></blockquote></li><br />
<li><blockquote><p>[MattN] [https://bugzilla.mozilla.org/show_bug.cgi?id=1439023 ''Selection of previously entered form history (and username) data broken in Nightly when Form Autofill is enabled'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Performance ===<br />
<br />
<ul><br />
<li>[https://mikeconley.ca/blog/2019/02/06/firefox-front-end-performance-update-12/ ''Firefox Front-end Performance Update #12 posted'']</li><br />
<li><p>dthayer’s research into [https://bugzilla.mozilla.org/show_bug.cgi?id=1518203 ''a warm-up service''] seems to indicate that we can perhaps shave off 1s of net time required to start Firefox from cold OS boot.</p><br />
<ul><br />
<li><blockquote><p>esmyth is running a Heartbeat survey to get some user sentiment on the various trade-offs here</p></blockquote></li></ul><br />
</li><br />
<li>dthayer is [https://bugzilla.mozilla.org/show_bug.cgi?id=1364235 ''going to collect Telemetry on startup cache hits and misses'']</li><br />
<li>felipe’s [https://bugzilla.mozilla.org/show_bug.cgi?id=1355588 ''new tab animations''] have been baking in Nightly behind the browser.tabs.newanimations pref, and plawless has been working with UX to free up epang to help figure out the remaining animations</li><br />
<li><p>felipe has also [https://bugzilla.mozilla.org/show_bug.cgi?id=827976 ''resurrected an older patch to make creating the ever-mysterious Hidden Window lazy to load''] on Windows and Linux</p><br />
<ul><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1527219 ''This has resulted in some nice clean-ups''], since felipe has discovered quite a bit of unused code</p></blockquote></li></ul><br />
</li><br />
<li><p>Gijs [https://bugzilla.mozilla.org/show_bug.cgi?id=1526517 ''landed a patch to make it easier to experiment with the low-end hardware browser adjustment on beta'']. He’s going to try shifting the technique to lower the frame rate by having the RefreshDriver skip every other vsync, rather than lowering the vsync rate.</p><br />
<ul><br />
<li><blockquote><p>We believe this will allow scrolling and video to still play at 60fps, but that painting of web and chrome content will happen less frequently per second</p></blockquote></li></ul><br />
</li><br />
<li>Gijs also [https://bugzilla.mozilla.org/show_bug.cgi?id=1445739 ''made it so that we don’t invalidate the start-up cache''] when installing or uninstalling a WebExtension</li><br />
<li>mconley [https://mzl.la/2Bwq3Zs ''landed a probe''] that measures the time from process start to painting the top sites in the initial tab’s about:home</li><br />
<li><p>mconley enabled the [https://bugzilla.mozilla.org/show_bug.cgi?id=1476981 ''process priority manager by default on Windows on Nightly''].</p><br />
<ul><br />
<li><blockquote><p>Got our first [https://bugzilla.mozilla.org/show_bug.cgi?id=1524193 ''fallout''] report, and just today landed some patches to increase the priority of background tabs playing audio</p></blockquote></li></ul><br />
</li><br />
<li><p>Using some handy scripts from Florian, mconley was able to do some frame recordings on the 2018 reference hardware to measure start-up performance</p><br />
<ul><br />
<li><blockquote><p>Firefox Nightly is running in the 4 on the left, Google Chrome is running in the 4 on the right</p></blockquote></li><br />
<li><blockquote><p>[[File:Pictures/100000A000000280000000B419115B45A7C19BF2.gif|526x147px]]</p></blockquote></li><br />
<li><blockquote><p>Observations</p></blockquote><br />
<ul><br />
<li>Firefox Nightly is consistently faster to get to first paint and to painting the browser toolbars</li><br />
<li>The primary deficit appears to be presenting about:home.</li><br />
<li>We probably should delay the Update</li></ul><br />
</li><br />
<li><blockquote><p>The team will be focusing on trying to improve our time to painting about:home.</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Policy Engine ===<br />
<br />
<ul><br />
<li><p>New policies for</p><br />
<ul><br />
<li><blockquote><p>CaptivePortal (turning it off) [https://bugzilla.mozilla.org/show_bug.cgi?id=1523810 ''1523810'']</p></blockquote></li><br />
<li><blockquote><p>NetworkPrediction (prefetch) [https://bugzilla.mozilla.org/show_bug.cgi?id=1524089 ''1524089'']</p></blockquote></li><br />
<li><blockquote><p>ExtensionUpdate [https://bugzilla.mozilla.org/show_bug.cgi?id=1526439 ''1526439'']</p></blockquote></li></ul><br />
</li><br />
<li>Making progress on extension whitelist, fixing blocking add-on bugs along the way</li><br />
<li>Started investigating the [https://github.com/LegacyBrowserSupport/legacy-browser-support ''Chrome Legacy Browser Extension'']</li></ul><br />
<br />
=== Privacy/Security ===<br />
<br />
* <br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
==== Bookmarks &amp; History ====<br />
<br />
* Marco fixed an issue with [https://bugzilla.mozilla.org/show_bug.cgi?id=1519058 ''Favicons where we would lose them in some circumstances if you clear history on shutdown''].<br />
* Mark fixed an issue where [https://bugzilla.mozilla.org/show_bug.cgi?id=1523665 ''importing bookmarks could unnecessarily fail earlier if invalid entries resulted in an empty section''].<br />
<br />
==== Search ====<br />
<br />
* Mike de Boer [https://bugzilla.mozilla.org/show_bug.cgi?id=1524593 ''landed a patch to make the Search Service load asynchronously'']. Preparation for loading WebExtension based engines <br />
<br />
==== Quantum Bar ====<br />
<br />
* Lots of bug fixes and code cleanups, list too long.<br />
* Search one-off buttons have been added to the display, but currently can't be [https://bugzilla.mozilla.org/show_bug.cgi?id=1527260 ''selected'']/[https://bugzilla.mozilla.org/show_bug.cgi?id=1525318 ''clicked on''].<br />
* Now ported the [https://bugzilla.mozilla.org/show_bug.cgi?id=1514162 ''majority of tests in the urlbar directory''] to work with QuantumBar. Likely to start on those outside the urlbar directory soon.<br />
* Working on getting the list of bugs remaining for [https://bugzilla.mozilla.org/showdependencytree.cgi?id=1520799&hide_resolved=1 ''nightly down''], will likely be looking at starting wider testing soon.<br />
<br />
=== User Experience ===<br />
<br />
<ul><br />
<li><p>After the implementation of CFR for Extensions, the goal is to extend recommendations to include Firefox features, like Pinned tabs. For example, if you open multiple tabs and repeatedly use these tabs, we may offer you a feature called “Pin Tabs” and explain how it works. Firefox curates the suggested features and notifies you in an appropriate context.</p><br />
<ul><br />
<li><blockquote><p>After several rounds of user testing, we've finalized the design and will run CFR Pinned Tab in a shield study. Engineering work is scheduled for 67.</p></blockquote></li><br />
<li><blockquote><p>CFR Pinned Tabs Bug - [https://bugzilla.mozilla.org/show_bug.cgi?id=1501815 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1501815'']</p></blockquote></li><br />
<li><blockquote><p>CFR - Pinned Tabs Spec - [https://mozilla.invisionapp.com/share/R3OVTEX9X76#/screens ''https://mozilla.invisionapp.com/share/R3OVTEX9X76#/screens'']</p></blockquote></li></ul><br />
</li><br />
<li><p>[https://twitter.com/bwinton/status/1088078920820367360 ''Touchbar support has been enabled in Nightly'']!</p><br />
<ul><br />
<li><blockquote><p>[[File:Pictures/10000201000004380000043865EB3797D09797B4.png|333x334px]]</p></blockquote></li></ul><br />
</li></ul><br />
<br />
== This week I learned ==<br />
<br />
* [felipe] There’s a non-standard [https://developer.mozilla.org/en-US/docs/Web/Events/transitioncancel ''transitioncancel event''], useful when a transition is interrupted midway and you still need to do work. It can be interrupted by some CSS changes such as the element receiving display: none, the transition-property changing, etc.<br />
* [felipe] elem.getAnimations() also returns ongoing transitions, and there’s a `finished` promise on it (which resolves or rejects if the transition was canceled)<br />
* [6a68] Github contributors in contributors list? (Sure!)</div>Felipchttps://wiki.mozilla.org/index.php?title=Project_Fission/FrontEnd&diff=1206986Project Fission/FrontEnd2019-01-31T19:55:52Z<p>Felipc: Initial content for the page, more to come</p>
<hr />
<div><br />
<br />
= Fission =<br />
<br />
<br />
<br />
== DOs and DON'Ts ==<br />
<br />
Don't:<br />
* traverse the DOM tree expecting to reach subframe's contents<br />
** For example:<br />
*** Tree Walker APIs<br />
*** iframe.contentWindow/contentDocument<br />
*** window.parent / top / opener<br />
* add listeners in the top-level expecting to receive iframes' events<br />
** For example, calling addEventListener in a framescript scope<br />
* send messages to the content process about something related to anything that happened in an iframe<br />
* rely on storage in the child process for information that should be available across navigations<br />
* write any new code in a frame script or process script<br />
<br />
Do:<br />
* coordinate the walking of the DOM of each content window from the parent process, and aggregate the results there<br />
* add listeners through the Actors infrastructure, and figure out if your actor needs to handle only top-level events or events from all subframes<br />
* declare message listeners through the Actors infrastructure, and send the message directly to the right actor associated with the content you care about<br />
* store long-lived data in the parent, because a child process might be killed if navigation happens to a new domain (which will spawn a new process)<br />
* write all new code using the Actors infrastructure<br />
<br />
== JS IPDL Actors ==<br />
<br />
=== What are actors? ===<br />
<br />
In the Fission world, Actors will be the replacement for framescripts. Framescripts were how we structured code to be aware of the parent (UI) and child (content) separation, including establishing the communication channel between the two (via the message manager).<br />
<br />
However, the framescripts had no way to establish further process separation downwards (that is, for out-of-process iframes). Actors will be the replacement.<br />
<br />
=== How are they structured? ===<br />
<br />
Currently, in the post-e10s Firefox codebase, we have code living in the parent process (UI) that is in plain JS (.js files) or in JS modules (.jsm). In the child process (hosting the content), we use framescripts (.js) and also JS modules. The framescripts are instantiated once per top-level frame (or, in simpler terms, once per tab). This code has access to all of the DOM from the web content, including iframes on it.<br />
<br />
The two processes communicate between them through the message manager (mm) using the sendAsyncMessage API, and any code in the parent can communicate with any code in the child (and vice versa), by just listening to the messsages of interest.<br />
<br />
[[File:Fission-frontend-framescripts.png|400x400px|frameless|Current front-end framescript structure]]<br />
<br />
For Fission, all the framescripts will be gone, and the actors replacing them will be structured in pairs. For each frame from the web content (i.e., top-level or subframe), a pair of actors will be instantiated: one in the parent and one in the child process hosting that frame, and a direct channel of communication between the two will be established.<br />
<br />
[[File:Fission-actors-diagram.png|300x300px|frameless|Diagram of actors structure]]<br />
<br />
The objects will be instances of classes exported by a module. For example, for an actor Foo, a file FooParent.jsm will export a constructor for the parent instances, and a file FooChild.jsm will export a constructor for the child instances.<br />
<br />
=== Communicating between actors ===<br />
<br />
The communication between the actors' pairs will go through the IPC channel, and all the messages need to be declared in an IPDL file. This means that the actors are, in reality, a JS-implemented IPDL protocol, and that will provide a more strict type checking and validation, differently from the message manager which allowed free-form JS objects to be passed with the messages.<br />
<br />
Another difference is that the actors will only communicate between each other. To communicate, the parent and child classes will need to implement send/recv functions, just like C++-implemented IPDL actors.<br />
<br />
== Browsing Contexts ==</div>Felipchttps://wiki.mozilla.org/index.php?title=File:Fission-actors-diagram.png&diff=1206985File:Fission-actors-diagram.png2019-01-31T19:42:17Z<p>Felipc: </p>
<hr />
<div>Diagram of the front-end code using actors</div>Felipchttps://wiki.mozilla.org/index.php?title=File:Fission-frontend-framescripts.png&diff=1206984File:Fission-frontend-framescripts.png2019-01-31T19:28:53Z<p>Felipc: </p>
<hr />
<div>Current Framescript structure</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting&diff=1202095Firefox/Meeting2018-10-08T19:46:51Z<p>Felipc: Add link to Sep 25, 2018 meeting</p>
<hr />
<div>We meet biweekly to discuss development status of [[Firefox]] desktop. Please use [irc://irc.mozilla.org/%23fx-team #fx-team] or [https://mail.mozilla.org/listinfo/firefox-dev firefox-dev@mozilla.org] for communication.<br />
<br />
== Meeting Details == <br />
<br />
* Every second Tuesday @ 8:00AM Pacific <br />
{{conf|91337}}<br />
* "Firefox" Vidyo room. Guest link: https://v.mozilla.com/flex.html?roomdirect.html&key=y9ugHRmYNPZHbK8sP79zVJaIos<br />
*[irc://irc.mozilla.org/%23fx-team #fx-team] for backchannel<br />
<br />
== Meeting Notes ==<br />
[[Firefox/Meeting/Template|Template]]<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2018<br />
|-<br />
|<br />
* [https://docs.google.com/document/d/1hM9bmIdIe0PeQEB4SbU7NG3m7MmjgLJjUB7Fzr7fGEU/edit Oct 9, 2018]<br />
* [[/25-Sep-2018|Sep 25, 2018]]<br />
* [[/11-Sep-2018|Sep 11, 2018]]<br />
* [[/28-Aug-2018|Aug 28, 2018]]<br />
* [[/14-Aug-2018|Aug 14, 2018]]<br />
* Jul 31, 2018 - Missing. :(<br />
* [[/17-Jul-2018|Jul 17, 2018]]<br />
* [[/03-Jul-2018|Jul 3, 2018]]<br />
* Jun 19, 2018 - Cancelled due to all-hands the prior week<br />
* [[/05-Jun-2018|Jun 5, 2018]]<br />
* [[/22-May-2018|May 22, 2018]]<br />
* [[/08-May-2018|May 8, 2018]]<br />
* [[/24-Apr-2018|Apr 24, 2018]]<br />
* [[/10-Apr-2018|Apr 10, 2018]]<br />
* [[/27-Mar-2018|Mar 27, 2018]]<br />
* [[/13-Mar-2018|Mar 13, 2018]]<br />
* [[/27-Feb-2018|Feb 27, 2018]]<br />
* [[/13-Feb-2018|Feb 13, 2018]]<br />
* [[/30-Jan-2018|Jan 30, 2018]]<br />
* [[/16-Jan-2018|Jan 16, 2018]]<br />
* Jan 2, 2018 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2017<br />
|-<br />
|<br />
* Dec 19, 2017 - Cancelled due to Austin All-Hands the prior week<br />
* [[/05-Dec-2017|Dec 05, 2017]]<br />
* [[/21-Nov-2017|Nov 21, 2017]]<br />
* [[/07-Nov-2017|Nov 07, 2017]]<br />
* [[/24-Oct-2017|Oct 24, 2017]]<br />
* [[/10-Oct-2017|Oct 10, 2017]]<br />
* [[/26-Sep-2017|Sep 26, 2017]]<br />
* [[/12-Sep-2017|Sep 12, 2017]]<br />
* [[/29-Aug-2017|Aug 29, 2017]]<br />
* [[/15-Aug-2017|Aug 15, 2017]]<br />
* [[/01-Aug-2017|Aug 01, 2017]]<br />
* [[/18-Jul-2017|Jul 18, 2017]]<br />
* [[/20-Jun-2017|Jun 20, 2017]]<br />
* [[/06-Jun-2017|Jun 06, 2017]]<br />
* [[/23-May-2017|May 23, 2017]]<br />
* [[/09-May-2017|May 09, 2017]]<br />
* [[/25-Apr-2017|Apr 25, 2017]]<br />
* [[/11-Apr-2017|Apr 11, 2017]]<br />
* [[/28-Mar-2017|Mar 28, 2017]]<br />
* [[/14-Mar-2017|Mar 14, 2017]]<br />
* [[/28-Feb-2017|Feb 28, 2017]]<br />
* [[/14-Feb-2017|Feb 14, 2017]]<br />
* [[/31-Jan-2017|Jan 31, 2017]]<br />
* [[/17-Jan-2017|Jan 17, 2017]]<br />
* Jan 3, 2017 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2016<br />
|-<br />
|<br />
* [[/20-Dec-2016|Dec 20, 2016]] <br />
* Dec 6, 2016 - Cancelled due to meeting in Hawaii<br />
* [[/22-Nov-2016|Nov 22, 2016]]<br />
* [[/08-Nov-2016|Nov 08, 2016]]<br />
* [[/25-Oct-2016|Oct 25, 2016]]<br />
* [[/11-Oct-2016|Oct 11, 2016]]<br />
* [[/27-Sep-2016|Sep 27, 2016]]<br />
* [[/13-Sep-2016|Sep 13, 2016]]<br />
* [[/30-Aug-2016|Aug 30, 2016]]<br />
* [[/16-Aug-2016|Aug 16, 2016]]<br />
* [[/02-Aug-2016|Aug 02, 2016]]<br />
* [[/19-Jul-2016|Jul 19, 2016]]<br />
* [[/05-Jul-2016|Jul 05, 2016]]<br />
* Jun 21, 2016 - Cancelled due to meeting in London the week before<br />
* [[/07-Jun-2016|Jun 07, 2016]]<br />
* [[/24-May-2016|May 24, 2016]]<br />
* [[/10-May-2016|May 10, 2016]]<br />
* [[/26-Apr-2016|Apr 26, 2016]]<br />
* [[/12-Apr-2016|Apr 12, 2016]]<br />
* [[/29-Mar-2016|Mar 29, 2016]]<br />
* [[/15-Mar-2016|Mar 15, 2016]]<br />
* [[/01-Mar-2016|Mar 01, 2016]]<br />
* [[/16-Feb-2016|Feb 16, 2016]]<br />
* [[/02-Feb-2016|Feb 02, 2016]]<br />
* [[/19-Jan-2016|Jan 19, 2016]]<br />
* Jan 05, 2016 - Cancelled due to holiday recovery<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2015<br />
|-<br />
|<br />
* Dec 22, 2015 - Cancelled due to holidays<br />
* Dec 8, 2015 - Cancelled due to in-person meetings<br />
* [[/24-Nov-2015|Nov 24, 2015]]<br />
* [[/10-Nov-2015|Nov 10, 2015]]<br />
* [[/27-Oct-2015|Oct 27, 2015]]<br />
* [[/13-Oct-2015|Oct 13, 2015]]<br />
* [[/29-Sep-2015|Sep 29, 2015]]<br />
* [[/15-Sep-2015|Sep 15, 2015]]<br />
* [[/01-Sep-2015|Sep 01, 2015]]<br />
* [[/18-Aug-2015|Aug 18, 2015]]<br />
* [[/04-Aug-2015|Aug 04, 2015]]<br />
* [[/21-Jul-2015|Jul 21, 2015]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2014 <br />
|-<br />
|<br />
* [[/4-Feb-2014|Feb 04, 2014]]<br />
* [[/28-Jan-2014|Jan 28, 2014]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2013 <br />
|-<br />
|<br />
* [[/17-Dec-2013|December 17, 2013]]<br />
* [[/10-Dec-2013|December 10, 2013]]<br />
* [[/3-Dec-2013|December 3, 2013]]<br />
* [[/19-Nov-2013|November 19, 2013]]<br />
* [[/12-Nov-2013|November 12, 2013]]<br />
* [[/5-Nov-2013|November 5, 2013]]<br />
* [[/29-Oct-2013|October 29, 2013]]<br />
* [[/22-Oct-2013|October 22, 2013]]<br />
* [[/15-Oct-2013|October 15, 2013]]<br />
* [[/1-Oct-2013|October 1, 2013]]<br />
* [[/24-Sep-2013|September 24, 2013]]<br />
* [[/17-Sep-2013|September 17, 2013]]<br />
* [[/10-Sep-2013|September 10, 2013]]<br />
* [[/03-Sep-2013|September 3, 2013]]<br />
* [[/27-Aug-2013|August 27, 2013]]<br />
* [[/20-Aug-2013|August 20, 2013]]<br />
* [[/13-Aug-2013|August 13, 2013]]<br />
* [[/6-Aug-2013|August 6, 2013]]<br />
* [[/30-Jul-2013|July 30, 2013]]<br />
* [[/23-Jul-2013|July 23, 2013]]<br />
* [[/16-Jul-2013|July 16, 2013]]<br />
* [[/9-Jul-2013|July 9, 2013]]<br />
* [[/2-Jul-2013|July 2, 2013]]<br />
* [[/18-Jun-2013|June 18, 2013]]<br />
* [[/11-Jun-2013|June 11, 2013]]<br />
* [[/4-Jun-2013|June 4, 2013]]<br />
* [[/28-May-2013|May 28, 2013]]<br />
* [[/21-May-2013|May 21, 2013]]<br />
* [[/14-May-2013|May 14, 2013]]<br />
* [[/7-May-2013|May 7, 2013]]<br />
* [[/30-Apr-2013|Apr 30, 2013]]<br />
* [[/23-Apr-2013|Apr 23, 2013]]<br />
* [[/16-Apr-2013|Apr 16, 2013]]<br />
* [[/9-Apr-2013|Apr 9, 2013]]<br />
* [[/2-Apr-2013|Apr 2, 2013]]<br />
* [[/26-Mar-2013|Mar 26, 2013]]<br />
* [[/19-Mar-2013|Mar 19, 2013]]<br />
* [[/12-Mar-2013|Mar 12, 2013]]<br />
* [[/5-Mar-2013|Mar 5, 2013]]<br />
* [[/26-Feb-2013|Feb 26, 2013]]<br />
* [[/19-Feb-2013|Feb 19, 2013]]<br />
* [[/12-Feb-2013|Feb 12, 2013]]<br />
* [[/5-Feb-2013|Feb 5, 2013]]<br />
* [[/22-Jan-2013|Jan 22, 2013]]<br />
* [[/15-Jan-2013|Jan 15, 2013]]<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
|}<br />
<br />
{| class="wikitable collapsible collapsed" style="width: 100%"<br />
! 2012 <br />
|-<br />
|<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
* [[/18-Dec-2012|Dec 18, 2012]]<br />
* [[/11-Dec-2012|Dec 11, 2012]]<br />
* [[/4-Dec-2012|Dec 4, 2012]]<br />
* [[/27-Nov-2012|Nov 27, 2012]]<br />
* [[/20-Nov-2012|Nov 20, 2012]]<br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/25-Sep-2018&diff=1202094Firefox/Meeting/25-Sep-20182018-10-08T19:45:48Z<p>Felipc: Sep 25, 2018 meeting</p>
<hr />
<div>Today’s meeting leader is: '''felipe'''<br />
<br />
== General Topics / Roundtable ==<br />
<br />
<br />
* [standard8] General reminder that xpcshell-tests can use the Developer Tools for debugging. A new section has been added to the [https://developer.mozilla.org/docs/Mozilla/QA/Writing_xpcshell-based_unit_tests#Debugging_xpcshell-tests ''xpcshell-test page on devmo''] on how to do this.<br />
* [mconley, unvoiced] I’m [https://bugzilla.mozilla.org/show_bug.cgi?id=1492482 ''getting rid of contentWindowAsCPOW, contentDocumentAsCPOW,''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1492950 ''and the APIs that rely on them'']<br />
<br />
** Please don’t use these anymore.<br />
<br />
* [felipe] LegNeato will be working on Firefox desktop development efficiency and is looking for feedback:<br />
<br />
** [https://christian.legnitto.com/blog/2018/09/24/working-on-firefox-desktop-developer-efficiency/ ''https://christian.legnitto.com/blog/2018/09/24/working-on-firefox-desktop-developer-efficiency/''] <br />
<br />
* [johannh] The update to OSX Mojave breaks Firefox compilation unless you install header files manually. Then it compiles successfully but you’ll have a black window unless you downgrade to the 10.13 SDK.<br />
<br />
** ac_add_options --with-macos-sdk=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk<br />
** [https://groups.google.com/forum/#!topic/mozilla.dev.platform/xSTtqTrY8Z8 ''https://groups.google.com/forum/#!topic/mozilla.dev.platform/xSTtqTrY8Z8''] <br />
<br />
<br />
== Friends of the Firefox team ==<br />
<br />
=== Introductions ===<br />
<br />
* None this week.<br />
<br />
=== [https://mzl.la/2xE26gD ''Resolved bugs (excluding employees)''] ===<br />
<br />
<br />
* Fixed more than one bug<br />
<br />
** Adam Hillier :ahillier<br />
** Arshad Kazmi [:arshadkazmi42]<br />
** Jonas Jenwald [:Snuffleupagus]<br />
** Preeti[:preeti]<br />
** Shivam Singhal [:championshuttler]<br />
** Tim Nguyen :ntim (please use needinfo?)<br />
<br />
* New contributors (🌟 = first patch)<br />
<br />
** 🌟 Alec Clarke [https://bugzilla.mozilla.org/show_bug.cgi?id=1486630 ''removed an unneeded _manifestURI field and MozApplicationManifest message''] from our browser bindings<br />
** 🌟 Artyom Pranovich [https://bugzilla.mozilla.org/show_bug.cgi?id=1313298 ''made it so that if a user attempts to install an add-on that’s already installed''] but disabled, that the add-on will be enabled<br />
** 🌟 dev [https://bugzilla.mozilla.org/show_bug.cgi?id=1491768 ''increased the input history limit''] in the DevTools console, and also got rid of [https://bugzilla.mozilla.org/show_bug.cgi?id=1492510 ''an obsolete reference from an .eslintrc'']<br />
** 🌟 Jack Smith ported about:url-classifier to Fluent<br />
** 🌟 Kajal Kumari Sah (:kajalsah) [https://bugzilla.mozilla.org/show_bug.cgi?id=1481795 ''got rid of an unneeded Places maintainance task'']<br />
** 🌟 Korina [https://bugzilla.mozilla.org/show_bug.cgi?id=1457781 ''swapped out an old PNG image for a shiny SVG image'']<br />
** 🌟 Luke Schwalfenberg [:lschwalf] [https://bugzilla.mozilla.org/show_bug.cgi?id=1488241 ''fixed a broken about:policies link from about:support'']<br />
** 🌟 Collin Wing [https://bugzilla.mozilla.org/show_bug.cgi?id=1486935 ''ported about:profiles to Fluent'']<br />
** 🌟 Siddharth Maurya [:savvysiddharth] [https://bugzilla.mozilla.org/show_bug.cgi?id=1442845 ''made about:privatebrowsing more accurate by adding “copied text” to the list''] of things about:privatebrowsing reports that Firefox will save in Private Browsing mode<br />
<br />
<br />
== Project Updates ==<br />
<br />
=== Activity Stream [read only] ===<br />
<br />
* Running experiment with new onboarding experience (only one overlay screen) in release<br />
* Contextual Feature recommender (doorhanger that recommends addons) is now in Nightly and will soon (next week) run as an experiment in Beta<br />
* Bug 1487772 - show logo and wordmark when only search enabled<br />
* [[File:Pictures/100002010000087A00000660A69826C178F2F6BC.png|307x231px]]<br />
<br />
=== Add-ons / Web Extensions ===<br />
<br />
* Many pieces for the new [https://wiki.mozilla.org/WebExtensions/UserScripts ''userScripts''] API landed. See the [https://bugzilla.mozilla.org/show_bug.cgi?id=1437098 ''tracking bug''] to follow them all.<br />
* The [https://bugzilla.mozilla.org/show_bug.cgi?id=1489261 ''delayed background script startup''] optimization is now enabled on Fennec.<br />
* Location bar focus is now [https://bugzilla.mozilla.org/show_bug.cgi?id=1485307 ''handled properly''] when extensions open new tabs.<br />
* A glitch with [https://bugzilla.mozilla.org/show_bug.cgi?id=1487525 ''uninstalling themes''] was fixed.<br />
* Links in [https://bugzilla.mozilla.org/show_bug.cgi?id=1487525 ''extension sidebars''] now work properly.<br />
* We no longer get a yellow-screen-of-death if a language pack is [https://bugzilla.mozilla.org/show_bug.cgi?id=1488934 ''updated from an unpacked version''] or [https://bugzilla.mozilla.org/show_bug.cgi?id=1492459 ''removed from disk''].<br />
* And of course, [https://bugzilla.mozilla.org/show_bug.cgi?id=1449052 ''bootstrap.js removal''] continues...<br />
<br />
=== Application Services (Sync / Firefox Accounts / Push) ===<br />
<br />
<br />
* [https://mozilla.github.io/application-services/blog/2018/09/10/account-recovery-in-firefox-accounts.html ''Account recovery keys''] have shipped for Firefox Accounts! 🔑<br />
* The team is working on a bookmarks 📚 and history 🕒 [https://github.com/mozilla-mobile/android-components ''Android components''], based on the [https://github.com/mozilla/application-services/blob/d052460cffbda7ebb9bfc54aca83b54f5431dd9c/places/src/db/schema.rs ''Places schema''].<br />
<br />
** We’re currently building a [https://github.com/mozilla/application-services/issues/226 ''command-line awesomebar demo''], using Desktop’s autocomplete algorithm.<br />
<br />
* We have a [https://github.com/mozilla/application-services/tree/339fdc5bc6313aa2daaca1c311b98a7058d90146/logins-sql ''syncable logins store''], based on the iOS implementation, and an [https://github.com/mozilla-mobile/android-components/tree/36bc4b15899927a1f29eff03266e92b9618ebb1a/components/service/sync-logins ''Android component''] that’s now integrated into Lockbox 🔒.<br />
* We’re writing a [https://github.com/mozilla-services/syncstorage-rs ''Sync storage server''] in Rust! 🖥<br />
* There’s a prototype of [https://bugzilla.mozilla.org/show_bug.cgi?id=1482608 ''porting the synced bookmark merger on Desktop to Rust''] 🦀.<br />
<br />
** The patch has a minimal mozStorage Rust wrapper, and an nsISyncedBookmarksMirror component implemented in Rust. The merger can run off the main thread, unlike JS.<br />
<br />
* Myk has also been working on an [https://bugzilla.mozilla.org/show_bug.cgi?id=1490496 ''XPCOM component for rkv''] 📦.<br />
<br />
=== [https://mozilla.github.io/firefox-browser-architecture/ ''Browser Architecture''] ===<br />
<br />
* [https://groups.google.com/d/msg/firefox-dev/s4YOeT7UJ8Y/ax_u_VXGCQAJ ''Browser Architecture Newsletter #7 (S02E02)'']<br />
* [https://groups.google.com/d/msg/firefox-dev/VPXjF9ahpgo/zqIErcpICwAJ ''XUL/XBL Replacement Newsletter #8'']<br />
<br />
=== Developer Tools ===<br />
<br />
<br />
* Arai’s work to massively cut down devtools opening delay on script-heavy pages by fixing a [https://bugzilla.mozilla.org/show_bug.cgi?id=956376 ''5y old bug''] to add ''Debugger.findSources''<br />
<br />
** Removes a 1s hang when opening Console on GMail<br />
<br />
<br />
=== Fission ===<br />
<br />
<br />
* Fission is our codename for the process-per-site isolation project<br />
* Front-end: converting frame scripts to actors. Check out:<br />
<br />
** [https://searchfox.org/mozilla-central/source/browser/actors ''https://searchfox.org/mozilla-central/source/browser/actors''] <br />
** [https://searchfox.org/mozilla-central/source/toolkit/actors ''https://searchfox.org/mozilla-central/source/toolkit/actors''] <br />
** Actors declared in [https://searchfox.org/mozilla-central/rev/881a3c5664ede5e08ee986d76433bc5c4b5680e6/browser/components/nsBrowserGlue.js#14 ''nsBrowserGlue.js''] and [https://searchfox.org/mozilla-central/rev/881a3c5664ede5e08ee986d76433bc5c4b5680e6/toolkit/modules/ActorManagerParent.jsm#102 ''ActorManagerParent.jsm'']<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1490810 ''Bug 1490810''] - Simulate Fission for browser actors by blocking them from receiving subframe events<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1493984 ''Bug 1493984''] - Simulate Fission behavior for browser actors' receiveMessage<br />
<br />
=== [https://projectfluent.org/ ''Fluent''] ===<br />
<br />
* No updates this week.<br />
<br />
=== [https://firefox-source-docs.mozilla.org/tools/lint/index.html ''Lint''] ===<br />
<br />
* ESLint is now [https://bugzilla.mozilla.org/show_bug.cgi?id=1489980 ''enabled for editor/'']<br />
* Picked up [https://bugzilla.mozilla.org/show_bug.cgi?id=1493654 ''performance improvement from eslint-plugin-html'']<br />
<br />
=== NodeJS ===<br />
<br />
<br />
* Removing --disable-nodejs still planned, but no longer a blocker for making node available to select moz.build files [https://bugzilla.mozilla.org/show_bug.cgi?id=1482433 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1482433'']<br />
* Up next: beta support for moz.build files, use for JSX transpilation by debugger team, eslint<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1485081 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1485081'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1461714 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1461714'']<br />
<br />
<br />
=== Performance ===<br />
<br />
<br />
* dthayer<br />
<br />
** Has sorted out an [https://bugzilla.mozilla.org/show_bug.cgi?id=1483533 ''Nvidia bug with client storage''] that was causing some really strange graphics artifacts on macOS. Patch is reviewed, hopefully landing soon.<br />
** Removed some [https://bugzilla.mozilla.org/show_bug.cgi?id=1388134 ''InitOSFileConstants’ main thread IO'']<br />
<br />
* This is a qf:p1 targeted for Firefox 64, so it’s great to see this coming along.<br />
* Unfortunately, it’s unlikely that all of InitOSFileConstants will come off of the main thread, but some is better than none! dthayer will be filing a follow-up bug for the rest.<br />
<br />
** Starting to look into [https://bugzilla.mozilla.org/show_bug.cgi?id=1441308 ''Document Splitting''] for WebRender<br />
<br />
* This should isolate the updating of the browser UI from the web content, which should be more efficient.<br />
<br />
<br />
* florian<br />
<br />
** [https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?changeset=2307c43683ba ''Recent about:performance improvements'']<br />
*** Instead of displaying ‘dispatches’ and ‘duration’, the values are combined into something (labelled “Energy Impact”) that users can better understand, with “High/Medium/Low/None” categories.<br />
*** Sort order is more stable, and subframes/workers have values.<br />
*** It’s possible to select a row. A double click will select the tab.<br />
*** Tarek Ziade is making good progress on [https://bugzilla.mozilla.org/show_bug.cgi?id=1482392 ''counting webextension activity in frame scripts''], and is experimenting on collecting memory information per tab.<br />
<br />
<br />
* Gijs<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1362774 ''Removing useless about:blank loads'']<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1488822 ''Fixed''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1491998 ''a''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1490819 ''bunch''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1490642 ''of''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1489700 ''tests''].<br />
* [https://treeherder.mozilla.org/#/jobs?repo=try&revision=0a5dcebc94e3b809282f73016328c8adc8ab4062 ''Recent trypush''] (and an [https://treeherder.mozilla.org/#/jobs?repo=try&revision=8cdcd0814fab4c042d35167e70b5cd89d63e038d ''earlier one''] with more tests/platforms) indicating remaining work will likely take at least another few weeks - probably 5-10 other test issues to sort out. They often don’t reproduce locally, and seem to largely be Linux-focused.<br />
<br />
** Working on a qf:p1 for [https://bugzilla.mozilla.org/show_bug.cgi?id=1462374#c14 ''removing a layout flush when focusing the URL bar'']<br />
<br />
* Slowly making inroads here, but needing to spend time untangling how focus causes flushes only some of the time<br />
<br />
<br />
* mconley<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1356920 ''Removing the layout flush for Tabs in Titlebar proceeding apace'']. Have it looking good on macOS, Linux, Windows 10, and Windows 7 “aero”. Need to fix up Windows 7 non-compositor, and then I can have this up for review.<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1474340 ''Removed the toolbar.toolbox XBL property''] as a dependency<br />
<br />
** Tested the background process priority manager on the 2018 Quantum Reference hardware, [https://bugzilla.mozilla.org/show_bug.cgi?id=1491906 d][https://bugzilla.mozilla.org/show_bug.cgi?id=1491906 iscovered a tab switcher bug], and got that fixed and uplifted.<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1493751 ''This caused mconley to file a bug''] about how the compositor seems to have more information than it’s letting on.<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1492482 ''Working on eliminating CPOWs from WebProgressChild messages'']. This will hopefully unblock the [https://bugzilla.mozilla.org/show_bug.cgi?id=1472212 ''separate content process for Activity Stream''] from landing, which will enable [https://bugzilla.mozilla.org/show_bug.cgi?id=1416066 ''the ScriptPreloading work''] that imjching worked on a few months back that improves about:newtab loading time.<br />
<br />
<br />
=== Policy Engine ===<br />
<br />
* Mac policy engine try builds available. Mac Admins already love it! (Thanks Stephen Pohl)<br />
* Working on security devices, certificates and generic prefs for 64.<br />
* MSI installer happening as well.<br />
<br />
=== Privacy/Security ===<br />
<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1483104 ''Rolling out Firefox Monitor''] [moco-only]<br />
<br />
** Full rollout of the system add-on has been delayed for now, due to crash issues and other concerns<br />
** Publishing the website right now<br />
** [https://blog.mozilla.org/blog/2018/09/25/introducing-firefox-monitor-helping-people-take-control-after-a-data-breach/ ''https://blog.mozilla.org/blog/2018/09/25/introducing-firefox-monitor-helping-people-take-control-after-a-data-breach/'']<br />
** [https://medium.com/@mgrimes/the-road-to-firefox-monitor-7c342c54bf27 ''https://medium.com/@mgrimes/the-road-to-firefox-monitor-7c342c54bf27''] <br />
<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
Address Bar &amp; Search<br />
<br />
* Nicolas made the Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=462674 ''complete about: addresses''] (autoFill [https://bugzilla.mozilla.org/show_bug.cgi?id=1493951 ''is being fixed''])<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1485987 ''bug where copying a search shortcut from the Address Bar copied the wrong string'']<br />
* We’re actively [https://bugzilla.mozilla.org/show_bug.cgi?id=1493636 ''investigating cases where autofill doesn’t work with bookmarks, when history is disabled or cleared on shutdown'']<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1485508 ''bug when mozParams can’t be the first entries in a search engine definition'']<br />
<br />
Places<br />
<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1488296 ''bug causing a favicon to be assigned to the wrong page'']<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1490848 ''bug where the downloads API may call into the history API causing a waterfall of console errors'']<br />
<br />
=== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ===<br />
<br />
<br />
* Conversation getting started around reusable React components that fit the Photon UI specs for websites, ping #testpilot if interested<br />
* Screenshots: bootstrap removal should land this week 🤞, see metabug ([https://bugzilla.mozilla.org/show_bug.cgi?id=1422437 ''1422437''])<br />
<br />
** Bootstrap removal introduced Talos regressions ([https://bugzilla.mozilla.org/show_bug.cgi?id=1491997 ''1491997'']) that seem to be caused by unexpected storage init at startup ([https://bugzilla.mozilla.org/show_bug.cgi?id=1492963 ''1492963''])<br />
** Looks like we’ll finally be able to enable Screenshots for all tests, based on an encouraging [https://treeherder.mozilla.org/#/jobs?repo=try&revision=2b0bc4d5120c5f64129740a6d7df64a71ef4fb2b ''Try run''] from yesterday<br />
** Huge thanks to aswan &amp; kmag for jumping on addons bugs surfaced by the migration <br />
<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Features/Web_Payments ''Web Payments''] ===<br />
<br />
[[File:Pictures/100002010000025F000001F54CE86C9A483B8B5D.png|291x244px]][[File:Pictures/1000020100000257000001F36AB8BE927E4E76D3.png|300x247px]]<br />
<br />
<br />
* Completed highlights<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1481972 Support all countries 🌎 in form autofill preferences for use by Payment Request]'' ''<br />
** More [https://bugzilla.mozilla.org/show_bug.cgi?id=1491791 ''form''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1490077 ''validation''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1429181 ''improvements''] ✅<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1463545 ''Nicer card/address pickers'']<br />
** 💳 Improved[https://bugzilla.mozilla.org/show_bug.cgi?id=1480717 c][https://bugzilla.mozilla.org/show_bug.cgi?id=1480717 redit card form layout] and added [https://bugzilla.mozilla.org/show_bug.cgi?id=1429181 ''placeholder credit card network logos'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1491065 ''String''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1470183 ''changes''] to support user testing<br />
** DOM<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1435161 Implement PaymentResponse.retry() method]'' ''<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1474499 Add support for &quot;onmerchantvalidation&quot; and MerchantValidationEvent]'' ''<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1472026 Implement PaymentResponse.prototype.onpayerdetailchange]'' ''<br />
<br />
<br />
* In Progress<br />
<br />
** Only 8 remaining bugs for [https://wiki.mozilla.org/Firefox/Features/Web_Payments#Milestones ''Milestone 3''] after which we’ll enable on Nightly by default (not riding the trains yet). 🎉<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1470168 ''Bug 1470168 - Add tooltip beside 'save to Firefox' checkbox'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1477102 ''Bug 1477102 - Show card network logos on the card add/edit screens'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1490805 ''Bug 1490805 - Add the CVV security code field to the add card form and make it required in all places'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1432939 ''Bug 1432939 - Link to Firefox Options/Preferences from the PaymentRequest dialog'']<br />
<br />
<br />
== This week I learned ==<br />
<br />
* We now have support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1474369 ''Array&lt;&gt; in XPIDL'']. That means that all of [https://searchfox.org/mozilla-central/search?q=%5Bretval%2C+array%2C&case=false&regexp=false&path= ''those awkward entries''] can be converted to more maintainable API signatures.</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies&diff=1190298Firefox/EnterprisePolicies2018-03-13T21:40:28Z<p>Felipc: Newer documentation</p>
<hr />
<div>This page documents the ongoing work to plan and implement a policy engine inside Firefox to be used by system administrators to configure Firefox in enterprise deployments.<br />
<br />
'''Note''': This is not a documentation of the feature, and anything here is subject to change. Final documentation will exist on MDN once the feature nears its completion.<br />
<br />
== Overview ==<br />
<br />
The Firefox ESR (extended support release) is based on an official release of Firefox desktop for use by organizations including schools, universities, businesses, and others who need extended support for mass deployments. Since Firefox 10, ESR has grown in popularity and many large organizations rely on it to let their employees browse the Internet securely. <br />
We want to make customization of Firefox deployments simpler for system administrators and we want our next ESR version, Firefox 60, to include a policy engine that increases customization possibilities and integration into existing management systems. The policy engine is obviously not limited to the ESR channel but we expect it will mostly be used there.<br />
<br />
=== Objective ===<br />
<br />
Our key objective is to meet the demand for enterprise customization post-57 in time for the next ESR.<br />
We want to build a solution that will work with any tool that wants to set policies, not just Windows Group Policy. Given that we've never had any solution before, we want to make sure that the existing tools (Autoconfig, CCK2, Frontmotion) can work with whatever interface that we build.<br />
<br />
The plan is to create a browser-wide policy manager that maintains the state of all of the policies. <br />
Initially, we will be focused on minimal set of policies that meet the current customization capabilities but we plan to grow them through enterprise users feedback and product features evolution.<br />
<br />
=== Timing ===<br />
<br />
ESR 60<br />
<br />
== Policy Engine ==<br />
<br />
The Policy Engine will be a component in Firefox that reads some admin-specified configuration during Firefox's startup and properly configures features to respect those configurations.<br />
<br />
Initially, the engine will use a platform-agnostic way to read these configurations, which will be a .json file to be added inside the installation folder of Firefox. In this file, the admin will be able to list the desired policies to activate, as well as parameters related to each policy.<br />
<br />
Afterwards, we'll be looking at supporting OS-level administration features as other input sources of policies to follow. The first next step on this will be supporting Windows GPO. Once every policy is supported by the configuration file, we'll start adding support for the most important ones through GPO, with the goal of later achieving parity and supporting every policy through GPO and other forms of integration on other OSes.<br />
<br />
=== Deploying the configuration file ===<br />
<br />
To deploy the configuration file, a system administrator will need to drop the configuration.json file inside the installation directory of Firefox.<br />
<br />
This is standard practice, and this means that in a correctly administered environment, a non-admin user of the machine won't have the ability to modify or remove this file.<br />
<br />
Alternatively, on Windows, it will be possible to use the Group Policy Editor to configure the policies<br />
<br />
https://developer.mozilla.org/en-US/Firefox/Enterprise_deployment<br />
<br />
=== Policies ===<br />
<br />
https://github.com/mozilla/policy-templates/blob/master/README.md</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting&diff=1188362Firefox/Meeting2018-02-01T18:53:09Z<p>Felipc: Adding entry for Jan-30-2018</p>
<hr />
<div>We meet biweekly to discuss development status of [[Firefox]] desktop. Please use [irc://irc.mozilla.org/%23fx-team #fx-team] or [https://mail.mozilla.org/listinfo/firefox-dev firefox-dev@mozilla.org] for communication.<br />
<br />
== Meeting Details == <br />
<br />
* Every second Tuesday @ 8:00AM Pacific <br />
{{conf|91337}}<br />
* "Firefox" Vidyo room. Guest link: https://v.mozilla.com/flex.html?roomdirect.html&key=y9ugHRmYNPZHbK8sP79zVJaIos<br />
*[irc://irc.mozilla.org/%23fx-team #fx-team] for backchannel<br />
<br />
== Meeting Notes ==<br />
[[Firefox/Meeting/Template|Template]]<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2018<br />
|-<br />
|<br />
* [https://docs.google.com/document/d/1hM9bmIdIe0PeQEB4SbU7NG3m7MmjgLJjUB7Fzr7fGEU/edit Feb 13, 2018]<br />
* [[/30-Jan-2018|Jan 30, 2018]]<br />
* [[/16-Jan-2018|Jan 16, 2018]]<br />
* Jan 2, 2018 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2017<br />
|-<br />
|<br />
* Dec 19, 2017 - Cancelled due to Austin All-Hands the prior week<br />
* [[/05-Dec-2017|Dec 05, 2017]]<br />
* [[/21-Nov-2017|Nov 21, 2017]]<br />
* [[/07-Nov-2017|Nov 07, 2017]]<br />
* [[/24-Oct-2017|Oct 24, 2017]]<br />
* [[/10-Oct-2017|Oct 10, 2017]]<br />
* [[/26-Sep-2017|Sep 26, 2017]]<br />
* [[/12-Sep-2017|Sep 12, 2017]]<br />
* [[/29-Aug-2017|Aug 29, 2017]]<br />
* [[/15-Aug-2017|Aug 15, 2017]]<br />
* [[/01-Aug-2017|Aug 01, 2017]]<br />
* [[/18-Jul-2017|Jul 18, 2017]]<br />
* [[/20-Jun-2017|Jun 20, 2017]]<br />
* [[/06-Jun-2017|Jun 06, 2017]]<br />
* [[/23-May-2017|May 23, 2017]]<br />
* [[/09-May-2017|May 09, 2017]]<br />
* [[/25-Apr-2017|Apr 25, 2017]]<br />
* [[/11-Apr-2017|Apr 11, 2017]]<br />
* [[/28-Mar-2017|Mar 28, 2017]]<br />
* [[/14-Mar-2017|Mar 14, 2017]]<br />
* [[/28-Feb-2017|Feb 28, 2017]]<br />
* [[/14-Feb-2017|Feb 14, 2017]]<br />
* [[/31-Jan-2017|Jan 31, 2017]]<br />
* [[/17-Jan-2017|Jan 17, 2017]]<br />
* Jan 3, 2017 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2016<br />
|-<br />
|<br />
* [[/20-Dec-2016|Dec 20, 2016]] <br />
* Dec 6, 2016 - Cancelled due to meeting in Hawaii<br />
* [[/22-Nov-2016|Nov 22, 2016]]<br />
* [[/08-Nov-2016|Nov 08, 2016]]<br />
* [[/25-Oct-2016|Oct 25, 2016]]<br />
* [[/11-Oct-2016|Oct 11, 2016]]<br />
* [[/27-Sep-2016|Sep 27, 2016]]<br />
* [[/13-Sep-2016|Sep 13, 2016]]<br />
* [[/30-Aug-2016|Aug 30, 2016]]<br />
* [[/16-Aug-2016|Aug 16, 2016]]<br />
* [[/02-Aug-2016|Aug 02, 2016]]<br />
* [[/19-Jul-2016|Jul 19, 2016]]<br />
* [[/05-Jul-2016|Jul 05, 2016]]<br />
* Jun 21, 2016 - Cancelled due to meeting in London the week before<br />
* [[/07-Jun-2016|Jun 07, 2016]]<br />
* [[/24-May-2016|May 24, 2016]]<br />
* [[/10-May-2016|May 10, 2016]]<br />
* [[/26-Apr-2016|Apr 26, 2016]]<br />
* [[/12-Apr-2016|Apr 12, 2016]]<br />
* [[/29-Mar-2016|Mar 29, 2016]]<br />
* [[/15-Mar-2016|Mar 15, 2016]]<br />
* [[/01-Mar-2016|Mar 01, 2016]]<br />
* [[/16-Feb-2016|Feb 16, 2016]]<br />
* [[/02-Feb-2016|Feb 02, 2016]]<br />
* [[/19-Jan-2016|Jan 19, 2016]]<br />
* Jan 05, 2016 - Cancelled due to holiday recovery<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2015<br />
|-<br />
|<br />
* Dec 22, 2015 - Cancelled due to holidays<br />
* Dec 8, 2015 - Cancelled due to in-person meetings<br />
* [[/24-Nov-2015|Nov 24, 2015]]<br />
* [[/10-Nov-2015|Nov 10, 2015]]<br />
* [[/27-Oct-2015|Oct 27, 2015]]<br />
* [[/13-Oct-2015|Oct 13, 2015]]<br />
* [[/29-Sep-2015|Sep 29, 2015]]<br />
* [[/15-Sep-2015|Sep 15, 2015]]<br />
* [[/01-Sep-2015|Sep 01, 2015]]<br />
* [[/18-Aug-2015|Aug 18, 2015]]<br />
* [[/04-Aug-2015|Aug 04, 2015]]<br />
* [[/21-Jul-2015|Jul 21, 2015]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2014 <br />
|-<br />
|<br />
* [[/4-Feb-2014|Feb 04, 2014]]<br />
* [[/28-Jan-2014|Jan 28, 2014]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2013 <br />
|-<br />
|<br />
* [[/17-Dec-2013|December 17, 2013]]<br />
* [[/10-Dec-2013|December 10, 2013]]<br />
* [[/3-Dec-2013|December 3, 2013]]<br />
* [[/19-Nov-2013|November 19, 2013]]<br />
* [[/12-Nov-2013|November 12, 2013]]<br />
* [[/5-Nov-2013|November 5, 2013]]<br />
* [[/29-Oct-2013|October 29, 2013]]<br />
* [[/22-Oct-2013|October 22, 2013]]<br />
* [[/15-Oct-2013|October 15, 2013]]<br />
* [[/1-Oct-2013|October 1, 2013]]<br />
* [[/24-Sep-2013|September 24, 2013]]<br />
* [[/17-Sep-2013|September 17, 2013]]<br />
* [[/10-Sep-2013|September 10, 2013]]<br />
* [[/03-Sep-2013|September 3, 2013]]<br />
* [[/27-Aug-2013|August 27, 2013]]<br />
* [[/20-Aug-2013|August 20, 2013]]<br />
* [[/13-Aug-2013|August 13, 2013]]<br />
* [[/6-Aug-2013|August 6, 2013]]<br />
* [[/30-Jul-2013|July 30, 2013]]<br />
* [[/23-Jul-2013|July 23, 2013]]<br />
* [[/16-Jul-2013|July 16, 2013]]<br />
* [[/9-Jul-2013|July 9, 2013]]<br />
* [[/2-Jul-2013|July 2, 2013]]<br />
* [[/18-Jun-2013|June 18, 2013]]<br />
* [[/11-Jun-2013|June 11, 2013]]<br />
* [[/4-Jun-2013|June 4, 2013]]<br />
* [[/28-May-2013|May 28, 2013]]<br />
* [[/21-May-2013|May 21, 2013]]<br />
* [[/14-May-2013|May 14, 2013]]<br />
* [[/7-May-2013|May 7, 2013]]<br />
* [[/30-Apr-2013|Apr 30, 2013]]<br />
* [[/23-Apr-2013|Apr 23, 2013]]<br />
* [[/16-Apr-2013|Apr 16, 2013]]<br />
* [[/9-Apr-2013|Apr 9, 2013]]<br />
* [[/2-Apr-2013|Apr 2, 2013]]<br />
* [[/26-Mar-2013|Mar 26, 2013]]<br />
* [[/19-Mar-2013|Mar 19, 2013]]<br />
* [[/12-Mar-2013|Mar 12, 2013]]<br />
* [[/5-Mar-2013|Mar 5, 2013]]<br />
* [[/26-Feb-2013|Feb 26, 2013]]<br />
* [[/19-Feb-2013|Feb 19, 2013]]<br />
* [[/12-Feb-2013|Feb 12, 2013]]<br />
* [[/5-Feb-2013|Feb 5, 2013]]<br />
* [[/22-Jan-2013|Jan 22, 2013]]<br />
* [[/15-Jan-2013|Jan 15, 2013]]<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
|}<br />
<br />
{| class="wikitable collapsible collapsed" style="width: 100%"<br />
! 2012 <br />
|-<br />
|<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
* [[/18-Dec-2012|Dec 18, 2012]]<br />
* [[/11-Dec-2012|Dec 11, 2012]]<br />
* [[/4-Dec-2012|Dec 4, 2012]]<br />
* [[/27-Nov-2012|Nov 27, 2012]]<br />
* [[/20-Nov-2012|Nov 20, 2012]]<br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/30-Jan-2018&diff=1188229Firefox/Meeting/30-Jan-20182018-01-31T00:01:32Z<p>Felipc: meeting</p>
<hr />
<div>Today’s meeting leader is: '''felipe'''<br />
<br />
= General Topics / Roundtable =<br />
<br />
* From masayuki: [https://mail.mozilla.org/pipermail/firefox-dev/2018-January/006069.html ''Please stop using keypress event for handling non-printable keys'']<br />
* [jaws] Google Summer of Code:<br />
** Nihanth/Johann is mentoring the “Download Spam Protection for Firefox” project<br />
** Jared is mentoring the “Multi-tab select in Firefox”<br />
<br />
= Friends of the Firefox team =<br />
<br />
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)<br />
<br />
Resolved bugs (excluding employees): [https://mzl.la/2DHraEr ''https://mzl.la/2DHraEr'']<br />
<br />
More than one bug fixed:<br />
<br />
* :prathiksha<br />
* Alejandro Rodriguez Salamanca [:alejandro]<br />
* Ian Moody [:Kwan] (UTC+0)<br />
* Oriol Brufau [:Oriol]<br />
* Tim Nguyen :ntim<br />
* Vikas Prasad Mahato [:vikas_mahato]<br />
* jbonnafo<br />
<br />
New contributors (🌟 = First Patch!)<br />
<br />
* 🌟 17039 made [https://bugzilla.mozilla.org/show_bug.cgi?id=1423732 ''Sqlite.jsm’s getSchemaVersion() return an integer instead of a string'']<br />
* 🌟 Nathan [https://bugzilla.mozilla.org/show_bug.cgi?id=1417698 ''updated the WebPayments code''] to use the recommended ESLint rules for Mozilla projects<br />
* Arjun Krishna Babu [https://bugzilla.mozilla.org/show_bug.cgi?id=1428844 ''switched our Preferences tests to use BrowserTestUtils.waitForEvent''] instead of its own custom waitForEvent function<br />
* 🌟 dylan.turner [https://bugzilla.mozilla.org/show_bug.cgi?id=1429278 ''updated a string in our Form Autofill code'']<br />
* 🌟 Vedant [https://bugzilla.mozilla.org/show_bug.cgi?id=1421051 ''updated one of our graphical assets to be consistent with the new Photon tab style'']<br />
* 🌟 samreadingthompsondevelopment [https://bugzilla.mozilla.org/show_bug.cgi?id=1432062 ''added the trailing commas requirement ESLint rule for the Migration component'']<br />
* 🌟 Ashish Daulatabad [https://bugzilla.mozilla.org/show_bug.cgi?id=1357788 ''removed some ancient and unneeded Netscape 4-era code''] from nsOSHelperAppService.cpp!<br />
* Swapnil P (:DarthSwap) [https://bugzilla.mozilla.org/show_bug.cgi?id=1430603 ''restricted BROWSER_*_DEFAULT probes to the parent-process only'']<br />
* Vinícius Costa [https://bugzilla.mozilla.org/show_bug.cgi?id=1433234 ''replaced do_check_array_eq with Assert.deepEqual in the sync code'']<br />
* 🌟 william.loughton [https://bugzilla.mozilla.org/show_bug.cgi?id=1419932 ''removed another unneeded XBL binding (menu-vertical)'']! [http://arewexblstill.com/ ''Another one bites the dust!'']<br />
* 🌟 zacknoyes2 [https://bugzilla.mozilla.org/show_bug.cgi?id=1407778 ''made it so that we set a “status” property on the Error raised when Sqlite.jsm’s openAsyncDatabase or asyncClone fails'']<br />
* 🌟 pubkeypin made it so that [https://bugzilla.mozilla.org/show_bug.cgi?id=1431942 ''Preferences would open if MOZ_DATA_REPORTING wasn’t included in the build'']<br />
<br />
= Project Updates =<br />
<br />
== Add-ons ==<br />
<br />
* The tabs API now supports a [https://bugzilla.mozilla.org/show_bug.cgi?id=1427463 ''captureTab method''] which can be passed a tabId to capture the visible area of the specified tab.<br />
* The pageAction and sidebarAction APIs were [https://bugzilla.mozilla.org/show_bug.cgi?id=1424538 ''updated to be consistent with changes to the browserAction API''] which allow for nulls to be passed to unset a property.<br />
* The browserAction, pageAction and sidebarAction APIs all now support [https://bugzilla.mozilla.org/show_bug.cgi?id=1427431 ''querying whether they are currently enabled/shown/open''], respectively.<br />
* The devtools.network API now supports a [https://bugzilla.mozilla.org/show_bug.cgi?id=1311177 ''getHAR method '']which returns a HAR log for the devtools window.<br />
* The tabs API now supports a [https://bugzilla.mozilla.org/show_bug.cgi?id=1423725 ''hide and a show method''], to hide and show individual tabs. This is currently preffed off, awaiting UX changes.<br />
* Special handling was added to [https://bugzilla.mozilla.org/show_bug.cgi?id=1365660 ''support popups which will contain remote browsers''].<br />
* The [https://bugzilla.mozilla.org/show_bug.cgi?id=1415507 ''tabs.saveAsPDF API was enhanced''] with a print progress listener and the addition of four more edge properties to the pageSettings object.<br />
* The menus and contextMenus APIs have been enhanced to [https://bugzilla.mozilla.org/show_bug.cgi?id=1215376 ''support onShown and onHidden events''].<br />
* A [https://bugzilla.mozilla.org/show_bug.cgi?id=1425535 ''proxyConfig setting''] method has been added to the browserSettings API to allow an extension to control proxy prefs.<br />
<br />
== Activity Stream ==<br />
<br />
<br />
[https://bugzilla.mozilla.org/buglist.cgi?cmdtype=dorem&remaction=run&namedcmd=Activity%20Stream%20MVP%20for%20FX60&sharer_id=499318&list_id=13989962 ''Priorities for Fx60''] (what we are currently working on):<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432589 ''Prefs'']: migrating newtab sidebar preferences to about:preferences<br />
<br />
** Porting existing sections checkboxes from React to XUL<br />
** Adding new customizations: section rows, reorganize “Home” section<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432586 ''Highlights'']: adding new data types starting with Pocketed items<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432588 ''Message Center'']: generalizing messages and notifications<br />
<br />
** Start with Onboarding Tour and Snippets<br />
** Eventually for [https://mozilla.invisionapp.com/share/CNFI108PU9Y ''centralized notifications''] even for non-UI features<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432587 ''Perceived Performance'']: developing process to produce weekly Activity Stream timing videos for analysing perf<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1402192 ''Drag and drop''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1430130 ''fixes''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1429825 ''landed''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1428727 ''improving''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1403947 ''the overall''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1427358 ''experience'']<br />
<br />
** [https://drive.google.com/file/d/1sa0Xrk8xWdf4EBf_4dtO9bEx-3XzChfZ/view ''https://drive.google.com/file/d/1sa0Xrk8xWdf4EBf_4dtO9bEx-3XzChfZ/view'']<br />
<br />
== [https://mozilla.github.io/firefox-browser-architecture/ ''Browser Architecture''] ==<br />
<br />
* XUL flexbox emulation into CSS flexbox can be enabled with the layout.css.emulate-moz-box-with-flex pref. Next: get it running in automation to track performance compared with XUL flex ([https://bugzilla.mozilla.org/show_bug.cgi?id=1033225 ''metabug''])<br />
* XUL overlay removal breakdown ([https://bugzilla.mozilla.org/show_bug.cgi?id=1426763 ''metabug'']) <br />
* There’s a new components.css UA sheet for migrating XBL &lt;resource&gt; sheets into ([https://bugzilla.mozilla.org/show_bug.cgi?id=1420229 ''bug''])<br />
<br />
== [https://wiki.mozilla.org/Firefox_Core_Engineering ''Firefox Core Engineering''] ==<br />
<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1419102 ''Policy engine''] has landed (behind a pref), as well as several policies:<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1421707 ''Bug 1421707''] - Blocking of selected about: pages<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1428922 ''Bug 1428922''] - Per-origin allow/block permissions for cookies, popups, flash and addons<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1429120 ''Bug 1429120''] - Show bookmarks and menu bar by default<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1429141 ''Bug 1428141''] - Don’t check for default browser on startup<br />
* Several others being worked on, as well as GPO support<br />
* Plenty of opportunities to help with our list of [https://bugzilla.mozilla.org/showdependencytree.cgi?id=policies-mvp&maxdepth=1&hide_resolved=1 ''desired policies on MVP'']<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1407557 ''Crash pings have come to Fennec''], courtesy of Gabriele Svelto<br />
<br />
== [https://wiki.mozilla.org/Firefox/Features/Form_Autofill ''Form Autofill''] ==<br />
<br />
* There are no dedicated engineers remaining on the project so progress is paused for now.<br />
<br />
== [https://firefox-source-docs.mozilla.org/tools/lint/index.html ''Lint''] ==<br />
<br />
* Sylvestre is working on integrating [https://bugzilla.mozilla.org/show_bug.cgi?id=1433410 ''codespell''] as a lint option.<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1433954 ''Initially limited to''] tools/lint and python/mozlint<br />
<br />
== Performance ==<br />
<br />
Tab warming:<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1423200 ''Fixed a perma-spinner bug with tab warming'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432863 ''Currently documenting the async tab switch to increase bus factor'']<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1432509 ''One last bug to fix''], and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1423220 ''I plan on enabling tab warming by default on Nightly'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1430160 ''There are some Telemetry measurements to sort out too'']<br />
* FormHistory database initialization and migration [https://bugzilla.mozilla.org/show_bug.cgi?id=888784 ''have been moved off of the main thread!'']<br />
* Quantum Flow is still a thing! Have you been assigned a qf:p1? Please work on it, or hand it off to someone else who can.<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1424823#c8 ''promiseLayoutFlushed may not resolve the Promise in some circumstances'']<br />
<br />
== Preferences ==<br />
<br />
* There are no dedicated engineers remaining on the project so progress is paused for now.<br />
<br />
== Privacy/Security ==<br />
<br />
* We ran a user study on how different privacy protections break (or fix) the web. [https://blog.mozilla.org/data/2018/01/26/improving-privacy-without-breaking-the-web/ ''Here’s the blog post''].<br />
* Luke [https://bugzilla.mozilla.org/show_bug.cgi?id=587523 ''made Firefox trim HTTP Referer headers in private browsing mode''].<br />
* The crypto[https://hacks.mozilla.org/2018/01/using-hardware-token-based-2fa-with-the-webauthn-api/ '' team wrote a blog post about the new WebAuthn API''].<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1345077 ''We now have more detailed telemetry on permission prompts'']. You can find out about the [https://mzl.la/2nnZ3nT ''origin scheme of the triggering page''], [https://mzl.la/2nnYFFX ''whether the prompt was triggered from a user input event''] and [https://mzl.la/2nqYJor ''whether it came from a third-party iframe''].<br />
<br />
== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ==<br />
<br />
Address Bar &amp; Search<br />
<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1416305 ''bug where copying a search suggestion ended up pasting a url'']<br />
* Work continues on the [https://bugzilla.mozilla.org/show_bug.cgi?id=1239708 ''new Address Bar autofill algorithm''], close to be reviewable<br />
<br />
Places<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1346554 ''incremental_vacuum has been enabled for favicons.sqlite'']<br />
* Removed the [https://bugzilla.mozilla.org/show_bug.cgi?id=1432112 ''Move Bookmarks''] dialog from the Library<br />
* Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1420811 ''bug allowing to rename a bookmark tag to an empty string'']<br />
* Removed the [https://bugzilla.mozilla.org/show_bug.cgi?id=1131491 ''legacy synchronous places transactions''].<br />
* Removing synchronous transactions allowed us to start removing synchronous bookmarks APIs, the following have already been removed (more will follow): [https://bugzilla.mozilla.org/show_bug.cgi?id=885247 ''GetPageTitle''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1095406 ''GetBookmarksForURI and GetMostRecentBookmarksForURI''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1432436 ''GetItemType''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1432437 ''ChangeBookmarkURI''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1432439 ''GetBookmarkIdsForURI'']<br />
* Hemant has [https://bugzilla.mozilla.org/show_bug.cgi?id=1370881 ''replaced calls to isURIVisited and promiseIsURIVisited with the more appropriate PlacesUtils.history.hasVisits'']<br />
<br />
More<br />
<br />
* Contributed fixes to Sqlite.jsm:<br />
<br />
** zacknoyes2 added [https://bugzilla.mozilla.org/show_bug.cgi?id=1407778 ''a status property to the OpenAsyncDatabase error that allows to check for corruption'']<br />
** 17039 made [https://bugzilla.mozilla.org/show_bug.cgi?id=1423732 ''getSchemaVersion return an integer rather than a string'']<br />
<br />
== Sync / Firefox Accounts ==<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1305563 ''New and improved bookmark merging''] has landed! \o/<br />
<br />
** This is a significant under-the-hood change to how we apply synced bookmarks, and should fix long-standing issues with Sync scrambling bookmarks, smushing folders, and undoing changes.<br />
** Special thanks to :mak, :markh, :rnewman, and :tcsc for their reviews and guidance!<br />
** There’s an [https://docs.google.com/document/d/1tq2hlzxh3hnbzuAKmFUjOXs9QH0e2b_Vnz1yrp9YXyA/edit# ''explainer doc''] with an overview.<br />
** We’ll begin dogfooding within the Sync team, and send out a post to firefox-dev@ once we’re ready to have more folks try. [https://bugzilla.mozilla.org/show_bug.cgi?id=1433177 ''Bug 1433177''] tracks enabling it by default.<br />
** If you’re feeling adventurous, you can back up your places.sqlite, flip the services.sync.engine.bookmarks.buffer pref, and restart Firefox.<br />
* Edouard is almost done [https://bugzilla.mozilla.org/show_bug.cgi?id=1210296 ''removing event loop spinning from Sync''], which significantly cleans up the code and should make for cleaner perf profiles.<br />
* Thom is improving bookmark deletion to avoid resurrecting deleted items. There’s a [https://mail.mozilla.org/pipermail/sync-dev/2018-January/001615.html ''sync-dev@ thread''] with some discussion.<br />
* Various [https://bugzilla.mozilla.org/show_bug.cgi?id=1429250 ''performance''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1425960 ''improvements''].<br />
<br />
== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ==<br />
<br />
<br />
* Tab Split and ThemesRFun experiment development is now underway.<br />
* The Test Pilot team is learning about WebExtension API Experiments and Embedded Experiments for use implementing future Test Pilot experiments.<br />
* Snooze Tabs is gearing up to graduate.<br />
* MinVid is preparing to move into a Shield study.<br />
* The Test Pilot website has new “Featured Experiment” UI which will be turned on in the next sprint.<br />
Screenshots:<br />
<br />
** 50 million shots! (since late 56 cycle)<br />
*** [https://twitter.com/FxTestPilot/status/958044848556212224 ''https://twitter.com/FxTestPilot/status/958044848556212224'']<br />
** Toolbar button vs Page Action menu: yes, we’re seeing less usage, but our usage has been remarkably steady:<br />
** [[File:Pictures/100002010000073E0000027A3DCCE4F3AE1D304F.png|602x205px]]<br />
** screenshots is becoming a module. Ianb owner, 6a68 peer.<br />
** we've updated our dev process to land early in the cycle and avoid uplifts<br />
** Ian is participating in the github-bugzilla discussions, more to come<br />
<br />
== [https://wiki.mozilla.org/Firefox/Features/Web_Payments ''Web Payments''] ==<br />
<br />
* Improved breakdown completed. Talking with stakeholders<br />
* Line-item list view and toggle implemented<br />
* Improving the shipping address picker<br />
* Connecting the shipping address picker to the PaymentResponse<br />
* Credit card picker is coming soon.<br />
<br />
== This week I learned ==<br />
<br />
* [MattN] Add the following to your ~/.mozbuild/machrc file to fix colored output of mochitests until bug 1132044 is fixed:<br />
<pre>[test]<br />
format=mach</pre><br />
** '''NB: I have since learned that this breaks `--verify` on test commands (bug 1432683)'''<br />
<br />
* [MattN] [https://bugzilla.mozilla.org/show_bug.cgi?id=1432690 ''SimpleTest.registerCleanupFunction doesn’t currently work in browser-chrome tests''], use the bare `registerCleanupFunction` function instead.<br />
* [kit] [https://bugzilla.mozilla.org/show_bug.cgi?id=969490 ''`Cu.now()` exists''], if you need a high-res monotonic clock to measure performance.<br />
* [felipe] Cu.readUTF8File(..)<br />
** Memorizes file access and reads it ahead on the next startup<br />
<br />
* [gijs] Heads-up - Cu.import and XPCOMUtils.defineLazyModuleGetter [https://bugzilla.mozilla.org/show_bug.cgi?id=1431533 ''are moving to ChromeUtils soon''] . This will land while updating existing callers, and with an eslint rule to prevent using the “old” method of getting modules.<br />
* [gijs] likewise, Cu/Cr/Ci/Cc will [https://bugzilla.mozilla.org/show_bug.cgi?id=767640 ''soon exist on every global''] without adding heaps of boilerplate. Yay!</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1187950Firefox/EnterprisePolicies/Testing2018-01-30T16:53:48Z<p>Felipc: viewing policies</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''false''' when the policy is in use<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''false''' when the policy is in use<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''false''' when the policy is in use<br />
|-<br />
| url_policy || Watch the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || Watch the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre><br />
<br />
== View supported policies ==<br />
<br />
To view the policies that have already landed in the Nightly you're testing, run this Snippet:<br />
<br />
<pre><br />
var { schema } = Cu.import("resource:///modules/policies/schema.jsm", {});<br />
console.log("Available Policies:")<br />
for (let policy of Object.keys(schema.properties)) { console.log(` ${policy}`); }<br />
</pre><br />
<br />
'''Note''': Please ignore the `''block_about_config''` policy because it's just in the list of supported policies as a placeholder, but the code for it hasn't landed yet. Every other policy will land together with the code and should be ready to test.</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1187458Firefox/EnterprisePolicies/Testing2018-01-23T19:40:04Z<p>Felipc: remove lastModifiedTime reference as it was removed from the engine</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''false''' when the policy is in use<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''false''' when the policy is in use<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''false''' when the policy is in use<br />
|-<br />
| url_policy || Watch the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || Watch the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186327Firefox/EnterprisePolicies/Testing2018-01-05T19:55:42Z<p>Felipc: lastModifiedTime</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''false''' when the policy is in use<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''false''' when the policy is in use<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''false''' when the policy is in use<br />
|-<br />
| url_policy || Watch the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || Watch the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Verifying policies.json lastModifiedTime ==<br />
<br />
When there's a policies.json file in use, the browser will store the last modification date of the file in the following pref:<br />
<br />
<pre>browser.policies.lastModifiedTime</pre><br />
<br />
Please verify that this pref gets created correctly, and that it is updated at any time that the policies.json is altered.<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186320Firefox/EnterprisePolicies/Testing2018-01-05T13:42:40Z<p>Felipc: correction</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''false''' when the policy is in use<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''false''' when the policy is in use<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''false''' when the policy is in use<br />
|-<br />
| url_policy || Watch the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || Watch the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186319Firefox/EnterprisePolicies/Testing2018-01-05T13:41:57Z<p>Felipc: typo</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''true'''<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''true'''<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''true'''<br />
|-<br />
| url_policy || Watch the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || Watch the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186301Firefox/EnterprisePolicies/Testing2018-01-04T21:35:50Z<p>Felipc: More exames</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''true'''<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''true'''<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''true'''<br />
|-<br />
| url_policy || What the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || What the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true<br />
}<br />
}</pre><br />
<br />
* Malformed JSON (to test the ERROR state):<br />
<br />
<pre>{<br />
"polic</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186300Firefox/EnterprisePolicies/Testing2018-01-04T21:34:14Z<p>Felipc: more stuff</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file<br />
<br />
== Testing the policies ==<br />
<br />
There are currently a few dummy policies implemented, and we can test that they are being correctly activated by the policies.json file by verifying some log messages or running a snippet:<br />
<br />
{| class="wikitable"<br />
|-<br />
! Policy Name !! How to verify<br />
|-<br />
| block_about_config || Snippet: <code>Services.policies.isAllowed("about:config")</code> returns '''true'''<br />
|-<br />
| block_devtools || Snippet: <code>Services.policies.isAllowed("devtools")</code> returns '''true'''<br />
|-<br />
| test_dummy_feature1 || Snippet <code>Services.policies.isAllowed("test_dummy_feature1")</code> returns '''true'''<br />
|-<br />
| url_policy || What the message "URL POLICY spec: http://example.com" in the Browser console<br />
|-<br />
| bookmarks_test_policy || What the message "BOOKMARK: TITLE: foo, URL: bar" for each entry in the Browser console<br />
|}<br />
<br />
== Example files ==<br />
<br />
* JSON file with all policies enabled:<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"bookmarks_on_menu": [<br />
"https://www.mozilla.org/firefox/new/",<br />
"https://www.example.com",<br />
"https://www.example.org"<br />
],<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}<br />
</pre><br />
<br />
* JSON with just the about:config enabled (use it to verify that devtools doesn't get blocked):<br />
<br />
<pre>{<br />
"policies": {<br />
"block_about_config": true,<br />
"block_devtools": true,<br />
"test_dummy_feature1": true,<br />
"bookmarks_on_menu": [<br />
"https://www.mozilla.org/firefox/new/",<br />
"https://www.example.com",<br />
"https://www.example.org"<br />
],<br />
"url_policy": "example.com",<br />
"bookmarks_test_policy": {<br />
"title": "Bookmark title",<br />
"url": "http://www.example.com/bookmark"<br />
}<br />
}<br />
}</pre></div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186298Firefox/EnterprisePolicies/Testing2018-01-04T21:12:46Z<p>Felipc: Status</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution<br />
<br />
== Checking the status of the engine ==<br />
<br />
Soon, this status will be exposed in about:support. In the meantime, you can run this snippet in the Browser Console to get it:<br />
<br />
<pre>Services.policies.status</pre><br />
<br />
The values are:<br />
<br />
* '''0''': ''Uninitialized'' - Should never see this value<br />
* '''1''': ''Inactive'' - When the feature is disabled (the pref wasn't created), or if the policies.json file doesn't exist. This should be the default value you get when the feature is not being used.<br />
* '''2''': ''Active'' - When the feature is correctly in use<br />
* '''3''': ''Error'' - When the feature was attempted to be used, but there was a malformed error in the policies.json file</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies/Testing&diff=1186297Firefox/EnterprisePolicies/Testing2018-01-04T21:05:41Z<p>Felipc: Created page with "This page documents how to test the Enterprise Policies Manager == Prefs to enable == Please set these two prefs to test this feature: <pre>browser.policies.enabled = true..."</p>
<hr />
<div>This page documents how to test the Enterprise Policies Manager<br />
<br />
== Prefs to enable ==<br />
<br />
Please set these two prefs to test this feature:<br />
<br />
<pre>browser.policies.enabled = true<br />
devtools.chrome.enabled = true</pre><br />
<br />
'' Note'': the <code>browser.policies.enabled</code> pref doesn't exist and will need to be created (as a Boolean pref).<br />
<br />
== Adding the policies.json file ==<br />
<br />
To test this feature (once enabled), you'll need to create a policies.json file (example files are given below), and to put it in a specific location in the '''installation directory''' of Firefox (not the profile directory).<br />
<br />
Since this location varies by platform and by install type (local build, try build, installed with the installer, etc.), the easier way to figure out the location is by running the following code Snippet in the Browser Console:<br />
<br />
<pre>Services.dirsvc.get("XREAppDist", Ci.nsIFile).path</pre><br />
<br />
=== Per-platform examples ===<br />
(these may be different depending on how you installed the try build, so I recommend running the snippet above). These are for illustration purposes only.<br />
<br />
* '''Mac''': /Applications/FirefoxNightly.app/Contents/Resources/distribution<br />
* '''Windows''': C:\Program Files (x86)\Mozilla Firefox\distribution</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies&diff=1185776Firefox/EnterprisePolicies2017-12-13T22:20:59Z<p>Felipc: Adding more to JSON</p>
<hr />
<div>This page documents the ongoing work to plan and implement a policy engine inside Firefox to be used by system administrators to configure Firefox in enterprises deployment.<br />
<br />
'''Note''': This is not a documentation of the feature, and anything here is subject to change. Final documentation will exist on MDN once the feature nears its completion.<br />
<br />
== Overview ==<br />
<br />
TODO<br />
<br />
=== Objective ===<br />
<br />
TODO<br />
<br />
=== Timing ===<br />
<br />
ESR 60<br />
<br />
== Policy Engine ==<br />
<br />
The Policy Engine will be a component in Firefox that reads some admin-specified configuration during Firefox's startup and properly configure features to respect these configurations.<br />
<br />
Initially, the engine will use a platform-agnostic way to read these configurations, which will be a .json file to be added inside the installation folder of Firefox. In this file, the admin will be able to list the desired policies to activate, as well as parameters related to each policy.<br />
<br />
Afterwards, we'll be looking at supporting OS-level administration features as other input sources of policies to follow. The first next step on this will be supporting Windows GPO. Once every policy is supported by the configuration file, we'll start adding support for the most important ones through GPO, with the goal of later achieving parity and supporting every policy through GPO and other forms of integration on other OSes.<br />
<br />
=== Deploying the configuration file ===<br />
<br />
To deploy the configuration file, a system administrator will need to drop the configuration.json file inside the installation directory of Firefox.<br />
<br />
This is standard practice, and this means that in a correctly administered environment, a non-admin user of the machine won’t have the ability to modify or remove this file.<br />
<br />
=== Example JSON file ===<br />
<br />
One example configuration.json file is given below:<br />
('''Note''': This json format is subject to change)<br />
<br />
<pre><br />
{<br />
policies: {<br />
"block_about_config": true,<br />
"blocked_domains": [<br />
"www.example.com",<br />
"www.example.org",<br />
],<br />
"allow_popups_from": [<br />
"www.example.com",<br />
"www.example.org",<br />
],<br />
"allow_plugins_from": [<br />
"www.example.com",<br />
"www.example.org",<br />
],<br />
"bookmarks_on_toolbar": [<br />
{<br />
"title": "Download Firefox",<br />
"url": "https://www.mozilla.org/firefox/new/",<br />
"favicon": "http://www.mozilla.org/favicon.png"<br />
},<br />
{<br />
"title": "Example",<br />
"url": "https://www.example.com",<br />
"favicon": "http://www.example.com/favicon.png"<br />
}<br />
]<br />
}<br />
}<br />
</pre><br />
<br />
=== Policies ===<br />
<br />
The list of policies to support is still being defined, and this list is being based on past experience with what enterprises have asked in the past. Stay tuned for an official list of policies to be announced in the near term. Some possibilities that are being discussed are:<br />
<br />
* Disabling access to internal configuration features like about:config, about:addons, etc.<br />
* Adding a set of bookmarks to the toolbar and the bookmarks menu<br />
* Displaying the menu bar by default<br />
* Disabling Telemetry<br />
* Disabling features such as Pocket, Firefox Screenshots, Printing, Copy&Paste, etc.<br />
* Whitelist and blocklist of domains to be allowed to be accessed<br />
* Pre-populated permissions around cookies, storage, popups, plugins, etc.</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/EnterprisePolicies&diff=1185775Firefox/EnterprisePolicies2017-12-13T21:43:43Z<p>Felipc: Initial version</p>
<hr />
<div>This page documents the ongoing work to plan and implement a policy engine inside Firefox to be used by system administrators to configure Firefox in enterprises deployment.<br />
<br />
'''Note''': This is not a documentation of the feature, and anything here is subject to change. Final documentation will exist on MDN once the feature nears its completion.<br />
<br />
== Overview ==<br />
<br />
TODO<br />
<br />
=== Objective ===<br />
<br />
TODO<br />
<br />
=== Timing ===<br />
<br />
ESR 60<br />
<br />
== Policy Engine ==<br />
<br />
The Policy Engine will be a component in Firefox that reads some admin-specified configuration during Firefox's startup and properly configure features to respect these configurations.<br />
<br />
Initially, the engine will use a platform-agnostic way to read these configurations, which will be a .json file to be added inside the installation folder of Firefox. In this file, the admin will be able to list the desired policies to activate, as well as parameters related to each policy.<br />
<br />
Afterwards, we'll be looking at supporting OS-level administration features as other input sources of policies to follow. The first next step on this will be supporting Windows GPO. Once every policy is supported by the configuration file, we'll start adding support for the most important ones through GPO, with the goal of later achieving parity and supporting every policy through GPO and other forms of integration on other OSes.<br />
<br />
=== Deploying the configuration file ===<br />
<br />
To deploy the configuration file, a system administrator will need to drop the configuration.json file inside the installation directory of Firefox.<br />
<br />
This is standard practice, and this means that in a correctly administered environment, a non-admin user of the machine won’t have the ability to modify or remove this file.<br />
<br />
=== Example JSON file ===<br />
<br />
One example configuration.json file is given below:<br />
('''Note''': This json format is subject to change)<br />
<br />
<pre><br />
{<br />
policies: {<br />
"block_about_config": true,<br />
"blocked_domains": [<br />
"www.example.com",<br />
"www.example.org",<br />
],<br />
"allow_popups_from": [<br />
"www.example.com",<br />
"www.example.org",<br />
],<br />
"bookmarks_on_toolbar": [<br />
{<br />
"title": "Download Firefox",<br />
"url": "https://www.mozilla.org/firefox/new/",<br />
"favicon": "http://www.mozilla.org/favicon.png"<br />
},<br />
{<br />
"title": "Example",<br />
"url": "https://www.example.com",<br />
"favicon": "http://www.example.com/favicon.png"<br />
}<br />
]<br />
}<br />
}<br />
</pre><br />
<br />
=== Policies ===<br />
<br />
The list of policies to support is still being defined, and this list is being based on past experience with what enterprises have asked in the past. Stay tuned for an official list of policies to be announced in the near term. Some possibilities that are being discussed are:<br />
<br />
* Disabling access to internal configuration features like about:config, about:addons, etc.<br />
* Adding a set of bookmarks to the toolbar and the bookmarks menu<br />
* Displaying the menu bar by default<br />
* Disabling Telemetry<br />
* Disabling features such as Pocket, Firefox Screenshots, Printing, Copy&Paste, etc.<br />
* Whitelist and blocklist of domains to be allowed to be accessed<br />
* Pre-populated permissions around cookies, storage, popups, plugins, etc.</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/12-Sep-2017&diff=1180342Firefox/Meeting/12-Sep-20172017-09-12T19:14:39Z<p>Felipc: Lint</p>
<hr />
<div>== General Topics / Roundtable ==<br />
<br />
(tips/tricks/FYI, productivity improvements, industry news)<br />
<br />
* Changes coming up for [https://groups.google.com/forum/#!topic/mozilla.dev.platform/orG6w-gmMEk ''Firefox localization'']<br />
** Starting with 57, string IDs need to be unique across channels, so across 57 and 58 to start with<br />
** Tests will come<br />
<br />
== Friends of the Firefox team ==<br />
<br />
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)<br />
<br />
<br />
=== Resolved bugs (excluding employees): [https://mzl.la/2gYQnDR ''https://mzl.la/2gYQnDR''] ===<br />
More than one bug fixed:<br />
<br />
* :Perry Jiang<br />
* Cosm<br />
* Kevin Jones<br />
* Rob Wu [:robwu]<br />
* Simon Lindholm<br />
* Steve Armand<br />
* Tomislav Jovanovic :zombie<br />
* Tushar Saini (:shatur)<br />
* akriti verma<br />
* flyingrub<br />
<br />
=== New contributors (🌟 = First Patch!) ===<br />
<br />
* 🌟 kiril made it so that we [https://bugzilla.mozilla.org/show_bug.cgi?id=366945 ''don’t attempt to load URLs stored in the clipboard when middle-clicking on the content area''] on Linux. This is an 11 year old bug!<br />
* Steve Armand [https://bugzilla.mozilla.org/show_bug.cgi?id=1343843 ''got rid of a file we were accidentally packaging''] for ~10 years, [https://bugzilla.mozilla.org/show_bug.cgi?id=1390644 ''updated a label''] in the “Show tabs from other devices” menu, and [https://bugzilla.mozilla.org/show_bug.cgi?id=1392981 ''removed some pages from about:about'']<br />
* 🌟 Adrian Wielgosik cleaned up our code by [https://bugzilla.mozilla.org/show_bug.cgi?id=1387356 ''getting rid of a bunch of deprecated sidebar functions'']<br />
* akriti verma got rid of [https://bugzilla.mozilla.org/show_bug.cgi?id=1392699 ''some old unnecessary tab image override code''] and also [https://bugzilla.mozilla.org/show_bug.cgi?id=1394137 ''made it so that we don’t change the “Go” button colour''] when hovering, as per the Photon spec!<br />
* 🌟 Cosm [https://bugzilla.mozilla.org/show_bug.cgi?id=1395956 ''updated a bunch of in-tree links''] to the new home for our source documentation, and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1396795 ''got rid of an unnecessary variable''] in our MAR library<br />
* 🌟 ljbousfield [https://bugzilla.mozilla.org/show_bug.cgi?id=1391168 ''fixed how extension IDs are stored''] in the tab.mutedInfo WebExtension API (they were the internal UUIDs instead of the actual WebExtension IDs)<br />
* 🌟 Rei Colina [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updated some strings to match the Photon spec''] in our new Page Action menu<br />
* 🌟 Vedant Chakravadhanula [https://bugzilla.mozilla.org/show_bug.cgi?id=1396975 ''updated some label styling''] in Customize Mode to be more consistent with its surroundings<br />
<br />
<br />
<br />
== Project Updates ==<br />
<br />
=== Add-ons ===<br />
<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1377733 ''discarded property''] to the Tab object in the tabs API.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1293853 ''support for separators''] to the bookmarks API.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1322060 ''setWindowValue and setTabValue''] to the sessions API.<br />
* Introduced a [https://bugzilla.mozilla.org/show_bug.cgi?id=1356543 ''clipboard API with a setImageData function''] which allows for images to be copied to the clipboard.<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1364972 ''browserSettings function to control image animation behaviour''].<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1341305 ''devtools API to register an extension sidebar for the inspector panel''].<br />
* Added a l[https://bugzilla.mozilla.org/show_bug.cgi?id=1397383 ''oadReplace option to tabs.update''] which replaces the current page in the tab’s history with the newly loaded page.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1322308 ''browserSettings functions to read the current values of the home page and new tab page''], and know whether they are being controlled by an extension.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1255894 ''filtering streaming response data via webRequest API''].<br />
* Lots of performance fixes, bug fixes and code cleanup!<br />
<br />
=== Activity Stream ===<br />
<br />
<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3369 ''Highlights Section''] with [https://github.com/mozilla/activity-stream/pull/3398 ''more diversity'']<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3395 ''Top Sites improvements''] (soon with more [https://bugzilla.mozilla.org/show_bug.cgi?id=1352459 ''rich icons''], thanks mak!)<br />
* Added [https://github.com/mozilla/activity-stream/pull/3359 ''Prerendering''] support for faster about:home hero element timing<br />
* Started third Shield study, preffing on Activity Stream for Tier1+2 countries in 56 Beta<br />
* Working with PI to ensure about:home + Activity Stream doesn’t regress startup<br />
** Also discussing with Product on [https://bugzilla.mozilla.org/show_bug.cgi?id=1395961 ''desired focus when starting Firefox'']<br />
* Working through remaining [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aopen%20label%3Afx57%20label%3AP1%20 ''17 fx57 P1 issues'']<br />
** [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 A][https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 dditional perf telemetry]<br />
** Turning on about:home and prerendering<br />
** NSFW filtering<br />
<br />
<br />
=== Browser Architecture ===<br />
<br />
* Problems with XBL have been [https://mozilla.github.io/firefox-browser-architecture/text/0005-problems-with-xbl.html ''documented'']<br />
* A [https://bugzilla.mozilla.org/show_bug.cgi?id=1397874 ''de-XBL meta bug''] exists<br />
* An architecture review process is [https://mozilla.github.io/firefox-browser-architecture/text/0006-architecture-review-process.html ''being developed'']<br />
* Check out our last [https://mozilla.github.io/firefox-browser-architecture/posts/2017-08-24-browser-architecture-newsletter-2.html ''newsletter'']!<br />
<br />
=== Electrolysis (e10s) ===<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1393638 ''Bug 1393638''] - E10s-multi (4 processes) being increased to 100% on Release 55<br />
<br />
=== [https://wiki.mozilla.org/Firefox_Core_Engineering ''Firefox Core Engineering''] ===<br />
<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1390703 ''Bug 1390703''] - Flash Click-to-Play being increased to 25% on Release 55, (hopefully) shortly followed to 100%<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1397562 ''Bug 1397562''] - Update staging is now disabled on OSX and Linux (update staging was disabled on Windows in bug 1397562).<br />
<br />
** This is in response to what we think may be an issue with e10s sandboxing.<br />
** This is why you may suddenly be seeing a flash of the “Nightly is applying updates” (like in [https://bugzilla.mozilla.org/show_bug.cgi?id=1398641 ''bug 1398641'']).<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1380252 ''Bug 1380252''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1380254 ''bug 1380254''] - Optimized data in crash reports and crash ping processing.<br />
* Open call for ideas/investigation on [https://bugzilla.mozilla.org/show_bug.cgi?id=1276488 ''bug 1276488''] -- suspected omnijar corruption, but not much to go on.<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Features/Form_Autofill ''Form Autofill''] ===<br />
<br />
<br />
* QE Signoff on Address Autofill given for 56 (en-US in the US)<br />
* Verifying telemetry data<br />
* Fixed:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395019 ''(Form Autofill) Support filling in &quot;cc-given-name&quot;, &quot;cc-additional-name&quot; and &quot;cc-family-name&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1371232 ''(Creditcard Autofill) Collect information on how many times did users apply credit card autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1341569 ''(Form Autofill) Collect information on how much time users spent on page with forms (w/wo form autofill)'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397090 ''(Form Autofill) Manage credit cards dialog should have the ability to mask card numbers again after they are shown'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1382548 ''Sending message that cannot be cloned at FormAutofillContent.jsm:161:6'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395173 ''(Form Autofill) Autofill stops working after switching between two forms'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394704 ''(Form Autofill) Preferences shows the duplicated records after records changed while the address dialog is opening'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397116 ''(Form Autofill) Tune the height of form autofill dropdown item from 29px to 30px'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394854 ''(Form Autofill) Recognize &quot;United States&quot; as &quot;United States&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1377006 ''(Doorhanger) Alternative main action button styling for form autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1392528 ''(Form Autofill) Ignore autocomplete=off attr for the credit card fields'']<br />
* In Progress:<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395122 ''(Form Autofill) Decrypt credit card numbers before syncing to server and re-encrypt them after syncing back'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1386922 ''(Form Autofill) Add &quot;Learn more&quot; links to SUMO pages in preferences'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397088 ''(Form Autofill) Fix manage addresses / credit cards line height problem'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395028 ''(Form Autofill) Add credit card sync checkbox in its doorhanger'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1398101 ''(Form Autofill) Credit card autofill doesn't work on some of the main shopping sites'']<br />
** Overall: Polishing address and credit card autofill<br />
<br />
=== Lint ===<br />
<br />
* [https://eslint.org/docs/rules/generator-star-spacing Generator-star-spacing] enabled across the tree.<br />
* ESLint enabled for [https://bugzilla.mozilla.org/show_bug.cgi?id=1394820 DownloadIntegration.jsm]'' ''<br />
<br />
=== Photon ===<br />
<br />
==== Performance ====<br />
<br />
* For 57 we had to disable tab warming when hovering tabs because it caused more regressions than we are comfortable fixing for 57. We are now planning to ship this significant perf improvement in 58.<br />
* All the significant performance improvements we are still working on at this point are at risk for 57 because we are trying to avoid risk.<br />
* Our [http://astithas.com/perm/photon-perf/ ''dashboards''] show very good wins on all things we measure when comparing 55 to 57. Eg. startup is about 50% faster in 57 than it was in 55!<br />
<br />
==== Structure ====<br />
<br />
* Screenshots integration is now on nightly!<br />
* Mike (de Boer) added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1354532 ''Downloads subview to the library panel'']<br />
* Drew fixed a bunch of issues relating to the [https://bugzilla.mozilla.org/show_bug.cgi?id=1378560 ''ordering''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1388589 ''appearance''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1395154 ''behaviour''] of the [https://bugzilla.mozilla.org/show_bug.cgi?id=1396053 ''page action''] button and [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''its''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1386745 ''items'']<br />
* Rei Colina helped us out by [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updating some of the page action panel labels'']<br />
* Various aspects of panels now look better.<br />
* We’ll be relanding the [https://bugzilla.mozilla.org/show_bug.cgi?id=1397447 ''autohiding download button''] behaviour today, but this time with a switch to turn it off.<br />
* Only 1 other MVP bug left - [https://bugzilla.mozilla.org/show_bug.cgi?id=1374749 ''updated panel subview animations''] - which has r+ and is close to landing on central.<br />
* Various other polish bugs got fixed!<br />
<br />
==== Animation ====<br />
<br />
* Investigation ongoing into [https://bugzilla.mozilla.org/show_bug.cgi?id=1397092 ''bug 1397092''] - high cpu usage possibly caused by new 60fps tab loading indicator<br />
* Fatter download progressbar [https://bugzilla.mozilla.org/show_bug.cgi?id=1387557 ''bug 1387557''] in for review, is last animation feature planned for 57<br />
* Polishing, please report any glitches you see<br />
<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
<br />
* Location / Address Bar:<br />
** The Firefox / Location Bar component in Bugzilla has been renamed to Address Bar to be consistent with Preferences<br />
** The Search Bar has [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416 ''been moved to the Customization Palette''] for new profiles! This exciting change also caused interesting [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416#c45 ''Talos improvements''] to tart, sessionrestore and paint.<br />
** The latest [https://bugzilla.mozilla.org/show_bug.cgi?id=1387245 ''Unified Search Study''] testing different Address Bar results mixtures is live in Beta, will end on 26th of September<br />
** Thanks to the Network team, Speculative Connections don’t risk anymore to [https://bugzilla.mozilla.org/show_bug.cgi?id=910207 ''open a Client Certificate Selection dialog'']. The patch will be uplifted to 56.<br />
** To avoid overlapping with the onboarding experience on about pages, the [https://bugzilla.mozilla.org/show_bug.cgi?id=1384050 ''Search Suggestions notification won’t be shown anymore when opening home/newtab page''], but only when the user explicitly focuses or clicks the location bar (or types into it).<br />
** Fixed an [https://bugzilla.mozilla.org/show_bug.cgi?id=1385374 ''apparent keyboard trap when the Search Suggestions hint was shown'']<br />
** The Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''dropdown icon is not shown anymore while the user is typing'']<br />
** Dão made the Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1390359 ''show a search icon on about:newtab, about:home, about:blank'']<br />
** Simon Lindholm contributed another patch to [https://bugzilla.mozilla.org/show_bug.cgi?id=1393486 ''improve the Address Bar querying time'']<br />
* Places:<br />
** The bookmarks toolbar, when visible, now [https://bugzilla.mozilla.org/show_bug.cgi?id=1392081 ''consumes less memory and starts up faster''], especially for users with a lot of bookmarks on it<br />
** Hector Zhao added a [https://bugzilla.mozilla.org/show_bug.cgi?id=658245 ''pref to always open bookmarks in a new tab'']<br />
** Fixed [https://bugzilla.mozilla.org/show_bug.cgi?id=1394801 ''various''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1391166 ''regressions''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395994 ''with''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1396888 ''Places''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397387 ''Async''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397545 ''Transactions'']<br />
* Misc:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1383955 ''Some''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1384130 ''intermittent''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395082 ''tests''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395784 ''were''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1398114 ''fixed'']<br />
<br />
<br />
=== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ===<br />
<br />
* We reduced our js bundle size from 2.6 meg to 736 k<br />
* Send is working on A/B tests and adding password protection<br />
<br />
== This week I learned ==<br />
<br />
* Merge Day is at midnight Pacific (beginning of the day)<br />
* Try to get code to autoland 12 hours before Merge Day</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting&diff=1180341Firefox/Meeting2017-09-12T19:12:53Z<p>Felipc: Adding meeting notes entry for Sep-12-2017</p>
<hr />
<div>We meet biweekly to discuss development status of [[Firefox]] desktop. Please use [irc://irc.mozilla.org/%23fx-team #fx-team] or [https://mail.mozilla.org/listinfo/firefox-dev firefox-dev@mozilla.org] for communication.<br />
<br />
== Meeting Details == <br />
<br />
* Every second Tuesday @ 8:00AM Pacific <br />
{{conf|91337}}<br />
* "Firefox" Vidyo room. Guest link: https://v.mozilla.com/flex.html?roomdirect.html&key=y9ugHRmYNPZHbK8sP79zVJaIos<br />
*[irc://irc.mozilla.org/%23fx-team #fx-team] for backchannel<br />
<br />
== Meeting Notes ==<br />
[[Firefox/Meeting/Template|Template]]<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2017<br />
|-<br />
|<br />
* [https://docs.google.com/document/d/1hM9bmIdIe0PeQEB4SbU7NG3m7MmjgLJjUB7Fzr7fGEU/edit# September 26, 2017]<br />
* [[/12-Sep-2017|Sep 12, 2017]]<br />
* [[/29-Aug-2017|Aug 29, 2017]]<br />
* [[/15-Aug-2017|Aug 15, 2017]]<br />
* [[/01-Aug-2017|Aug 01, 2017]]<br />
* [[/18-Jul-2017|Jul 18, 2017]]<br />
* [[/20-Jun-2017|Jun 20, 2017]]<br />
* [[/06-Jun-2017|Jun 06, 2017]]<br />
* [[/23-May-2017|May 23, 2017]]<br />
* [[/09-May-2017|May 09, 2017]]<br />
* [[/25-Apr-2017|Apr 25, 2017]]<br />
* [[/11-Apr-2017|Apr 11, 2017]]<br />
* [[/28-Mar-2017|Mar 28, 2017]]<br />
* [[/14-Mar-2017|Mar 14, 2017]]<br />
* [[/28-Feb-2017|Feb 28, 2017]]<br />
* [[/14-Feb-2017|Feb 14, 2017]]<br />
* [[/31-Jan-2017|Jan 31, 2017]]<br />
* [[/17-Jan-2017|Jan 17, 2017]]<br />
* Jan 3, 2017 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2016<br />
|-<br />
|<br />
* [[/20-Dec-2016|Dec 20, 2016]] <br />
* Dec 6, 2016 - Cancelled due to meeting in Hawaii<br />
* [[/22-Nov-2016|Nov 22, 2016]]<br />
* [[/08-Nov-2016|Nov 08, 2016]]<br />
* [[/25-Oct-2016|Oct 25, 2016]]<br />
* [[/11-Oct-2016|Oct 11, 2016]]<br />
* [[/27-Sep-2016|Sep 27, 2016]]<br />
* [[/13-Sep-2016|Sep 13, 2016]]<br />
* [[/30-Aug-2016|Aug 30, 2016]]<br />
* [[/16-Aug-2016|Aug 16, 2016]]<br />
* [[/02-Aug-2016|Aug 02, 2016]]<br />
* [[/19-Jul-2016|Jul 19, 2016]]<br />
* [[/05-Jul-2016|Jul 05, 2016]]<br />
* Jun 21, 2016 - Cancelled due to meeting in London the week before<br />
* [[/07-Jun-2016|Jun 07, 2016]]<br />
* [[/24-May-2016|May 24, 2016]]<br />
* [[/10-May-2016|May 10, 2016]]<br />
* [[/26-Apr-2016|Apr 26, 2016]]<br />
* [[/12-Apr-2016|Apr 12, 2016]]<br />
* [[/29-Mar-2016|Mar 29, 2016]]<br />
* [[/15-Mar-2016|Mar 15, 2016]]<br />
* [[/01-Mar-2016|Mar 01, 2016]]<br />
* [[/16-Feb-2016|Feb 16, 2016]]<br />
* [[/02-Feb-2016|Feb 02, 2016]]<br />
* [[/19-Jan-2016|Jan 19, 2016]]<br />
* Jan 05, 2016 - Cancelled due to holiday recovery<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2015<br />
|-<br />
|<br />
* Dec 22, 2015 - Cancelled due to holidays<br />
* Dec 8, 2015 - Cancelled due to in-person meetings<br />
* [[/24-Nov-2015|Nov 24, 2015]]<br />
* [[/10-Nov-2015|Nov 10, 2015]]<br />
* [[/27-Oct-2015|Oct 27, 2015]]<br />
* [[/13-Oct-2015|Oct 13, 2015]]<br />
* [[/29-Sep-2015|Sep 29, 2015]]<br />
* [[/15-Sep-2015|Sep 15, 2015]]<br />
* [[/01-Sep-2015|Sep 01, 2015]]<br />
* [[/18-Aug-2015|Aug 18, 2015]]<br />
* [[/04-Aug-2015|Aug 04, 2015]]<br />
* [[/21-Jul-2015|Jul 21, 2015]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2014 <br />
|-<br />
|<br />
* [[/4-Feb-2014|Feb 04, 2014]]<br />
* [[/28-Jan-2014|Jan 28, 2014]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2013 <br />
|-<br />
|<br />
* [[/17-Dec-2013|December 17, 2013]]<br />
* [[/10-Dec-2013|December 10, 2013]]<br />
* [[/3-Dec-2013|December 3, 2013]]<br />
* [[/19-Nov-2013|November 19, 2013]]<br />
* [[/12-Nov-2013|November 12, 2013]]<br />
* [[/5-Nov-2013|November 5, 2013]]<br />
* [[/29-Oct-2013|October 29, 2013]]<br />
* [[/22-Oct-2013|October 22, 2013]]<br />
* [[/15-Oct-2013|October 15, 2013]]<br />
* [[/1-Oct-2013|October 1, 2013]]<br />
* [[/24-Sep-2013|September 24, 2013]]<br />
* [[/17-Sep-2013|September 17, 2013]]<br />
* [[/10-Sep-2013|September 10, 2013]]<br />
* [[/03-Sep-2013|September 3, 2013]]<br />
* [[/27-Aug-2013|August 27, 2013]]<br />
* [[/20-Aug-2013|August 20, 2013]]<br />
* [[/13-Aug-2013|August 13, 2013]]<br />
* [[/6-Aug-2013|August 6, 2013]]<br />
* [[/30-Jul-2013|July 30, 2013]]<br />
* [[/23-Jul-2013|July 23, 2013]]<br />
* [[/16-Jul-2013|July 16, 2013]]<br />
* [[/9-Jul-2013|July 9, 2013]]<br />
* [[/2-Jul-2013|July 2, 2013]]<br />
* [[/18-Jun-2013|June 18, 2013]]<br />
* [[/11-Jun-2013|June 11, 2013]]<br />
* [[/4-Jun-2013|June 4, 2013]]<br />
* [[/28-May-2013|May 28, 2013]]<br />
* [[/21-May-2013|May 21, 2013]]<br />
* [[/14-May-2013|May 14, 2013]]<br />
* [[/7-May-2013|May 7, 2013]]<br />
* [[/30-Apr-2013|Apr 30, 2013]]<br />
* [[/23-Apr-2013|Apr 23, 2013]]<br />
* [[/16-Apr-2013|Apr 16, 2013]]<br />
* [[/9-Apr-2013|Apr 9, 2013]]<br />
* [[/2-Apr-2013|Apr 2, 2013]]<br />
* [[/26-Mar-2013|Mar 26, 2013]]<br />
* [[/19-Mar-2013|Mar 19, 2013]]<br />
* [[/12-Mar-2013|Mar 12, 2013]]<br />
* [[/5-Mar-2013|Mar 5, 2013]]<br />
* [[/26-Feb-2013|Feb 26, 2013]]<br />
* [[/19-Feb-2013|Feb 19, 2013]]<br />
* [[/12-Feb-2013|Feb 12, 2013]]<br />
* [[/5-Feb-2013|Feb 5, 2013]]<br />
* [[/22-Jan-2013|Jan 22, 2013]]<br />
* [[/15-Jan-2013|Jan 15, 2013]]<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
|}<br />
<br />
{| class="wikitable collapsible collapsed" style="width: 100%"<br />
! 2012 <br />
|-<br />
|<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
* [[/18-Dec-2012|Dec 18, 2012]]<br />
* [[/11-Dec-2012|Dec 11, 2012]]<br />
* [[/4-Dec-2012|Dec 4, 2012]]<br />
* [[/27-Nov-2012|Nov 27, 2012]]<br />
* [[/20-Nov-2012|Nov 20, 2012]]<br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/12-Sep-2017&diff=1180340Firefox/Meeting/12-Sep-20172017-09-12T19:11:40Z<p>Felipc: Fixing brackets</p>
<hr />
<div>== General Topics / Roundtable ==<br />
<br />
(tips/tricks/FYI, productivity improvements, industry news)<br />
<br />
* Changes coming up for [https://groups.google.com/forum/#!topic/mozilla.dev.platform/orG6w-gmMEk ''Firefox localization'']<br />
** Starting with 57, string IDs need to be unique across channels, so across 57 and 58 to start with<br />
** Tests will come<br />
<br />
== Friends of the Firefox team ==<br />
<br />
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)<br />
<br />
<br />
=== Resolved bugs (excluding employees): [https://mzl.la/2gYQnDR ''https://mzl.la/2gYQnDR''] ===<br />
More than one bug fixed:<br />
<br />
* :Perry Jiang<br />
* Cosm<br />
* Kevin Jones<br />
* Rob Wu [:robwu]<br />
* Simon Lindholm<br />
* Steve Armand<br />
* Tomislav Jovanovic :zombie<br />
* Tushar Saini (:shatur)<br />
* akriti verma<br />
* flyingrub<br />
<br />
=== New contributors (🌟 = First Patch!) ===<br />
<br />
* 🌟 kiril made it so that we [https://bugzilla.mozilla.org/show_bug.cgi?id=366945 ''don’t attempt to load URLs stored in the clipboard when middle-clicking on the content area''] on Linux. This is an 11 year old bug!<br />
* Steve Armand [https://bugzilla.mozilla.org/show_bug.cgi?id=1343843 ''got rid of a file we were accidentally packaging''] for ~10 years, [https://bugzilla.mozilla.org/show_bug.cgi?id=1390644 ''updated a label''] in the “Show tabs from other devices” menu, and [https://bugzilla.mozilla.org/show_bug.cgi?id=1392981 ''removed some pages from about:about'']<br />
* 🌟 Adrian Wielgosik cleaned up our code by [https://bugzilla.mozilla.org/show_bug.cgi?id=1387356 ''getting rid of a bunch of deprecated sidebar functions'']<br />
* akriti verma got rid of [https://bugzilla.mozilla.org/show_bug.cgi?id=1392699 ''some old unnecessary tab image override code''] and also [https://bugzilla.mozilla.org/show_bug.cgi?id=1394137 ''made it so that we don’t change the “Go” button colour''] when hovering, as per the Photon spec!<br />
* 🌟 Cosm [https://bugzilla.mozilla.org/show_bug.cgi?id=1395956 ''updated a bunch of in-tree links''] to the new home for our source documentation, and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1396795 ''got rid of an unnecessary variable''] in our MAR library<br />
* 🌟 ljbousfield [https://bugzilla.mozilla.org/show_bug.cgi?id=1391168 ''fixed how extension IDs are stored''] in the tab.mutedInfo WebExtension API (they were the internal UUIDs instead of the actual WebExtension IDs)<br />
* 🌟 Rei Colina [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updated some strings to match the Photon spec''] in our new Page Action menu<br />
* 🌟 Vedant Chakravadhanula [https://bugzilla.mozilla.org/show_bug.cgi?id=1396975 ''updated some label styling''] in Customize Mode to be more consistent with its surroundings<br />
<br />
<br />
<br />
== Project Updates ==<br />
<br />
=== Add-ons ===<br />
<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1377733 ''discarded property''] to the Tab object in the tabs API.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1293853 ''support for separators''] to the bookmarks API.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1322060 ''setWindowValue and setTabValue''] to the sessions API.<br />
* Introduced a [https://bugzilla.mozilla.org/show_bug.cgi?id=1356543 ''clipboard API with a setImageData function''] which allows for images to be copied to the clipboard.<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1364972 ''browserSettings function to control image animation behaviour''].<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1341305 ''devtools API to register an extension sidebar for the inspector panel''].<br />
* Added a l[https://bugzilla.mozilla.org/show_bug.cgi?id=1397383 ''oadReplace option to tabs.update''] which replaces the current page in the tab’s history with the newly loaded page.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1322308 ''browserSettings functions to read the current values of the home page and new tab page''], and know whether they are being controlled by an extension.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1255894 ''filtering streaming response data via webRequest API''].<br />
* Lots of performance fixes, bug fixes and code cleanup!<br />
<br />
=== Activity Stream ===<br />
<br />
<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3369 ''Highlights Section''] with [https://github.com/mozilla/activity-stream/pull/3398 ''more diversity'']<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3395 ''Top Sites improvements''] (soon with more [https://bugzilla.mozilla.org/show_bug.cgi?id=1352459 ''rich icons''], thanks mak!)<br />
* Added [https://github.com/mozilla/activity-stream/pull/3359 ''Prerendering''] support for faster about:home hero element timing<br />
* Started third Shield study, preffing on Activity Stream for Tier1+2 countries in 56 Beta<br />
* Working with PI to ensure about:home + Activity Stream doesn’t regress startup<br />
** Also discussing with Product on [https://bugzilla.mozilla.org/show_bug.cgi?id=1395961 ''desired focus when starting Firefox'']<br />
* Working through remaining [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aopen%20label%3Afx57%20label%3AP1%20 ''17 fx57 P1 issues'']<br />
** [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 A][https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 dditional perf telemetry]<br />
** Turning on about:home and prerendering<br />
** NSFW filtering<br />
<br />
<br />
=== Browser Architecture ===<br />
<br />
* Problems with XBL have been [https://mozilla.github.io/firefox-browser-architecture/text/0005-problems-with-xbl.html ''documented'']<br />
* A [https://bugzilla.mozilla.org/show_bug.cgi?id=1397874 ''de-XBL meta bug''] exists<br />
* An architecture review process is [https://mozilla.github.io/firefox-browser-architecture/text/0006-architecture-review-process.html ''being developed'']<br />
* Check out our last [https://mozilla.github.io/firefox-browser-architecture/posts/2017-08-24-browser-architecture-newsletter-2.html ''newsletter'']!<br />
<br />
=== Electrolysis (e10s) ===<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1393638 ''Bug 1393638''] - E10s-multi (4 processes) being increased to 100% on Release 55<br />
<br />
=== [https://wiki.mozilla.org/Firefox_Core_Engineering ''Firefox Core Engineering''] ===<br />
<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1390703 ''Bug 1390703''] - Flash Click-to-Play being increased to 25% on Release 55, (hopefully) shortly followed to 100%<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1397562 ''Bug 1397562''] - Update staging is now disabled on OSX and Linux (update staging was disabled on Windows in bug 1397562).<br />
<br />
** This is in response to what we think may be an issue with e10s sandboxing.<br />
** This is why you may suddenly be seeing a flash of the “Nightly is applying updates” (like in [https://bugzilla.mozilla.org/show_bug.cgi?id=1398641 ''bug 1398641'']).<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1380252 ''Bug 1380252''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1380254 ''bug 1380254''] - Optimized data in crash reports and crash ping processing.<br />
* Open call for ideas/investigation on [https://bugzilla.mozilla.org/show_bug.cgi?id=1276488 ''bug 1276488''] -- suspected omnijar corruption, but not much to go on.<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Features/Form_Autofill ''Form Autofill''] ===<br />
<br />
<br />
* QE Signoff on Address Autofill given for 56 (en-US in the US)<br />
* Verifying telemetry data<br />
* Fixed:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395019 ''(Form Autofill) Support filling in &quot;cc-given-name&quot;, &quot;cc-additional-name&quot; and &quot;cc-family-name&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1371232 ''(Creditcard Autofill) Collect information on how many times did users apply credit card autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1341569 ''(Form Autofill) Collect information on how much time users spent on page with forms (w/wo form autofill)'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397090 ''(Form Autofill) Manage credit cards dialog should have the ability to mask card numbers again after they are shown'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1382548 ''Sending message that cannot be cloned at FormAutofillContent.jsm:161:6'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395173 ''(Form Autofill) Autofill stops working after switching between two forms'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394704 ''(Form Autofill) Preferences shows the duplicated records after records changed while the address dialog is opening'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397116 ''(Form Autofill) Tune the height of form autofill dropdown item from 29px to 30px'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394854 ''(Form Autofill) Recognize &quot;United States&quot; as &quot;United States&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1377006 ''(Doorhanger) Alternative main action button styling for form autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1392528 ''(Form Autofill) Ignore autocomplete=off attr for the credit card fields'']<br />
* In Progress:<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395122 ''(Form Autofill) Decrypt credit card numbers before syncing to server and re-encrypt them after syncing back'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1386922 ''(Form Autofill) Add &quot;Learn more&quot; links to SUMO pages in preferences'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397088 ''(Form Autofill) Fix manage addresses / credit cards line height problem'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395028 ''(Form Autofill) Add credit card sync checkbox in its doorhanger'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1398101 ''(Form Autofill) Credit card autofill doesn't work on some of the main shopping sites'']<br />
** Overall: Polishing address and credit card autofill<br />
<br />
=== Lint ===<br />
<br />
* [https://eslint.org/docs/rules/generator-star-spacing G][https://eslint.org/docs/rules/generator-star-spacing enerator-star-spacing] enabled across the tree.<br />
* ESLint enabled for [https://bugzilla.mozilla.org/show_bug.cgi?id=1394820 DownloadIntegration.jsm]'' ''<br />
<br />
=== Photon ===<br />
<br />
==== Performance ====<br />
<br />
* For 57 we had to disable tab warming when hovering tabs because it caused more regressions than we are comfortable fixing for 57. We are now planning to ship this significant perf improvement in 58.<br />
* All the significant performance improvements we are still working on at this point are at risk for 57 because we are trying to avoid risk.<br />
* Our [http://astithas.com/perm/photon-perf/ ''dashboards''] show very good wins on all things we measure when comparing 55 to 57. Eg. startup is about 50% faster in 57 than it was in 55!<br />
<br />
==== Structure ====<br />
<br />
* Screenshots integration is now on nightly!<br />
* Mike (de Boer) added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1354532 ''Downloads subview to the library panel'']<br />
* Drew fixed a bunch of issues relating to the [https://bugzilla.mozilla.org/show_bug.cgi?id=1378560 ''ordering''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1388589 ''appearance''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1395154 ''behaviour''] of the [https://bugzilla.mozilla.org/show_bug.cgi?id=1396053 ''page action''] button and [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''its''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1386745 ''items'']<br />
* Rei Colina helped us out by [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updating some of the page action panel labels'']<br />
* Various aspects of panels now look better.<br />
* We’ll be relanding the [https://bugzilla.mozilla.org/show_bug.cgi?id=1397447 ''autohiding download button''] behaviour today, but this time with a switch to turn it off.<br />
* Only 1 other MVP bug left - [https://bugzilla.mozilla.org/show_bug.cgi?id=1374749 ''updated panel subview animations''] - which has r+ and is close to landing on central.<br />
* Various other polish bugs got fixed!<br />
<br />
==== Animation ====<br />
<br />
* Investigation ongoing into [https://bugzilla.mozilla.org/show_bug.cgi?id=1397092 ''bug 1397092''] - high cpu usage possibly caused by new 60fps tab loading indicator<br />
* Fatter download progressbar [https://bugzilla.mozilla.org/show_bug.cgi?id=1387557 ''bug 1387557''] in for review, is last animation feature planned for 57<br />
* Polishing, please report any glitches you see<br />
<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
<br />
* Location / Address Bar:<br />
** The Firefox / Location Bar component in Bugzilla has been renamed to Address Bar to be consistent with Preferences<br />
** The Search Bar has [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416 ''been moved to the Customization Palette''] for new profiles! This exciting change also caused interesting [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416#c45 ''Talos improvements''] to tart, sessionrestore and paint.<br />
** The latest [https://bugzilla.mozilla.org/show_bug.cgi?id=1387245 ''Unified Search Study''] testing different Address Bar results mixtures is live in Beta, will end on 26th of September<br />
** Thanks to the Network team, Speculative Connections don’t risk anymore to [https://bugzilla.mozilla.org/show_bug.cgi?id=910207 ''open a Client Certificate Selection dialog'']. The patch will be uplifted to 56.<br />
** To avoid overlapping with the onboarding experience on about pages, the [https://bugzilla.mozilla.org/show_bug.cgi?id=1384050 ''Search Suggestions notification won’t be shown anymore when opening home/newtab page''], but only when the user explicitly focuses or clicks the location bar (or types into it).<br />
** Fixed an [https://bugzilla.mozilla.org/show_bug.cgi?id=1385374 ''apparent keyboard trap when the Search Suggestions hint was shown'']<br />
** The Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''dropdown icon is not shown anymore while the user is typing'']<br />
** Dão made the Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1390359 ''show a search icon on about:newtab, about:home, about:blank'']<br />
** Simon Lindholm contributed another patch to [https://bugzilla.mozilla.org/show_bug.cgi?id=1393486 ''improve the Address Bar querying time'']<br />
* Places:<br />
** The bookmarks toolbar, when visible, now [https://bugzilla.mozilla.org/show_bug.cgi?id=1392081 ''consumes less memory and starts up faster''], especially for users with a lot of bookmarks on it<br />
** Hector Zhao added a [https://bugzilla.mozilla.org/show_bug.cgi?id=658245 ''pref to always open bookmarks in a new tab'']<br />
** Fixed [https://bugzilla.mozilla.org/show_bug.cgi?id=1394801 ''various''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1391166 ''regressions''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395994 ''with''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1396888 ''Places''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397387 ''Async''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397545 ''Transactions'']<br />
* Misc:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1383955 ''Some''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1384130 ''intermittent''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395082 ''tests''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395784 ''were''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1398114 ''fixed'']<br />
<br />
<br />
=== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ===<br />
<br />
* We reduced our js bundle size from 2.6 meg to 736 k<br />
* Send is working on A/B tests and adding password protection<br />
<br />
== This week I learned ==<br />
<br />
* Merge Day is at midnight Pacific (beginning of the day)<br />
* Try to get code to autoland 12 hours before Merge Day</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/12-Sep-2017&diff=1180339Firefox/Meeting/12-Sep-20172017-09-12T19:10:39Z<p>Felipc: Creating page</p>
<hr />
<div>== General Topics / Roundtable ==<br />
<br />
(tips/tricks/FYI, productivity improvements, industry news)<br />
<br />
* Changes coming up for [https://groups.google.com/forum/#!topic/mozilla.dev.platform/orG6w-gmMEk ''Firefox localization'']<br />
** Starting with 57, string IDs need to be unique across channels, so across 57 and 58 to start with<br />
** Tests will come<br />
<br />
== Friends of the Firefox team ==<br />
<br />
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)<br />
<br />
<br />
=== Resolved bugs (excluding employees): [https://mzl.la/2gYQnDR ''https://mzl.la/2gYQnDR''] ===<br />
More than one bug fixed:<br />
<br />
* :Perry Jiang<br />
* Cosm<br />
* Kevin Jones<br />
* Rob Wu [:robwu]<br />
* Simon Lindholm<br />
* Steve Armand<br />
* Tomislav Jovanovic :zombie<br />
* Tushar Saini (:shatur)<br />
* akriti verma<br />
* flyingrub<br />
<br />
=== New contributors (🌟 = First Patch!) ===<br />
<br />
* 🌟 kiril made it so that we [https://bugzilla.mozilla.org/show_bug.cgi?id=366945 ''don’t attempt to load URLs stored in the clipboard when middle-clicking on the content area''] on Linux. This is an 11 year old bug!<br />
* Steve Armand [https://bugzilla.mozilla.org/show_bug.cgi?id=1343843 ''got rid of a file we were accidentally packaging''] for ~10 years, [https://bugzilla.mozilla.org/show_bug.cgi?id=1390644 ''updated a label''] in the “Show tabs from other devices” menu, and [https://bugzilla.mozilla.org/show_bug.cgi?id=1392981 ''removed some pages from about:about'']<br />
* 🌟 Adrian Wielgosik cleaned up our code by [https://bugzilla.mozilla.org/show_bug.cgi?id=1387356 ''getting rid of a bunch of deprecated sidebar functions'']<br />
* akriti verma got rid of [https://bugzilla.mozilla.org/show_bug.cgi?id=1392699 ''some old unnecessary tab image override code''] and also [https://bugzilla.mozilla.org/show_bug.cgi?id=1394137 ''made it so that we don’t change the “Go” button colour''] when hovering, as per the Photon spec!<br />
* 🌟 Cosm [https://bugzilla.mozilla.org/show_bug.cgi?id=1395956 ''updated a bunch of in-tree links''] to the new home for our source documentation, and then [https://bugzilla.mozilla.org/show_bug.cgi?id=1396795 ''got rid of an unnecessary variable''] in our MAR library<br />
* 🌟 ljbousfield [https://bugzilla.mozilla.org/show_bug.cgi?id=1391168 ''fixed how extension IDs are stored''] in the tab.mutedInfo WebExtension API (they were the internal UUIDs instead of the actual WebExtension IDs)<br />
* 🌟 Rei Colina [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updated some strings to match the Photon spec''] in our new Page Action menu<br />
* 🌟 Vedant Chakravadhanula [https://bugzilla.mozilla.org/show_bug.cgi?id=1396975 ''updated some label styling''] in Customize Mode to be more consistent with its surroundings<br />
<br />
<br />
<br />
== Project Updates ==<br />
<br />
=== Add-ons ===<br />
<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1377733 ''discarded property''] to the Tab object in the tabs API.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1293853 ''support for separators''] to the bookmarks API.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1322060 ''setWindowValue and setTabValue''] to the sessions API.<br />
* Introduced a [https://bugzilla.mozilla.org/show_bug.cgi?id=1356543 ''clipboard API with a setImageData function''] which allows for images to be copied to the clipboard.<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1364972 ''browserSettings function to control image animation behaviour''].<br />
* Added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1341305 ''devtools API to register an extension sidebar for the inspector panel''].<br />
* Added a l[https://bugzilla.mozilla.org/show_bug.cgi?id=1397383 ''oadReplace option to tabs.update''] which replaces the current page in the tab’s history with the newly loaded page.<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1322308 ''browserSettings functions to read the current values of the home page and new tab page''], and know whether they are being controlled by an extension.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1255894 ''filtering streaming response data via webRequest API''].<br />
* Lots of performance fixes, bug fixes and code cleanup!<br />
<br />
=== Activity Stream ===<br />
<br />
<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3369 ''Highlights Section''] with [https://github.com/mozilla/activity-stream/pull/3398 ''more diversity'']<br />
* Landed [https://github.com/mozilla/activity-stream/pull/3395 ''Top Sites improvements''] (soon with more [https://bugzilla.mozilla.org/show_bug.cgi?id=1352459 ''rich icons''], thanks mak!)<br />
* Added [https://github.com/mozilla/activity-stream/pull/3359 ''Prerendering''] support for faster about:home hero element timing<br />
* Started third Shield study, preffing on Activity Stream for Tier1+2 countries in 56 Beta<br />
* Working with PI to ensure about:home + Activity Stream doesn’t regress startup<br />
** Also discussing with Product on [https://bugzilla.mozilla.org/show_bug.cgi?id=1395961 ''desired focus when starting Firefox'']<br />
* Working through remaining [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aopen%20label%3Afx57%20label%3AP1%20 ''17 fx57 P1 issues'']<br />
** [https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 A][https://github.com/mozilla/activity-stream/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Afx57%20label%3Ap1%20label%3Areporting%20-label%3A%22has%20pr%22%20 dditional perf telemetry]<br />
** Turning on about:home and prerendering<br />
** NSFW filtering<br />
<br />
<br />
=== Browser Architecture ===<br />
<br />
* Problems with XBL have been [https://mozilla.github.io/firefox-browser-architecture/text/0005-problems-with-xbl.html ''documented'']<br />
* A [https://bugzilla.mozilla.org/show_bug.cgi?id=1397874 ''de-XBL meta bug''] exists<br />
* An architecture review process is [https://mozilla.github.io/firefox-browser-architecture/text/0006-architecture-review-process.html ''being developed'']<br />
* Check out our last [https://mozilla.github.io/firefox-browser-architecture/posts/2017-08-24-browser-architecture-newsletter-2.html ''newsletter'']!<br />
<br />
=== Electrolysis (e10s) ===<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1393638 ''Bug 1393638''] - E10s-multi (4 processes) being increased to 100% on Release 55<br />
<br />
=== [https://wiki.mozilla.org/Firefox_Core_Engineering ''Firefox Core Engineering''] ===<br />
<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1390703 ''Bug 1390703''] - Flash Click-to-Play being increased to 25% on Release 55, (hopefully) shortly followed to 100%<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1397562 ''Bug 1397562''] - Update staging is now disabled on OSX and Linux (update staging was disabled on Windows in bug 1397562).<br />
<br />
** This is in response to what we think may be an issue with e10s sandboxing.<br />
** This is why you may suddenly be seeing a flash of the “Nightly is applying updates” (like in [https://bugzilla.mozilla.org/show_bug.cgi?id=1398641 ''bug 1398641'']).<br />
<br />
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1380252 ''Bug 1380252''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1380254 ''bug 1380254''] - Optimized data in crash reports and crash ping processing.<br />
* Open call for ideas/investigation on [https://bugzilla.mozilla.org/show_bug.cgi?id=1276488 ''bug 1276488''] -- suspected omnijar corruption, but not much to go on.<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Features/Form_Autofill ''Form Autofill''] ===<br />
<br />
<br />
* QE Signoff on Address Autofill given for 56 (en-US in the US)<br />
* Verifying telemetry data<br />
* Fixed:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395019 ''(Form Autofill) Support filling in &quot;cc-given-name&quot;, &quot;cc-additional-name&quot; and &quot;cc-family-name&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1371232 ''[Creditcard Autofill] Collect information on how many times did users apply credit card autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1341569 ''(Form Autofill) Collect information on how much time users spent on page with forms (w/wo form autofill)'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397090 ''(Form Autofill) Manage credit cards dialog should have the ability to mask card numbers again after they are shown'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1382548 ''Sending message that cannot be cloned at FormAutofillContent.jsm:161:6'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395173 ''(Form Autofill) Autofill stops working after switching between two forms'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394704 ''(Form Autofill) Preferences shows the duplicated records after records changed while the address dialog is opening'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395519 ''(Form Autofill) Data Loss in Saved Addresses when submitting to update from a form'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397116 ''(Form Autofill) Tune the height of form autofill dropdown item from 29px to 30px'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1394854 ''(Form Autofill) Recognize &quot;United States&quot; as &quot;United States&quot;'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1377006 ''[Doorhanger] Alternative main action button styling for form autofill'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1392528 ''(Form Autofill) Ignore autocomplete=off attr for the credit card fields'']<br />
* In Progress:<br />
<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395122 ''(Form Autofill) Decrypt credit card numbers before syncing to server and re-encrypt them after syncing back'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1386922 ''(Form Autofill) Add &quot;Learn more&quot; links to SUMO pages in preferences'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1397088 ''(Form Autofill) Fix manage addresses / credit cards line height problem'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1395028 ''(Form Autofill) Add credit card sync checkbox in its doorhanger'']<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1398101 ''(Form Autofill) Credit card autofill doesn't work on some of the main shopping sites'']<br />
** Overall: Polishing address and credit card autofill<br />
<br />
=== Lint ===<br />
<br />
* [https://eslint.org/docs/rules/generator-star-spacing G][https://eslint.org/docs/rules/generator-star-spacing enerator-star-spacing] enabled across the tree.<br />
* ESLint enabled for [https://bugzilla.mozilla.org/show_bug.cgi?id=1394820 DownloadIntegration.jsm]'' ''<br />
<br />
=== Photon ===<br />
<br />
==== Performance ====<br />
<br />
* For 57 we had to disable tab warming when hovering tabs because it caused more regressions than we are comfortable fixing for 57. We are now planning to ship this significant perf improvement in 58.<br />
* All the significant performance improvements we are still working on at this point are at risk for 57 because we are trying to avoid risk.<br />
* Our [http://astithas.com/perm/photon-perf/ ''dashboards''] show very good wins on all things we measure when comparing 55 to 57. Eg. startup is about 50% faster in 57 than it was in 55!<br />
<br />
==== Structure ====<br />
<br />
* Screenshots integration is now on nightly!<br />
* Mike (de Boer) added a [https://bugzilla.mozilla.org/show_bug.cgi?id=1354532 ''Downloads subview to the library panel'']<br />
* Drew fixed a bunch of issues relating to the [https://bugzilla.mozilla.org/show_bug.cgi?id=1378560 ''ordering''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1388589 ''appearance''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1395154 ''behaviour''] of the [https://bugzilla.mozilla.org/show_bug.cgi?id=1396053 ''page action''] button and [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''its''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1386745 ''items'']<br />
* Rei Colina helped us out by [https://bugzilla.mozilla.org/show_bug.cgi?id=1395167 ''updating some of the page action panel labels'']<br />
* Various aspects of panels now look better.<br />
* We’ll be relanding the [https://bugzilla.mozilla.org/show_bug.cgi?id=1397447 ''autohiding download button''] behaviour today, but this time with a switch to turn it off.<br />
* Only 1 other MVP bug left - [https://bugzilla.mozilla.org/show_bug.cgi?id=1374749 ''updated panel subview animations''] - which has r+ and is close to landing on central.<br />
* Various other polish bugs got fixed!<br />
<br />
==== Animation ====<br />
<br />
* Investigation ongoing into [https://bugzilla.mozilla.org/show_bug.cgi?id=1397092 ''bug 1397092''] - high cpu usage possibly caused by new 60fps tab loading indicator<br />
* Fatter download progressbar [https://bugzilla.mozilla.org/show_bug.cgi?id=1387557 ''bug 1387557''] in for review, is last animation feature planned for 57<br />
* Polishing, please report any glitches you see<br />
<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
<br />
* Location / Address Bar:<br />
** The Firefox / Location Bar component in Bugzilla has been renamed to Address Bar to be consistent with Preferences<br />
** The Search Bar has [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416 ''been moved to the Customization Palette''] for new profiles! This exciting change also caused interesting [https://bugzilla.mozilla.org/show_bug.cgi?id=1387416#c45 ''Talos improvements''] to tart, sessionrestore and paint.<br />
** The latest [https://bugzilla.mozilla.org/show_bug.cgi?id=1387245 ''Unified Search Study''] testing different Address Bar results mixtures is live in Beta, will end on 26th of September<br />
** Thanks to the Network team, Speculative Connections don’t risk anymore to [https://bugzilla.mozilla.org/show_bug.cgi?id=910207 ''open a Client Certificate Selection dialog'']. The patch will be uplifted to 56.<br />
** To avoid overlapping with the onboarding experience on about pages, the [https://bugzilla.mozilla.org/show_bug.cgi?id=1384050 ''Search Suggestions notification won’t be shown anymore when opening home/newtab page''], but only when the user explicitly focuses or clicks the location bar (or types into it).<br />
** Fixed an [https://bugzilla.mozilla.org/show_bug.cgi?id=1385374 ''apparent keyboard trap when the Search Suggestions hint was shown'']<br />
** The Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1389554 ''dropdown icon is not shown anymore while the user is typing'']<br />
** Dão made the Address Bar [https://bugzilla.mozilla.org/show_bug.cgi?id=1390359 ''show a search icon on about:newtab, about:home, about:blank'']<br />
** Simon Lindholm contributed another patch to [https://bugzilla.mozilla.org/show_bug.cgi?id=1393486 ''improve the Address Bar querying time'']<br />
* Places:<br />
** The bookmarks toolbar, when visible, now [https://bugzilla.mozilla.org/show_bug.cgi?id=1392081 ''consumes less memory and starts up faster''], especially for users with a lot of bookmarks on it<br />
** Hector Zhao added a [https://bugzilla.mozilla.org/show_bug.cgi?id=658245 ''pref to always open bookmarks in a new tab'']<br />
** Fixed [https://bugzilla.mozilla.org/show_bug.cgi?id=1394801 ''various''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1391166 ''regressions''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395994 ''with''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1396888 ''Places''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397387 ''Async''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1397545 ''Transactions'']<br />
* Misc:<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1383955 ''Some''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1384130 ''intermittent''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395082 ''tests''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1395784 ''were''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1398114 ''fixed'']<br />
<br />
<br />
=== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ===<br />
<br />
* We reduced our js bundle size from 2.6 meg to 736 k<br />
* Send is working on A/B tests and adding password protection<br />
<br />
== This week I learned ==<br />
<br />
* Merge Day is at midnight Pacific (beginning of the day)<br />
* Try to get code to autoland 12 hours before Merge Day</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting&diff=1180258Firefox/Meeting2017-09-12T01:16:33Z<p>Felipc: Adding Aug-29-2017</p>
<hr />
<div>We meet biweekly to discuss development status of [[Firefox]] desktop. Please use [irc://irc.mozilla.org/%23fx-team #fx-team] or [https://mail.mozilla.org/listinfo/firefox-dev firefox-dev@mozilla.org] for communication.<br />
<br />
== Meeting Details == <br />
<br />
* Every second Tuesday @ 8:00AM Pacific <br />
{{conf|91337}}<br />
* "Firefox" Vidyo room. Guest link: https://v.mozilla.com/flex.html?roomdirect.html&key=y9ugHRmYNPZHbK8sP79zVJaIos<br />
*[irc://irc.mozilla.org/%23fx-team #fx-team] for backchannel<br />
<br />
== Meeting Notes ==<br />
[[Firefox/Meeting/Template|Template]]<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2017<br />
|-<br />
|<br />
* [https://docs.google.com/document/d/1hM9bmIdIe0PeQEB4SbU7NG3m7MmjgLJjUB7Fzr7fGEU/edit# September 12, 2017]<br />
* [[/29-Aug-2017|Aug 29, 2017]]<br />
* [[/15-Aug-2017|Aug 15, 2017]]<br />
* [[/01-Aug-2017|Aug 01, 2017]]<br />
* [[/18-Jul-2017|Jul 18, 2017]]<br />
* [[/20-Jun-2017|Jun 20, 2017]]<br />
* [[/06-Jun-2017|Jun 06, 2017]]<br />
* [[/23-May-2017|May 23, 2017]]<br />
* [[/09-May-2017|May 09, 2017]]<br />
* [[/25-Apr-2017|Apr 25, 2017]]<br />
* [[/11-Apr-2017|Apr 11, 2017]]<br />
* [[/28-Mar-2017|Mar 28, 2017]]<br />
* [[/14-Mar-2017|Mar 14, 2017]]<br />
* [[/28-Feb-2017|Feb 28, 2017]]<br />
* [[/14-Feb-2017|Feb 14, 2017]]<br />
* [[/31-Jan-2017|Jan 31, 2017]]<br />
* [[/17-Jan-2017|Jan 17, 2017]]<br />
* Jan 3, 2017 - Cancelled due to holidays<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2016<br />
|-<br />
|<br />
* [[/20-Dec-2016|Dec 20, 2016]] <br />
* Dec 6, 2016 - Cancelled due to meeting in Hawaii<br />
* [[/22-Nov-2016|Nov 22, 2016]]<br />
* [[/08-Nov-2016|Nov 08, 2016]]<br />
* [[/25-Oct-2016|Oct 25, 2016]]<br />
* [[/11-Oct-2016|Oct 11, 2016]]<br />
* [[/27-Sep-2016|Sep 27, 2016]]<br />
* [[/13-Sep-2016|Sep 13, 2016]]<br />
* [[/30-Aug-2016|Aug 30, 2016]]<br />
* [[/16-Aug-2016|Aug 16, 2016]]<br />
* [[/02-Aug-2016|Aug 02, 2016]]<br />
* [[/19-Jul-2016|Jul 19, 2016]]<br />
* [[/05-Jul-2016|Jul 05, 2016]]<br />
* Jun 21, 2016 - Cancelled due to meeting in London the week before<br />
* [[/07-Jun-2016|Jun 07, 2016]]<br />
* [[/24-May-2016|May 24, 2016]]<br />
* [[/10-May-2016|May 10, 2016]]<br />
* [[/26-Apr-2016|Apr 26, 2016]]<br />
* [[/12-Apr-2016|Apr 12, 2016]]<br />
* [[/29-Mar-2016|Mar 29, 2016]]<br />
* [[/15-Mar-2016|Mar 15, 2016]]<br />
* [[/01-Mar-2016|Mar 01, 2016]]<br />
* [[/16-Feb-2016|Feb 16, 2016]]<br />
* [[/02-Feb-2016|Feb 02, 2016]]<br />
* [[/19-Jan-2016|Jan 19, 2016]]<br />
* Jan 05, 2016 - Cancelled due to holiday recovery<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2015<br />
|-<br />
|<br />
* Dec 22, 2015 - Cancelled due to holidays<br />
* Dec 8, 2015 - Cancelled due to in-person meetings<br />
* [[/24-Nov-2015|Nov 24, 2015]]<br />
* [[/10-Nov-2015|Nov 10, 2015]]<br />
* [[/27-Oct-2015|Oct 27, 2015]]<br />
* [[/13-Oct-2015|Oct 13, 2015]]<br />
* [[/29-Sep-2015|Sep 29, 2015]]<br />
* [[/15-Sep-2015|Sep 15, 2015]]<br />
* [[/01-Sep-2015|Sep 01, 2015]]<br />
* [[/18-Aug-2015|Aug 18, 2015]]<br />
* [[/04-Aug-2015|Aug 04, 2015]]<br />
* [[/21-Jul-2015|Jul 21, 2015]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2014 <br />
|-<br />
|<br />
* [[/4-Feb-2014|Feb 04, 2014]]<br />
* [[/28-Jan-2014|Jan 28, 2014]]<br />
|}<br />
<br />
{| class="wikitable collapsible" style="width: 100%"<br />
! 2013 <br />
|-<br />
|<br />
* [[/17-Dec-2013|December 17, 2013]]<br />
* [[/10-Dec-2013|December 10, 2013]]<br />
* [[/3-Dec-2013|December 3, 2013]]<br />
* [[/19-Nov-2013|November 19, 2013]]<br />
* [[/12-Nov-2013|November 12, 2013]]<br />
* [[/5-Nov-2013|November 5, 2013]]<br />
* [[/29-Oct-2013|October 29, 2013]]<br />
* [[/22-Oct-2013|October 22, 2013]]<br />
* [[/15-Oct-2013|October 15, 2013]]<br />
* [[/1-Oct-2013|October 1, 2013]]<br />
* [[/24-Sep-2013|September 24, 2013]]<br />
* [[/17-Sep-2013|September 17, 2013]]<br />
* [[/10-Sep-2013|September 10, 2013]]<br />
* [[/03-Sep-2013|September 3, 2013]]<br />
* [[/27-Aug-2013|August 27, 2013]]<br />
* [[/20-Aug-2013|August 20, 2013]]<br />
* [[/13-Aug-2013|August 13, 2013]]<br />
* [[/6-Aug-2013|August 6, 2013]]<br />
* [[/30-Jul-2013|July 30, 2013]]<br />
* [[/23-Jul-2013|July 23, 2013]]<br />
* [[/16-Jul-2013|July 16, 2013]]<br />
* [[/9-Jul-2013|July 9, 2013]]<br />
* [[/2-Jul-2013|July 2, 2013]]<br />
* [[/18-Jun-2013|June 18, 2013]]<br />
* [[/11-Jun-2013|June 11, 2013]]<br />
* [[/4-Jun-2013|June 4, 2013]]<br />
* [[/28-May-2013|May 28, 2013]]<br />
* [[/21-May-2013|May 21, 2013]]<br />
* [[/14-May-2013|May 14, 2013]]<br />
* [[/7-May-2013|May 7, 2013]]<br />
* [[/30-Apr-2013|Apr 30, 2013]]<br />
* [[/23-Apr-2013|Apr 23, 2013]]<br />
* [[/16-Apr-2013|Apr 16, 2013]]<br />
* [[/9-Apr-2013|Apr 9, 2013]]<br />
* [[/2-Apr-2013|Apr 2, 2013]]<br />
* [[/26-Mar-2013|Mar 26, 2013]]<br />
* [[/19-Mar-2013|Mar 19, 2013]]<br />
* [[/12-Mar-2013|Mar 12, 2013]]<br />
* [[/5-Mar-2013|Mar 5, 2013]]<br />
* [[/26-Feb-2013|Feb 26, 2013]]<br />
* [[/19-Feb-2013|Feb 19, 2013]]<br />
* [[/12-Feb-2013|Feb 12, 2013]]<br />
* [[/5-Feb-2013|Feb 5, 2013]]<br />
* [[/22-Jan-2013|Jan 22, 2013]]<br />
* [[/15-Jan-2013|Jan 15, 2013]]<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
|}<br />
<br />
{| class="wikitable collapsible collapsed" style="width: 100%"<br />
! 2012 <br />
|-<br />
|<br />
* [[/8-Jan-2013|Jan 8, 2013]]<br />
* [[/18-Dec-2012|Dec 18, 2012]]<br />
* [[/11-Dec-2012|Dec 11, 2012]]<br />
* [[/4-Dec-2012|Dec 4, 2012]]<br />
* [[/27-Nov-2012|Nov 27, 2012]]<br />
* [[/20-Nov-2012|Nov 20, 2012]]<br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Firefox/Meeting/29-Aug-2017&diff=1180257Firefox/Meeting/29-Aug-20172017-09-12T01:15:02Z<p>Felipc: Notes from Aug-29-2017</p>
<hr />
<div><br />
<br />
=== General Topics / Roundtable ===<br />
<br />
(tips/tricks/FYI, productivity improvements, industry news)<br />
<br />
<ul><br />
<li><p>[bgrins]</p><br />
<ul><br />
<li><blockquote><p>For talos pushes, this syntax should be sufficient to prevent unnecessary builds and also the ‘more runs are needed warning’ on perfherder: ./mach try -b o -p linux64,macosx64,win32,win64 -u none -t all --rebuild-talos 6</p></blockquote><br />
<ul><br />
<li>Can also include --artifact if you only have frontend changes but aren’t using artifact builds locally</li></ul><br />
</li><br />
<li><blockquote><p>Browser Toolbox can be opened on [https://groups.google.com/d/msg/firefox-dev/L5D3YSBxqh8/pjonQLutCwAJ ''more than one instance'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Friends of the Firefox team ===<br />
<br />
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)<br />
<br />
<ul><br />
<li><p>Resolved bugs (excluding employees): [https://mzl.la/2xJHvoO ''https://mzl.la/2xJHvoO''] </p><br />
<ul><br />
<li><blockquote><p>More than one bug fixed: </p></blockquote><br />
<ul><br />
<li>:prathiksha</li><br />
<li>Dan Banner</li><br />
<li>Henry Chang [:hchang]</li><br />
<li>Kate Ustiuzhanina</li><br />
<li>Masatoshi Kimura [:emk]</li><br />
<li>Simon Lindholm</li><br />
<li>Tim Nguyen :ntim</li><br />
<li>flyingrub</li></ul><br />
</li><br />
<li><blockquote><p>New contributors (🌟 = First Patch!) </p></blockquote><br />
<ul><br />
<li></li></ul><br />
</li></ul><br />
</li></ul><br />
<br />
=== Project Updates ===<br />
<br />
=== Add-ons ===<br />
<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1344519 ''API events for containers''] (ContextualIdentities) for onUpdated, onCreated and onRemoved<br />
* More fixes for[https://bugzilla.mozilla.org/show_bug.cgi?id=webext-perf ][https://bugzilla.mozilla.org/show_bug.cgi?id=webext-perf ''webextension performance''] issues.<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1390153 ''suggest_url to chrome_settings_overrides.search_provider''].<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1238314 ''tab.openerTabId''].<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1392003 ''estimatedEndTime in DownloadItem''].<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1341126 ''openPopup to browserAction and pageAction, and open/close to sidebarAction''].<br />
* Code was added to [https://bugzilla.mozilla.org/show_bug.cgi?id=1354602 ''allow extensions which use containers to enable container support automatically''].<br />
* Added [https://bugzilla.mozilla.org/show_bug.cgi?id=1356334 ''UI for flagging long running WebExtension scripts and providing the option to stop them''].<br />
* Enhanced themes to allow for [https://bugzilla.mozilla.org/show_bug.cgi?id=1389465 ''changing urlbar and search input background and text color''].<br />
* Added support for [https://bugzilla.mozilla.org/show_bug.cgi?id=1378882 ''setting the default search engine to a built in engine''].<br />
* Introduced a [https://bugzilla.mozilla.org/show_bug.cgi?id=1332144 ''new Find API''], which includes find, highlightResults and removeHighlighting.<br />
* Added an API for [https://bugzilla.mozilla.org/show_bug.cgi?id=1345158 ''privacy.websites.trackingProtectionMode''].<br />
* Various fixes for [https://bugzilla.mozilla.org/show_bug.cgi?id=1368527 ''webRequest''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1389495 ''sidebars''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1388289 ''proxies''].<br />
<br />
=== Activity Stream ===<br />
<br />
* Pref’d on to 10% of Beta 56 en-US (opt-out Shield study), next is 50%, then lots of locales including with Pocket in Germany (https://docs.google.com/document/d/1wizj95pDfb4YTc2kDxTJn5TIm7SwGetAsn1e0OgeOh4/edit)<br />
* Activity Stream on about:home landed pref’d off (for now) in Nightly<br />
* Crucial site summary metadata ([https://bugzilla.mozilla.org/show_bug.cgi?id=1352459 ''hi-res icons''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1393924 ''article thumbnail/description'']) patch is currently in review. Landing site summary metadata will improve Top Sites and un-block landing Highlights section<br />
* Activity Stream - Test Pilot (2016/05/11 - 2017/08/28 RIP) 😔 🏴<br />
<br />
=== Electrolysis (e10s) ===<br />
<br />
* No updates this week.<br />
<br />
=== [https://wiki.mozilla.org/Firefox_Core_Engineering ''Firefox Core Engineering''] ===<br />
<br />
* No updates this week - everything since the 15th is still in progress.<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Features/Form_Autofill ''Form Autofill''] ===<br />
<br />
<ul><br />
<li>Address autofill with sync is now enabled on beta 56 for en-US builds in the US!</li><br />
<li>Focus is on polishing address autofill and feature completion for credit cards</li><br />
<li><p>Fixed</p><br />
<ul><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1385179 ''Unhide addresses sync engine by default'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1386959 ''(Form Autofill) Add probe for form autofill availability'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1391149 ''(Form Autofill) The hint message always shows &quot;Also autofills name&quot; even no name-related fields saved in storage'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1388152 ''Duplicate addresses stored because of numeric state'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371149 ''(Form Autofill) Warn users on credit card fields that are not secure'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1380910 ''(Form Autofill) Consider showing the intersection of results' categories and form's categories instead of the all categories in also fill note'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1337314 ''(Form Autofill) Handle credit card number encryption while normalizing'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1383058 ''(Form Autofill) Always adopt autocomplete attribute and the info should not be changed.'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1388238 ''Create MasterPassword.jsm to provide async wrappers around crypto-SDR and handle existing dialogs'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1390816 ''(Form Autofill) Add addresses sync checkbox in first time saving doorhanger'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371139 ''(Form Autofill) Implement credit card dropdown style'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1361237 ''(Form Autofill) Implement offline heuristics to determine Credit Card related fields'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371145 ''(Form Autofill) Properly fill cc-exp/cc-exp-month/cc-exp-year into a select element'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1379600 ''(Form Autofill) Support credit card record filling and previewing in FormAutofillHandler'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1389413 ''(Form Autofill) Decrypt credit card number for filtering when MasterPassword is disabled'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1370764 ''(Form Autofill) Dialog to add/edit/view a credit card profile'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1370766 ''(Form Autofill) Allow users to enable/disable credit card autofill and launch the list dialog in about:preferences'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1370768 ''(Form Autofill) Allow users to view the list of credit card profiles'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371113 ''(Form Autofill) Prompt a door hanger to ask users whether to save a credit card profile when users submit a form'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1393745 ''(Form Autofill) Wrap up masterpassword decrypt API in FormAutofillHandler'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1394075 ''(Form Autofill) Preview decrypted credit card numbers when MasterPassword isn't set'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1389998 ''Various wpt autocomplete tests are going to permafail when Gecko 57 merges to Beta on 2017-09-18'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1387988 ''(Form Autofill) Optimize &quot;findLabelElements&quot; function'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1384779 ''Intermittent browser/extensions/formautofill/test/browser/browser_autocomplete_marked_detached_tab.js | Uncaught exception - popup should be open - timed out after 50 tries.'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1347084 ''[a11y] Feedback needed for Form Autofill UX design'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1390757 ''(Form Autofill) Enable credit card feature according to &quot;extensions.formautofill.creditCards.enabled&quot; pref'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1390433 ''Uplift Form Autofill system add-on for 56 beta'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1392975 ''(Form Autofill) Improve the performance before calling identifyAutofillFields'']</p></blockquote></li></ul><br />
</li><br />
<li><p>In Progress</p><br />
<ul><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1367322 ''Form Autofill preferences should support search function'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371232 ''[Creditcard Autofill] Collect information on how many times did users apply credit card autofill'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1352330 ''(Form Autofill) - Record one for each non-empty field at submission time (keyed by fieldName)'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1341569 ''(Form Autofill) Collect information on how much time users spent on page with forms (w/wo form autofill)'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1371239 ''[Creditcard Autofill] Collect information on how many users save creditcard information'']</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1386922 ''(Form Autofill) Add &quot;Learn more&quot; links to SUMO pages in preferences'']</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Lint ===<br />
<br />
* ESLint now enabled for toolkit/components/osfile<br />
* [https://eslint.org/docs/rules/no-caller ''No-caller''] now enabled across the tree (disallow deprecated calls to arguments.callee / arguments.caller)<br />
<br />
=== Photon ===<br />
<br />
==== Performance ====<br />
<br />
* mconley [https://bugzilla.mozilla.org/show_bug.cgi?id=1387088 ''added a reflow test''] to the AwesomeBar for when it accepts key inputs<br />
* mconley also landed a patch that [https://bugzilla.mozilla.org/show_bug.cgi?id=1385453 ''pre-emptively warms up tabs''] that we think we’re likely to switch to: we are doing this on mouse hover on tabs, and early telemetry data shows a spectacular reduction of tab switch times<br />
* Florian is working on reducing flickering when [https://bugzilla.mozilla.org/show_bug.cgi?id=1372518 ''opening''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1373331 ''new windows''], when [https://bugzilla.mozilla.org/show_bug.cgi?id=1391704 ''moving tabs between windows''], and [https://bugzilla.mozilla.org/show_bug.cgi?id=1379587 ''when opening tabs'']. When opening a new browser window, the toolbar doesn’t flicker anymore, and gandalf is working on [https://bugzilla.mozilla.org/show_bug.cgi?id=1362774 ''eliminating the ‘new tab’ tab title that still flickers''].<br />
* Paolo landed a patch to [https://bugzilla.mozilla.org/show_bug.cgi?id=1358792 ''remove one of the slow sync reflows of the awesomebar panel''], and Kris has updated patches to [https://bugzilla.mozilla.org/show_bug.cgi?id=1356532 ''limit sync reflows in the awesomebar to at most one per frame''].<br />
* Evelyn made it so that when we tell the content process to load a URI, [https://bugzilla.mozilla.org/show_bug.cgi?id=1383299 ''we first initiate a speculative connection in the parent process''] so that we don’t have to wait for the content process to request network access for the connection to be set up.<br />
<br />
==== Structure ====<br />
<br />
<ul><br />
<li><p>A [https://bugzilla.mozilla.org/show_bug.cgi?id=1377968 ''“Bookmarking Tools”''] subview has been added to the Library button so you can easily get to the bookmarks toolbar, sidebar, and bookmarks menu button</p><br />
<ul><br />
<li><blockquote><p>[https://mikeconley.ca/blog/wp-content/uploads/2017/08/bookmarking-tools.gif.pagespeed.ce.lJV_jtBGee.gif ''Here's an animated GIF!'']</p></blockquote></li></ul><br />
</li><br />
<li><p>You might have noticed that the downloads button [https://bugzilla.mozilla.org/show_bug.cgi?id=1371765 ''will only appear when downloads exist''] and isn't movable anymore. This is something we're still tinkering with, so stay tuned.</p><br />
<ul><br />
<li><blockquote><p>A Downloads view will be added to the Library soon, which is part of the grander strategy. Again, please stay tuned!</p></blockquote></li></ul><br />
</li><br />
<li>We made the [https://bugzilla.mozilla.org/show_bug.cgi?id=1366844 ''sync animation prettier'']! [https://twitter.com/ryanfeeley/status/897202877697052673 ''Check it out!'']</li><br />
<li>The [https://bugzilla.mozilla.org/show_bug.cgi?id=1378560 ''order of items''] in the URLBar has been updated.</li><br />
<li>Keyboard navigation in Photon-style panels now [https://bugzilla.mozilla.org/show_bug.cgi?id=1366207 ''remembers the last selected item''].</li><br />
<li>Many more polish bugs landed or in progress.</li></ul><br />
<br />
==== Animation ====<br />
<br />
* Landed the new [https://bugzilla.mozilla.org/show_bug.cgi?id=1352119 ''tab loading indicator''] and [https://bugzilla.mozilla.org/show_bug.cgi?id=1392157 ''the “burst” across the tab''] when the page load is complete.<br />
* A new [https://bugzilla.mozilla.org/show_bug.cgi?id=1387042 ''“Copy URL” and “Send to Device” confirmation popup''] landed on autoland and should be merged to mozilla-central very soon. <br />
* Various fixes to animations of [https://bugzilla.mozilla.org/show_bug.cgi?id=1384953 ''the library button''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1392622 ''tab loading indicator in RTL''], [https://bugzilla.mozilla.org/show_bug.cgi?id=1386029 ''pocket icon corruption''].<br />
<br />
==== Visuals ====<br />
<br />
<ul><br />
<li><p>[https://bugzilla.mozilla.org/buglist.cgi?status_whiteboard_type=allwordssubstr&chfield=resolution&query_format=advanced&chfieldfrom=2017-08-15&chfieldvalue=FIXED&status_whiteboard=photon-visual&list_id=13750535 ''Polish polish polish'']:</p><br />
<ul><br />
<li><blockquote><p>Sidebar stuff landed, followups</p></blockquote></li><br />
<li><blockquote><p>New notification bars</p></blockquote></li><br />
<li><blockquote><p>Updated media icon</p></blockquote></li><br />
<li><blockquote><p>Updates to misc. icons and tab styling</p></blockquote></li></ul><br />
</li></ul><br />
<br />
==== Onboarding ====<br />
<br />
* No updates this week.<br />
<br />
==== Preferences ====<br />
<br />
* No updates this week.<br />
<br />
=== Platform Audibles ===<br />
<br />
* No updates this week.<br />
<br />
=== Privacy/Security ===<br />
<br />
* We are getting more (and more interesting) data from the Improved Privacy Settings shield study:<br /><br />
[https://sql.telemetry.mozilla.org/dashboard/shield-study-improve-privacy-settings ''https://sql.telemetry.mozilla.org/dashboard/shield-study-improve-privacy-settings'']<br />
* tl;dr - Tracking Protection is very promising: very low breakage. Peter Dolanjski is arranging an opt-out follow-up study to measure acquisition &amp; retention for users with tracking protection enabled.<br />
* First-Party Isolation is the most problematic - higher breakage, and lots of login failures which are associated with users disabling the study.<br />
* Talk to Luke Crouch (groovecoder on IRC, or email) if you have any specific questions!<br />
* Prathiksha has been working on making the hostname more visible in permissions prompts (by making it bold, [https://bugzilla.mozilla.org/show_bug.cgi?id=1369482 ''bug 1369482''])<br />
<br />
=== [https://wiki.mozilla.org/Firefox/Search ''Search and Navigation''] ===<br />
<br />
<ul><br />
<li><p>Location Bar:</p><br />
<ul><br />
<li><blockquote><p>Search suggestions now [https://bugzilla.mozilla.org/show_bug.cgi?id=1181644 ''include one historical suggestion''] from form history</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1320301 ''The Location bar can now interrupt an ongoing sqlite query''] when starting a new search. Since all the searches are serialized, this means we can react faster to user input</p></blockquote></li><br />
<li><blockquote><p>Evelyn [https://bugzilla.mozilla.org/show_bug.cgi?id=1355451 ''enabled Speculative connections on mousedown''] for the location bar results</p></blockquote></li><br />
<li><blockquote><p>A new contributor, Simon Lindholm, provided various patches to speed up the location bar searches (some still in-flight):</p></blockquote><br />
<ul><br />
<li>[https://bugzilla.mozilla.org/show_bug.cgi?id=1387780 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1387780'']</li><br />
<li>[https://bugzilla.mozilla.org/show_bug.cgi?id=1388331 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1388331'']</li><br />
<li>[https://bugzilla.mozilla.org/show_bug.cgi?id=1393486 ''https://bugzilla.mozilla.org/show_bug.cgi?id=1393486'']</li></ul><br />
</li></ul><br />
</li><br />
<li><p>Search</p><br />
<ul><br />
<li><blockquote><p>The Follow-on Search Add-on has been [https://bugzilla.mozilla.org/show_bug.cgi?id=1393883 ''updated to v0.9.3''] to fix problems with the recent changes to Google</p></blockquote></li></ul><br />
</li><br />
<li><p>Places:</p><br />
<ul><br />
<li><blockquote><p>Continued squashing Places Async Transactions [https://bugzilla.mozilla.org/show_bug.cgi?id=885246 ''regression''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1392189 ''bugs'']</p></blockquote></li><br />
<li><blockquote><p>Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1316348 ''notification issue''] so that we can[https://bugzilla.mozilla.org/show_bug.cgi?id=1371679 '' skip some notification''] in Places Views</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1388687 ''Improved performance of the Recently Bookmarked''] menu entries so that it doesn’t slow down bookmarks removal</p></blockquote></li><br />
<li><blockquote><p>Ryan [https://bugzilla.mozilla.org/show_bug.cgi?id=1347452 ''contributed a patch to generate guids more efficiently''] on bookmarks creation</p></blockquote></li><br />
<li><blockquote><p>A user reported his bookmarks toolbar taking more than 200MB of memory. Working on a [https://bugzilla.mozilla.org/show_bug.cgi?id=1392081 ''patch to reduce memory usage and speed up populating it''] that should help when opening a new window (included the first one).</p></blockquote></li></ul><br />
</li><br />
<li><p>Downloads and Apps</p><br />
<ul><br />
<li><blockquote><p>Fixed a [https://bugzilla.mozilla.org/show_bug.cgi?id=1139913 ''bug with the placeholder file of blocked downloads'']</p></blockquote></li><br />
<li><blockquote><p>Handlers.json is now [https://bugzilla.mozilla.org/show_bug.cgi?id=1389443 ''read asynchronously'']</p></blockquote></li></ul><br />
</li><br />
<li><p>Misc:</p><br />
<ul><br />
<li><blockquote><p>Sqlite has been [https://bugzilla.mozilla.org/show_bug.cgi?id=1386401 ''updated''] [https://bugzilla.mozilla.org/show_bug.cgi?id=1393526 ''twice''] in a week, to fix a memory leak discovered by Thunderbird in the new version</p></blockquote></li><br />
<li><blockquote><p>Investigating a [https://bugzilla.mozilla.org/show_bug.cgi?id=1393440 ''more responsive way to chunk results''] from mozStorage async statements, may help most consumers.</p></blockquote></li><br />
<li><blockquote><p>[https://bugzilla.mozilla.org/show_bug.cgi?id=1392070 ''StopIteration has been removed from Sqlite.jsm'']. The onRow callback now gets a canceler function as second argument.</p></blockquote></li></ul><br />
</li></ul><br />
<br />
=== Sync / Firefox Accounts ===<br />
<br />
* No updates this week.<br />
<br />
=== [https://wiki.mozilla.org/Test_Pilot ''Test Pilot''] ===<br />
<br />
* Screenshots has been rolled out to 5% of release users.<br />
* Activity Stream is now completely out of Test Pilot.<br />
* The Test Pilot website is now fully off l20n and on fluent-react, fixing some long standing issues.<br />
* We have added an l10n branch which will allow us to better batch strings going into and out of pontoon. Strings on master will not go to pontoon until master has been merged to l10n, and strings from pontoon will not go to master until l10n has been merged into master.<br />
<br />
=== Web Payments ===<br />
<br />
* Read-only: (No major updates since Jonathan’s internship is done. MattN has been trying to fix test failures in one patch that blocks others from landing.)<br />
<br />
=== This week I learned ===<br />
<br />
* [mikedeboer] “SVG when loaded as-a-document (in iframe, etc.) can run script and load external resources. When it's loaded as-an-image (&lt;img&gt;, 'background-image', etc.) it is blocked from running script or loading external resources.” - :jwatt</div>Felipchttps://wiki.mozilla.org/index.php?title=QA/Flash_SHIELD_Experiment&diff=1163468QA/Flash SHIELD Experiment2017-02-21T18:18:21Z<p>Felipc: Risk analysis</p>
<hr />
<div>'''Revision History'''<br />
<br />
This section describes the modifications that have been made to this wiki page. A new row has been completed each time the content of this document is updated (small corrections for typographical errors do not need to be recorded). The description of the modification contains the differences from the prior version, in terms of what sections were updated and to what extent.<br />
<br />
{| class="wikitable" style="width:60%"<br />
|-<br />
! Date !! Version !! Author !! Description <br />
|-<br />
| 12/08/2016 || 1.0 || Stefan Georgiev || Created first draft<br />
|-<br />
|}<br />
<br />
= Overview =<br />
== Purpose ==<br />
Most of the browsers are planning to move to click-to-activate (CTA). But before Firefox prepare for this shift, we want to understand the impact on the user and the approach we should take.<br />
<br />
== Scope ==<br />
This wiki details the testing that will be performed by the project team for the Flash SHIELD Experiment project. It defines the overall testing requirements and provides an integrated view of the project test activities. Its purpose is to document:<br />
<br />
* Goals<br />
Block Flash by default<br /><br />
Keep users secure from Flash exploits<br />
* How testing will be performed<br />
Manual<br />
<br />
== Ownership ==<br />
<br />
Product Manager: Benjamin Smedberg<br />
Engineering Lead: Felipe Gomes<br />
Engineering Manager: David Durst<br />
Test Lead: [mailto:stefan.georgiev@softvision.com Stefan Georgiev]<br />
<br />
= Testing summary = <br />
== Scope of Testing ==<br />
=== In Scope ===<br />
This feature will be tested manually on Windows, OSX and Linux operating systems.<br />
<br />
=== Out of Scope ===<br />
Android & iOS Devices<br /><br />
Exclude users without Flash<br /><br />
Exclude users who don’t have the targeted gecko version<br />
<br />
= Requirements for testing =<br />
== Environments ==<br />
Windows 7<br /><br />
Windows 8.1<br /><br />
Windows 10<br /><br />
Ubuntu/Linux<br /><br />
Macintosh 10.12<br /><br />
<br />
<br />
== Channel dependent settings (configs) and environment setups ==<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:auto"><br />
<br />
=== Post Beta / Release ===<br />
<div class="mw-collapsible-content"><br />
</div><br />
</div><br />
<br />
= Test Strategy = <br />
== Test Objectives ==<br />
URLs<br /><br />
Lists<br /><br />
Heuristics<br /><br />
<br />
== Builds ==<br />
<br />
* Links for Test builds: <br />
#Latest Mozilla Test Builds [[]]<br />
<br />
== Test Execution Schedule ==<br />
The following table identifies the anticipated testing period available for test execution.<br />
{| class="wikitable" style="width:60%"<br />
|-<br />
! Project phase !! Start Date !! End Date<br />
|-<br />
| Start project <br />
|style="text-align:center;" | || <br />
|-<br />
| Study documentation/specs received from developers<br />
|style="text-align:center;" |12/06/2016 || <br />
|-<br />
| QA - Test plan creation <br />
|style="text-align:center;" | 12/08/2016 || <br />
|-<br />
| QA - Test cases/Env preparation <br />
|style="text-align:center;" | || <br />
|-<br />
| QA - Nightly Testing <br />
|style="text-align:center;" | || <br />
|-<br />
| QA - Aurora Testing<br />
|style="text-align:center;" | || <br />
|-<br />
| QA - Beta Testing <br />
|style="text-align:center;" | || <br />
|-<br />
| Release Date <br />
|style="text-align:center;" | || <br />
|}<br />
<br />
== Testing Tools ==<br />
Detail the tools to be used for testing, for example see the following table:<br />
{| class="wikitable" style="width:50%"<br />
|-<br />
! Process !! Tool<br />
|-<br />
| Test plan creation || Mozilla wiki<br />
|-<br />
| Test case creation || [https://testrail.stage.mozaws.net/index.php TestRail]/ Google docs<br />
|-<br />
| Test case execution || [https://testrail.stage.mozaws.net/index.php TestRail]<br />
|-<br />
| Bugs management || Bugzilla<br />
|}<br />
<br />
= Status = <br />
== Overview ==<br />
Track the dates and build number where feature was released to Nightly<br />
TBD<br />
<br />
== Risk analysis ==<br />
* Breaking websites:<br />
** Top destinations websites: Facebook, Yahoo, Google, Gmail, Google Docs, etc.<br />
** Top media websites: Youtube, Vimeo, Spotify, some news websites with video<br />
** Top Flash-based game websites: Kongregate, etc.<br />
<br />
* Verify that no site gets a broken or "transparent" ad on top of content that never loads<br />
<br />
* Verify that no site gets in a forever-loading state due to this change<br />
<br />
* Verify that no top-site hangs or significantly slows down Firefox due to this change<br />
<br />
* Verify that no data from the experiment is missing or incorrect<br />
<br />
* Check that heuristics are correctly applied<br />
<br />
* Check that whitelist/blocklist works correctly<br />
<br />
= References =<br />
* List and links for specs - Specs [https://docs.google.com/document/d/1sYp0DNioPA5iF3iw9LHGf1uN5B5AgdCu7jJxAh0MiqA/edit#]<br />
<br />
* Meta bug - Bug 1335232 [https://bugzilla.mozilla.org/show_bug.cgi?id=1335232 ]<br />
<br />
= Testcases = <br />
== Overview ==<br />
Summary of testing scenarios<br />
<br />
1. URL<br />
<br />
*Verify allowed list is applied - ''Flash is included in the navigator.plugins, Flash instances are activated immediately''<br />
<br />
*Verify blocked list is applied - ''Flash is not included in the navigator.plugins, any attempt to use Flash use fallback content''<br />
<br />
*Verify for all essential Flash, fallback (non-Flash) format is used to shown the content<br />
<br />
*Verify Flash content is set to Click-to-active<br />
<br />
*Verify allowed/denied list is set to geography-specific<br />
<br />
*User is able to enable the Flash content<br />
<br />
*User is able to block the Flash content <br />
<br />
*Browsers send correct telemetry data to the server <br />
<br />
*User has explicitly set "Disallow Flash" for this site - ''Flash content should be "click to activate" / Flash is present in the navigator.plugins''<br />
<br />
*User has explicitly set to "Allow Flash" for this site - ''Flash is present in the navigator.plugins / Flash elements are automatically activated''<br />
<br />
2. Lists<br />
<br />
*Check whitelisted domain - ''page loads; Flash is not set to CTA - check iframes against the list''<br />
<br />
*Check blacklisted domain - ''page loads; Flash is not loaded - don't check iframes against the list''<br />
<br />
*Check non-whitelisted/non-blacklisted domain page loads - ''check all iframes against the list''<br />
<br />
3. Heuristics<br />
<br />
*Flash has acceptable fallback content - ''Show the fallback content''<br />
<br />
*Flash doesn't have acceptable fallback content <br />
** ''If it pass the heuristics - set Flash to CTA''<br />
** ''If it doesn't pass the heuristics - don't load the Flash content''<br />
<br />
== Test Areas ==<br />
{| class="wikitable" style="width:80%"<br />
|-<br />
! Test Areas !! Covered !! Details<br />
|-<br />
| Private Window <br />
|style="text-align:center;" | || Certain tests are performed in a private window.<br />
|-<br />
| Multi-Process Enabled <br />
|style="text-align:center;" | || Enabled by default <br />
|-<br />
| Multi-process Disabled <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Theme (high contrast) <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| '''UI''' <br />
|| || <br />
|-<br />
| Mouse-only operation <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Keyboard-only operation <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Display (HiDPI) <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Interraction (scroll, zoom) <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Usable with a screen reader <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Usability and/or discoverability testing <br />
|style="text-align:center;" | || Is this feature user friendly<br />
|-<br />
| RTL build testing <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| '''Help/Support''' <br />
|| || <br />
|-<br />
| Help/support interface required <br />
|style="text-align:center;" | || Make sure link to support/help page exist and is easy reachable.<br />
|-<br />
| Support documents planned(written) <br />
|style="text-align:center;" | || Make sure support documents are written and are correct.<br />
|-<br />
| '''Install/Upgrade''' <br />
|| || <br />
|-<br />
| Feature upgrades/downgrades data as expected <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Does sync work across upgrades <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Requires install testing <br />
|style="text-align:center;" | || Default installation with Test Build<br />
|-<br />
| Affects first-run or onboarding <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
<br />
|-<br />
| ''' Enterprise ''' <br />
|| ||<br />
|-<br />
| Enterprise administration <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Network proxies/autoconfig <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| ESR behavior changes <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Locked preferences <br />
|style="text-align:center;" | || Not applicable<br />
<br />
|-<br />
| ''' Data Monitoring ''' <br />
|| || <br />
|-<br />
| Temporary or permanent telemetry monitoring <br />
|style="text-align:center;" | || List of error conditions to monitor<br />
|-<br />
| Telemetry correctness testing <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Server integration testing <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Offline and server failure testing <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Load testing <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| ''' Add-ons ''' <br />
|| || <br />
|-<br />
| Addon API required? <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Comprehensive API testing <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Permissions <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Testing with existing/popular addons<br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| ''' Security ''' <br />
|| || <br />
|-<br />
| 3rd-party security review <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Privilege escalation testing<br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| Fuzzing <br />
|style="text-align:center;" | || Not applicable<br />
|-<br />
| ''' Web Compatibility ''' <br />
|| || <br />
|-<br />
| Testing against target sites <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| Survey of many sites for compatibility <br />
|style="text-align:center;" | || To be tested<br />
|-<br />
| ''' Interoperability ''' <br />
|| || <br />
|-<br />
| Common protocol/data format with other software: specification available. Interop testing with other common clients or servers. <br />
|style="text-align:center;" | || <br />
|-<br />
| Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS <br />
|style="text-align:center;" | || Desktop only<br />
|-<br />
| Interaction of this feature with other browser features <br />
|style="text-align:center;" | || Possible testing with other browsers<br />
|}<br />
<br />
== Test suite ==<br />
Full Test suite - [TestRail]<br />
<br />
= Bug Work =<br />
Tracking bug – meta bug 1277346 [https://bugzilla.mozilla.org/show_bug.cgi?id=1277346]<br /><br />
Tracking bug - bug 1282484 [https://bugzilla.mozilla.org/show_bug.cgi?id=1282484] <br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:auto"><br />
<br />
====== Bug fix verification ======<br />
<div class="mw-collapsible-content"><br />
{| class="wikitable" style="width:50%"<br />
|-<br />
! Bug No !! Summary !! Status !! Firefox Verion<br />
|-<br />
| [https://bugzilla.mozilla.org/show_bug.cgi?id= ] Empty || ||Build || <br />
|-<br />
| [https://bugzilla.mozilla.org/show_bug.cgi?id= ] Empty || ||Build || <br />
|}<br />
</div></div><br />
<br />
<div class="toccolours mw-collapsible mw-collapsed" style="width:auto"><br />
<br />
====== Logged bugs ======<br />
<div class="mw-collapsible-content"><br />
<br />
</div><br />
</div><br />
<br />
= Sign off =<br />
== Criteria ==<br />
Check list<br />
* All test cases should be executed<br />
* All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/QA)<br />
<br />
== Results ==<br />
*Link for the tests run<br />
** Daily Smoke, use template from [https://docs.google.com/spreadsheets/d/1ch0OubyOWn1W-_JLF-38nvSvVB76Wmo1hkLccEtU5hk/edit?usp=sharing link]<br />
** Full Test suite, use template from [https://docs.google.com/spreadsheets/d/1ch0OubyOWn1W-_JLF-38nvSvVB76Wmo1hkLccEtU5hk/edit?usp=sharing link]<br />
** Regression Test suite, if needed/available<br />
<br />
== Checklist ==<br />
{| class="wikitable" style="width:60%"<br />
|-<br />
! Exit Criteria !! Status !! Notes/Details<br />
|-<br />
| Testing Prerequisites (specs, use cases) <br />
| style="text-align:center;" | <br />
| style="text-align:center;" | <br />
|-<br />
| Testing Infrastructure setup <br />
|style="text-align:center;" | || <br />
|-<br />
| Test Plan Creation <br />
| style="text-align:center;" | || <br />
|-<br />
| Test Cases Creation <br />
|style="text-align:center;" | || <br />
|-<br />
| Full Functional Tests Execution <br />
|style="text-align:center;" | <br />
|style="text-align:center;" | <br />
|-<br />
| Automation Coverage ||<br />
|style="text-align:center;" | <br />
|-<br />
| Performance Testing <br />
|style="text-align:center;" | || <br />
|-<br />
| All Defects Logged || || <br />
|-<br />
| Critical/Blockers Fixed and Verified || || <br />
|-<br />
| Metrics/Telemetry|| <br />
|style="text-align:center;" | <br />
|-<br />
| QA Signoff - Nightly Release|| <br />
|style="text-align:center;" | Email to be sent <br />
|-<br />
| QA Aurora - Full Testing <br />
|style="text-align:center;" | || <br />
|-<br />
| QA Signoff - Aurora Release || <br />
|style="text-align:center;"| Email to be sent <br />
|-<br />
| QA Beta - Full Testing<br />
|style="text-align:center;" | || <br />
|-<br />
| QA Signoff - Beta Release || <br />
|style="text-align:center;" | Email to be sent <br />
|}</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-09-29&diff=1149661Electrolysis/Meetings/2016-09-292016-09-29T16:01:34Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1300411}} - user reports excessive load spinning when switching tabs with e10s in 48.0.2 release<br />
** Posted a number of GC logs from a user that I'm in touch with over e-mail. [https://bug1300411.bmoattachments.org/attachment.cgi?id=8795395 In at least one], the user was OOM'ing.<br />
** [http://analysis.telemetry.mozilla.org/ Learning how to use analysis.telemetry.mozilla.org]<br />
*** Took a snapshot of pings sent in on September 23rd, and filtered down to clients that should have e10s enabled by default<br />
*** Of these clients, a little over a quarter of them have seen at least one spinner of any length. We'll call these the "spinning clients"<br />
*** Of the spinning clients:<br />
**** ~82% of them saw a spinner of 2s or less ("low" bucket)<br />
**** ~16% of them saw a spinner between 2s and 5s ("mid" bucket)<br />
**** ~16% of them saw a spinner greater than 5s in length ("high" bucket)<br />
*** Note that there is, of course, overlap between the clients in those buckets<br />
**** ~2% of the spinning clients saw spinners in both the "mid" and "high" buckets<br />
**** ~6% of the spinning clients saw spinners in both the "low" and "high" buckets<br />
**** ~7% of the spinning clients saw spinners in both the "low" and "mid" buckets.<br />
** I think the only way we're going to grind these numbers down is by knowing exactly what the content process is doing so we can prioritize<br />
** Getting ramped up on {{bug|1303077}}<br />
* {{bug|1241459}} - [e10s] A crashed background tab does not give option to submit<br />
** TBD<br />
<br />
== chutten ==<br />
Helped out :mconley with some analysis stuff. We have a fairly good understanding of how many people are effected, but not how badly those people are effected. For instance: we know how many people are seeing spinners of various lengths... but how frequently are they seeing them?<br />
<br />
[https://gist.github.com/chutten/a17b541f6d0af2527dffc4caaf9666c4 Beta]<br />
[https://www.example.com Release (tbd)]<br />
<br />
== felipe ==<br />
* {{bug|1304164}} - Disable russian users from e10s<br />
* {{bug|1301131}} - Disable e10s if the user sees the big tab spinner too much</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-09-22&diff=1148766Electrolysis/Meetings/2016-09-222016-09-22T15:59:49Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1300411}} - user reports excessive load spinning when switching tabs with e10s in 48.0.2 release <br />
** gps pointed me at [https://randomascii.wordpress.com/2015/04/14/uiforetw-windows-performance-made-easier/ UIforETW] as a way of getting really nice, low-level cross-process profiles, using a nicer front-end for Microsoft's Event Tracing infrastructure.<br />
** [https://randomascii.wordpress.com/2015/09/01/xperf-basics-recording-a-trace-the-ultimate-easy-way/ Instructions to point users to.]<br />
** billm's patch from {{bug|1279086}} landed last week (and just made uplift!). Still waiting on Telemetry data to saturate and give us a few more days worth, but...<br />
*** [https://mzl.la/2cUicrx A nice improvement on FX_TAB_SWITCH_SPINNER_VISIBLE_LONG_MS shows up September 18th, according to Telemetry]<br />
*** [https://mzl.la/2cUibUj FX_TAB_SWITCH_SPINNER_VISIBLE_MS saw an improvement that day too, unsurprisingly]<br />
*** [https://mzl.la/2cUlESF FX_TAB_SWITCH_TOTAL_E10S_MS started to dip that day as well, which is nice]<br />
** I think billm and I are going to split up {{bug|1303077}} to try to get main thread stacks from the content process when the spinner is shown for a while.<br />
** [https://www.reddit.com/r/firefox/comments/53srkq/new_loading_icon_when_a_page_in_a_new_tab_is/ More reports of spinner on Reddit.] I'm engaging with the user.<br />
<br />
==chutten==<br />
<br />
==bytesized==<br />
* {{bug|1301452}} - (tab switcher telemetry probe test) finished and checked in.<br />
<br />
== felipe ==<br />
* {{bug|1304113}} - Change tab switching telemetry probes to be opt-out<br />
* {{bug|1304164}} - Disable e10s for russian users through the system add-on<br />
* {{bug|1301131}} - Disable e10s for users who see long tab spinner<br />
* {{bug|1297755}} - Beta 50 A/B test will all multiprocessCompatible add-ons, except TabMixPlus<br />
* {{bug|1302846}} - Add Test Pilot add-ons to e10s whitelist</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-09-15&diff=1147965Electrolysis/Meetings/2016-09-152016-09-15T16:03:42Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1298219}} - about:sessionrestore shows a crashed tab after force-quitting the machine twice<br />
** Uplifted to Aurora<br />
* {{bug|1287178}} - Refactor unsubmitted crash report handling and allow users to always send backlogged crash reports<br />
** This is landed and will make the 51 uplift.<br />
** Also landed automated testing for the notification in {{bug|1301723}}<br />
** {{bug|1301722}} - Unsubmitted crash report notification should go away if not interacted with for some period of time<br />
*** Current scheme is to give user 4 chances across 4 days to interact with notification bar. If nothing, suppress for 30 days.<br />
*** Just autolanded this morning.<br />
* {{bug|1300411}} - user reports excessive load spinning when switching tabs with e10s in 48.0.2 release<br />
** Disclaimer that I'm not a statistician<br />
** Beta telemetry data is just starting to trickle in now. Not sure we can draw any big conclusions yet.<br />
*** Looking at [https://mzl.la/2cM4fMA this Telemetry histogram], on Aurora, 95% of the telemetry submissions show a spinner of 3.43s or less.<br />
**** The 64s+ bucket is very small (0.13% of all submissions), but is non-zero. :(<br />
**** Would be really excellent to get a sense of how many users are affected by this, but my re:dash skills currently blow.<br />
** Things that will help this:<br />
*** billm's patch in {{bug|1279086}}<br />
*** {{bug|e10s-multi}}<br />
*** Analysis, looking for patterns in case we need to exclude a set of users.<br />
** Not a whole lot of success getting profiles from users, despite my repeated interactions. I filed {{bug|1301693}} to try to make this process easier.<br />
<br />
== aklotz ==<br />
* {{bug|1297549}} - a11y showstopper, got final r+ earlier this morning. Will address comments and land ASAP.<br />
* {{bug|1303060}} - Implement COM handler to reduce RPC round-trips - Main perf feature to reduce chattiness.<br />
<br />
== gsvelto ==<br />
* {{bug|1301667}} - Not strictly e10s-related but it should help preventing OOM crashes on Win32 and since running with e10s consumes more memory I think it should help more there.<br />
<br />
== felipe ==<br />
* {{bug|1297755}} - Beta 50 A/B test will all multiprocessCompatible add-ons, except TabMixPlus<br />
* {{bug|1302846}} - Add Test Pilot add-ons to e10s whitelist</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-09-15&diff=1147963Electrolysis/Meetings/2016-09-152016-09-15T16:01:46Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1298219}} - about:sessionrestore shows a crashed tab after force-quitting the machine twice<br />
** Uplifted to Aurora<br />
* {{bug|1287178}} - Refactor unsubmitted crash report handling and allow users to always send backlogged crash reports<br />
** This is landed and will make the 51 uplift.<br />
** Also landed automated testing for the notification in {{bug|1301723}}<br />
** {{bug|1301722}} - Unsubmitted crash report notification should go away if not interacted with for some period of time<br />
*** Current scheme is to give user 4 chances across 4 days to interact with notification bar. If nothing, suppress for 30 days.<br />
*** Just autolanded this morning.<br />
* {{bug|1300411}} - user reports excessive load spinning when switching tabs with e10s in 48.0.2 release<br />
** Disclaimer that I'm not a statistician<br />
** Beta telemetry data is just starting to trickle in now. Not sure we can draw any big conclusions yet.<br />
*** Looking at [https://mzl.la/2cM4fMA this Telemetry histogram], on Aurora, 95% of the telemetry submissions show a spinner of 3.43s or less.<br />
**** The 64s+ bucket is very small (0.13% of all submissions), but is non-zero. :(<br />
**** Would be really excellent to get a sense of how many users are affected by this, but my re:dash skills currently blow.<br />
** Not a whole lot of success getting profiles from users, despite my repeated interactions. I filed {{bug|1301693}} to try to make this process easier.<br />
<br />
== aklotz ==<br />
* {{bug|1297549}} - a11y showstopper, got final r+ earlier this morning. Will address comments and land ASAP.<br />
* {{bug|1303060}} - Implement COM handler to reduce RPC round-trips - Main perf feature to reduce chattiness.<br />
<br />
== gsvelto ==<br />
* {{bug|1301667}} - Not strictly e10s-related but it should help preventing OOM crashes on Win32 and since running with e10s consumes more memory I think it should help more there.<br />
<br />
== felipe ==<br />
* TBD</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Accessibility&diff=1146550Electrolysis/Accessibility2016-09-01T17:59:41Z<p>Felipc: General Prefs</p>
<hr />
<div><br />
= Overview =<br />
<br />
Accessibility clients require direct access to information about content. In non-e10s this information is queried directly using sync calls into the DOM. These calls generally arrive on the application main or UI thread and expect a response on return. With e10s, the chrome process communicate with sandboxed content through an asynchronous interface, which is incompatible with current accessibility clients. As such the Electrolysis and Accessibility Team are working on new approaches for accessibility clients.<br />
<br />
== Auto Disable Feature ==<br />
<br />
Currently electrolysis is blocked from running on Windows and OSX if recent accessibility use is detected. Blocking may be triggered by 3rd party software that isn't commonly associated with accessibility tools. Tools that can trigger disabling of electrolysis include:<br />
<br />
* Vision impaired related assistive clients (screen readers, magnifying glass clients)<br />
* Screen capture utilities (snipping tools)<br />
* Desktop automation utilities (password fillers, window shortcut clients)<br />
* Remote desktop related tools<br />
<br />
== Useful Preferences ==<br />
<br />
When electrolysis is blocked by accessibility the reason will be reported to the Browser Console at startup. Two user preferences will also be set indicating accessibility recently loaded:<br />
<br />
* <strong>accessibility.lastLoadDate</strong> - time of the last load. Electrolysis will be disabled for seven days post this time.<br />
* <strong>accessibility.loadedInLastSession</strong> - boolean indicating a recent load. Electrolysis will always be disabled if the last session used accessibility features.<br />
<br />
=== General Prefs ===<br />
<br />
* <strong>browser.tabs.remote.force-enable</strong> - Force electrolysis on regardless of accessibility use.<br />
* <strong>accessibility.force_disabled</strong> - Force disable accessibility use, useful if you run into stability issues running electrolysis. Note: if you change this pref you also need to clear the two time-related above ones in order for e10s to reactivate.<br />
<br />
=== Links ===<br />
<br />
[http://mxr.mozilla.org/mozilla-central/search?string=MultiprocessBlockPolicy%28%29 Embedded platform code] that handles e10s blocking.<br />
<br />
== Bug Lists ==<br />
<br />
Blocking rollout:<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051125&resolution=---&op_sys=All&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B All Platforms]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051129&resolution=---&op_sys=Windows&op_sys=Windows%2095&op_sys=Windows%2098&op_sys=Windows%20ME&op_sys=Windows%20NT&op_sys=Windows%202000&op_sys=Windows%20XP&op_sys=Windows%20Server%202003&op_sys=Windows%20Server%202008&op_sys=Windows%20Vista&op_sys=Windows%207&op_sys=Windows%208&op_sys=Windows%208.1&op_sys=Windows%2010&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B Windows]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051130&resolution=---&op_sys=Linux&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B Linux]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051131&resolution=---&op_sys=Mac%20OS%20X&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B OSX]<br />
<br />
= OSX and Linux =<br />
<br />
Mac and Linux currently leverage a sync IPDL chrome to sandboxed content process api that connect accessibility clients to content. Access to chrome is unchanged. Over time chrome side caching of content DOM will be added to cut down on sync communications, which can cause deadlocks.<br />
<br />
= Windows =<br />
The Windows kernel supports Asynchronous Local Procedure Calls (ALPC). ALPC is a scalable, high-performance IPC mechanism [1] that, while undocumented, is available to application software via Microsoft RPC (when using the "ncalrpc" transport). Since COM marshaling is built atop RPC, it is possible for properly configured COM proxies to take advantage of the performance that ALPC offers. Since MSAA is built atop COM, Gecko could configure its COM proxies to gain the benefits of ALPC "for free."<br />
<br />
If a11y data must first be sent from chrome to content, it must be serialized by IPDL. It would then be serialized a second time, in a different format, by COM. Direct communication between the a11y client and content allows us to eliminate the IPDL serialization.<br />
<br />
[1] Russinovich, Mark et al. Windows Internals 6ed, Part 1. Microsoft Press, 2012<br />
<br />
== A11y Client Considerations ==<br />
Given the fact that the content process is sandboxed and that e10s is a sea-change in many respects, now is a good time to review the interactions between a11y clients and Gecko. We will not be allowing DLL injection into the content process, and would prefer that this be avoided in the case of the chrome process as well. Instead, we would prefer that a11y clients stick to the COM-based MSAA interface outside of the Firefox chrome process. One major motivation for making our interface proxies work over ALPC is that ALPC was designed to support IPC for user-mode drivers. If ALPC is up to the task of supporting device drivers, we believe it will be more than sufficient for a11y IPC.<br />
<br />
Having said that, we are aware that many clients are injecting code into Firefox to process a11y events as quickly as possible; obviously ALPC will still be slower than a virtual function call to some degree. We would like to hear more from vendors about their use cases that require this injection. Perhaps we can develop additional COM interfaces to help satisfy the clients' needs and mitigate the necessity for DLL injection.<br />
<br />
== Preliminary Design ==<br />
[[File:E10sA11yCOMProxyDiagram.svg|frameless|550px|A diagram of the proposed COM Proxy implementation for a11y on Windows e10s]]<br />
<br />
(Dashed arrows represent COM atop RPC, using the ncalrpc transport.)<br />
<br />
This diagram demonstrates the state of a11y IPC connections after a content proxy has been returned to the client.<br />
<br />
=== Introduction ===<br />
We start by observing that the non-e10s implementation starts with a [https://msdn.microsoft.com/en-us/library/windows/desktop/dd373892(v=vs.85).aspx WM_GETOBJECT] message being received by a Firefox window. The message's reply is an [https://msdn.microsoft.com/en-us/library/windows/desktop/dd318466(v=vs.85).aspx IAccessible] pointer.<br />
<br />
When the WM_GETOBJECT sender is out-of-process, this IAccessible is implicitly proxied by Microsoft COM. The a11y client is not directly invoking the object's methods. Instead, the methods are being invoked via COM marshaling. Marshaling and IPC occur automatically and transparently to the caller.<br />
<br />
This mechanism will also work in the e10s case, but with the IAccessible interface being provided by content processes. Clever management of the proxy objects by the chrome process will make this entire scheme completely transparent to the a11y client: the client does not need to be aware of which process it is communicating with.<br />
<br />
=== Content Proxies ===<br />
Unlike the chrome case, COM proxies for content processes must be explicitly created. Microsoft COM provides APIs to create proxies and (de)serialize them, however this must be done with care. In order to take advantage of ALPC, the proxy for a content IAccessible must be created on a thread that has been initialized to run inside the multi-threaded apartment (MTA). Since our main thread runs in the single-threaded apartment (STA), any interaction with the "stub" (which is the server side of the proxy) must also occur on a MTA thread. Instead of calling straight into a11y APIs on the main thread, proxied calls will arrive on a background thread that is initialized for the MTA.<br />
<br />
To move data from a background thread to the main thread, we propose using a simplified IPDL protocol:<br />
* We should avoid IPDL deferred message protection for stability and performance reasons;<br />
* This protocol shall not serialize complex types. Since it is merely doing an in-process hand-off of data between threads, it should just pass pointers whenever possible (note that due to COM restrictions, any parameters that are COM interfaces will be exceptions to this);<br />
* This protocol shall match its corresponding COM interface as closely as possible.<br />
<br />
Inside Gecko, a serialized COM proxy will be encapsulated within a ProxyStream object. The ProxyStream class will be a first-class type in IPDL. The PBrowser protocol will be augmented with APIs to asynchronously transmit ProxyStream objects between chrome and content. This will allow serialized COM proxies to be moved between chrome and content processes. Once inside the chrome process, ProxyStream will deserialize the proxy and return an interface pointer that may be used in replies to WM_GETOBJECT requests. Since handling WM_GETOBJECT is synchronous, we want the proxied interfaces to be present in the chrome process ahead of time.<br />
<br />
=== Proxy Resolution ===<br />
So far we have identified the following cases where we will need to resolve proxy objects:<br />
* When DOM traversal crosses the threshold between chrome and content in either direction;<br />
* When WM_GETOBJECT specifies an object identifier that resolves to an object that resides in content. The chrome process will need to maintain a mapping from object ids to proxy interfaces.<br />
<br />
=== Reentrancy ===<br />
We need to be careful with the possibility of reentry when firing a11y events via [https://msdn.microsoft.com/en-us/library/windows/desktop/dd373603(v=vs.85).aspx NotifyWinEvent]. Provided that all interfacing with a11y clients is out-of-process, this might not be as serious a concern as originally thought, since NotifyWinEvent will return asynchronously and any incoming calls over COM interfaces will be proxied to the background MTA thread. We may encounter scenarios that we haven't yet thought of, however.</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Accessibility&diff=1146549Electrolysis/Accessibility2016-09-01T17:59:10Z<p>Felipc: Useful Preferences</p>
<hr />
<div><br />
= Overview =<br />
<br />
Accessibility clients require direct access to information about content. In non-e10s this information is queried directly using sync calls into the DOM. These calls generally arrive on the application main or UI thread and expect a response on return. With e10s, the chrome process communicate with sandboxed content through an asynchronous interface, which is incompatible with current accessibility clients. As such the Electrolysis and Accessibility Team are working on new approaches for accessibility clients.<br />
<br />
== Auto Disable Feature ==<br />
<br />
Currently electrolysis is blocked from running on Windows and OSX if recent accessibility use is detected. Blocking may be triggered by 3rd party software that isn't commonly associated with accessibility tools. Tools that can trigger disabling of electrolysis include:<br />
<br />
* Vision impaired related assistive clients (screen readers, magnifying glass clients)<br />
* Screen capture utilities (snipping tools)<br />
* Desktop automation utilities (password fillers, window shortcut clients)<br />
* Remote desktop related tools<br />
<br />
== Useful Preferences ==<br />
<br />
When electrolysis is blocked by accessibility the reason will be reported to the Browser Console at startup. Two user preferences will also be set indicating accessibility recently loaded:<br />
<br />
* <strong>accessibility.lastLoadDate</strong> - time of the last load. Electrolysis will be disabled for seven days post this time.<br />
* <strong>accessibility.loadedInLastSession</strong> - boolean indicating a recent load. Electrolysis will always be disabled if the last session used accessibility features.<br />
<br />
=== General Prefs ===<br />
<br />
* <strong>browser.tabs.remote.force-enable</strong> - Force electrolysis on regardless of accessibility use.<br />
* <strong>accessibility.force_disabled</strong> - Force disable accessibility use, useful if you run into stability issues running electrolysis. Note: if you change this pref and you also need to clear the two time-related above ones in order for e10s to reactivate.<br />
<br />
=== Links ===<br />
<br />
[http://mxr.mozilla.org/mozilla-central/search?string=MultiprocessBlockPolicy%28%29 Embedded platform code] that handles e10s blocking.<br />
<br />
== Bug Lists ==<br />
<br />
Blocking rollout:<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051125&resolution=---&op_sys=All&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B All Platforms]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051129&resolution=---&op_sys=Windows&op_sys=Windows%2095&op_sys=Windows%2098&op_sys=Windows%20ME&op_sys=Windows%20NT&op_sys=Windows%202000&op_sys=Windows%20XP&op_sys=Windows%20Server%202003&op_sys=Windows%20Server%202008&op_sys=Windows%20Vista&op_sys=Windows%207&op_sys=Windows%208&op_sys=Windows%208.1&op_sys=Windows%2010&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B Windows]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051130&resolution=---&op_sys=Linux&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B Linux]<br />
* [https://bugzilla.mozilla.org/buglist.cgi?list_id=13051131&resolution=---&op_sys=Mac%20OS%20X&status_whiteboard_type=allwordssubstr&query_format=advanced&status_whiteboard=aes%2B OSX]<br />
<br />
= OSX and Linux =<br />
<br />
Mac and Linux currently leverage a sync IPDL chrome to sandboxed content process api that connect accessibility clients to content. Access to chrome is unchanged. Over time chrome side caching of content DOM will be added to cut down on sync communications, which can cause deadlocks.<br />
<br />
= Windows =<br />
The Windows kernel supports Asynchronous Local Procedure Calls (ALPC). ALPC is a scalable, high-performance IPC mechanism [1] that, while undocumented, is available to application software via Microsoft RPC (when using the "ncalrpc" transport). Since COM marshaling is built atop RPC, it is possible for properly configured COM proxies to take advantage of the performance that ALPC offers. Since MSAA is built atop COM, Gecko could configure its COM proxies to gain the benefits of ALPC "for free."<br />
<br />
If a11y data must first be sent from chrome to content, it must be serialized by IPDL. It would then be serialized a second time, in a different format, by COM. Direct communication between the a11y client and content allows us to eliminate the IPDL serialization.<br />
<br />
[1] Russinovich, Mark et al. Windows Internals 6ed, Part 1. Microsoft Press, 2012<br />
<br />
== A11y Client Considerations ==<br />
Given the fact that the content process is sandboxed and that e10s is a sea-change in many respects, now is a good time to review the interactions between a11y clients and Gecko. We will not be allowing DLL injection into the content process, and would prefer that this be avoided in the case of the chrome process as well. Instead, we would prefer that a11y clients stick to the COM-based MSAA interface outside of the Firefox chrome process. One major motivation for making our interface proxies work over ALPC is that ALPC was designed to support IPC for user-mode drivers. If ALPC is up to the task of supporting device drivers, we believe it will be more than sufficient for a11y IPC.<br />
<br />
Having said that, we are aware that many clients are injecting code into Firefox to process a11y events as quickly as possible; obviously ALPC will still be slower than a virtual function call to some degree. We would like to hear more from vendors about their use cases that require this injection. Perhaps we can develop additional COM interfaces to help satisfy the clients' needs and mitigate the necessity for DLL injection.<br />
<br />
== Preliminary Design ==<br />
[[File:E10sA11yCOMProxyDiagram.svg|frameless|550px|A diagram of the proposed COM Proxy implementation for a11y on Windows e10s]]<br />
<br />
(Dashed arrows represent COM atop RPC, using the ncalrpc transport.)<br />
<br />
This diagram demonstrates the state of a11y IPC connections after a content proxy has been returned to the client.<br />
<br />
=== Introduction ===<br />
We start by observing that the non-e10s implementation starts with a [https://msdn.microsoft.com/en-us/library/windows/desktop/dd373892(v=vs.85).aspx WM_GETOBJECT] message being received by a Firefox window. The message's reply is an [https://msdn.microsoft.com/en-us/library/windows/desktop/dd318466(v=vs.85).aspx IAccessible] pointer.<br />
<br />
When the WM_GETOBJECT sender is out-of-process, this IAccessible is implicitly proxied by Microsoft COM. The a11y client is not directly invoking the object's methods. Instead, the methods are being invoked via COM marshaling. Marshaling and IPC occur automatically and transparently to the caller.<br />
<br />
This mechanism will also work in the e10s case, but with the IAccessible interface being provided by content processes. Clever management of the proxy objects by the chrome process will make this entire scheme completely transparent to the a11y client: the client does not need to be aware of which process it is communicating with.<br />
<br />
=== Content Proxies ===<br />
Unlike the chrome case, COM proxies for content processes must be explicitly created. Microsoft COM provides APIs to create proxies and (de)serialize them, however this must be done with care. In order to take advantage of ALPC, the proxy for a content IAccessible must be created on a thread that has been initialized to run inside the multi-threaded apartment (MTA). Since our main thread runs in the single-threaded apartment (STA), any interaction with the "stub" (which is the server side of the proxy) must also occur on a MTA thread. Instead of calling straight into a11y APIs on the main thread, proxied calls will arrive on a background thread that is initialized for the MTA.<br />
<br />
To move data from a background thread to the main thread, we propose using a simplified IPDL protocol:<br />
* We should avoid IPDL deferred message protection for stability and performance reasons;<br />
* This protocol shall not serialize complex types. Since it is merely doing an in-process hand-off of data between threads, it should just pass pointers whenever possible (note that due to COM restrictions, any parameters that are COM interfaces will be exceptions to this);<br />
* This protocol shall match its corresponding COM interface as closely as possible.<br />
<br />
Inside Gecko, a serialized COM proxy will be encapsulated within a ProxyStream object. The ProxyStream class will be a first-class type in IPDL. The PBrowser protocol will be augmented with APIs to asynchronously transmit ProxyStream objects between chrome and content. This will allow serialized COM proxies to be moved between chrome and content processes. Once inside the chrome process, ProxyStream will deserialize the proxy and return an interface pointer that may be used in replies to WM_GETOBJECT requests. Since handling WM_GETOBJECT is synchronous, we want the proxied interfaces to be present in the chrome process ahead of time.<br />
<br />
=== Proxy Resolution ===<br />
So far we have identified the following cases where we will need to resolve proxy objects:<br />
* When DOM traversal crosses the threshold between chrome and content in either direction;<br />
* When WM_GETOBJECT specifies an object identifier that resolves to an object that resides in content. The chrome process will need to maintain a mapping from object ids to proxy interfaces.<br />
<br />
=== Reentrancy ===<br />
We need to be careful with the possibility of reentry when firing a11y events via [https://msdn.microsoft.com/en-us/library/windows/desktop/dd373603(v=vs.85).aspx NotifyWinEvent]. Provided that all interfacing with a11y clients is out-of-process, this might not be as serious a concern as originally thought, since NotifyWinEvent will return asynchronously and any incoming calls over COM interfaces will be proxied to the background MTA thread. We may encounter scenarios that we haven't yet thought of, however.</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-09-01&diff=1146497Electrolysis/Meetings/2016-09-012016-09-01T15:59:42Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1298219}} - about:sessionrestore shows a crashed tab after force-quitting the machine twice<br />
** Finally figured this one out. The crash is due to a shutdown kill from the shutdown timer for a short-lived content process that is still waiting to start up.<br />
** The bug is that we're still dispatching the oop-browser-crashed event on browsers that have flipped remoteness.<br />
** I have a patch up and I'm working on a regression test.<br />
** Would be good to know how many of our shutdown kill crashes are from short-lived content processes.<br />
* {{bug|1294456}} - [e10s] After opening a tab/window Marionette hangs if any command is send which executes in the listener.js frame script <br />
** Fixed this, so our tree sheriffs are getting happier!<br />
* Going to help out with crash reporting. Specifically:<br />
** {{bug|1241459}} - [e10s] A crashed background tab does not give option to submit. This will be helpful for e10s-multi<br />
** {{bug|1287178}} - "you have an unsubmitted crash report" even though crash reporter is disabled<br />
*** Got legal sign-off to give users option to submit these automatically, thank goodness. Have a preliminary spec from UX.<br />
* Mentoring a contributor who's going through our dead CPOW intermittents and fixing them. Example: {{bug|1134307}}, {{bug|1254867}}, {{bug|1283704}}<br />
<br />
== felipe ==<br />
* {{bug|1299247}} - Increase e10s activation on the release channel to 100% of eligible users <br />
* {{bug|1297753}} - Release 49 add-ons<br />
* {{bug|1297755}} - Beta 50 add-ons</div>Felipchttps://wiki.mozilla.org/index.php?title=Add-ons/Hotfix&diff=1146075Add-ons/Hotfix2016-08-29T03:36:53Z<p>Felipc: fixing the url</p>
<hr />
<div>The add-on hotfix is a tool used to ship changes to Firefox users that don't need to be distributed under the normal update mechanism. Examples of this are configuration changes that don't justify a point release, or changes that need to be pushed to users in older versions of Firefox.<br />
<br />
Hotfix updates are automatically pushed to all Firefox users (starting from version 11).<br />
<br />
==How to develop a new hotfix==<br />
<br />
The code for the hotfixes is at https://hg.mozilla.org/releases/firefox-hotfixes/.<br />
<br />
A new hotfix will live in a top-level dir following the convention vYYYYMMDD.XX. You can start by copying one of the existing ones into a new folder. The version must be greater than the version of the previously released one. Don't forget to update the [http://hg.mozilla.org/releases/firefox-hotfixes/file/tip/README README] file (in the root srcdir) to include the bug number where the hotfix was developed and a description of what it does.<br />
<br />
Package the hotfix by running <code>HOTFIX=vYYYYMMDD.XX make package</code> in the root srcdir. This instruction can also be found in the [http://hg.mozilla.org/releases/firefox-hotfixes/file/tip/README README] file.<br />
<br />
Tips:<br />
* It's nicer to use <code>hg copy</code> to copy the folder so that the commit will display only the changes between the files.<br />
* Whenever we change a pref in a hotfix, we need to change the pref name in Firefox, otherwise users will get stuck with this custom value which won't be reset when Firefox updates<br />
<br />
== Testing the hotfix locally ==<br />
<br />
To test the hotfix locally, get the .xpi file and drag&drop it into Firefox's window.<br />
<br />
Things to look out for:<br />
<br />
* Test that the hotfix does what it is expected to do, obviously.<br />
* Test that the hotfix uninstalls itself after completing its task. Most of the hotfixes we've shipped so far performs an immediate task and uninstalls itself right afterwards, but there were some exceptions where it needs to remain installed until certain conditions are met.<br />
* Test the extension with the oldest Firefox version that it supports (minVersion), to make sure the code in the hotfix does not use any API or JS syntax that was introduced only on later versions.<br />
* Test on all target OSes.<br />
* Disable the strict compatibility checking and install the hotfix on an unsupported version to test that it does not perform its task, as expected. (The hotfix has code to check that it only runs on its target versions even with strictCompatiblity off).<br />
<br />
== Testing the hotfix on the staging server ==<br />
<br />
To test the hotfix on the staging server, get it signed and uploaded to addons.allizom.org. After that is done, do the following steps in a clean Firefox profile:<br />
<br />
If testing on a Firefox version earlier than 24, make sure you have the right signature fingerprint configured. See the Signatures section for more details.<br />
<br />
* Check if <code>extensions.hotfix.id</code> is set to firefox-hotfix@mozilla.org (it should be the default).<br />
* Set <code>extensions.logging.enabled</code> to true. This will log messages from the Add-ons Manager to the Console, and to stdout if in a debug build.<br />
* Set <code>extensions.update.interval</code> to 10.<br />
* In the pref <code>extensions.update.background.url</code> (<code>extensions.update.url</code> for Firefox < 13), change the ''versioncheck-bg.addons.mozilla.org'' part from the string with ''versioncheck.allizom.org''.<br />
* Restart Firefox and open the Add-ons Manager and the Console. Wait a while for the Add-ons Manager to check for updates (messages about it should show in the Console).<br />
** Note that there might be other pending update checks that will run before, for example an update check for the "default theme" add-on, with id={972ce4c6-7e08-4474-a285-3208198ce6fd}.<br />
** If the hotfix is not being downloaded, get the URL from the logs and check that the RDF returned at that URL contains information about the hotfix. To make this easier, see the update check section.<br />
** After a successful update check is performed, the hotfix should be downloaded and installed.<br />
* Check that the hotfix performed its action correctly.<br />
* Check that the pref <code>extensions.hotfix.lastVersion</code> was set to the correct version name of the hotfix being tested.<br />
* Check that the hotfix was not downloaded and installed to incompatible Firefox versions.<br />
* Check that it uninstalled itself after completing its task. If you have the Add-ons Manager tab open, you might need to close and re-open it for the hotfix to disappear.<br />
<br />
=== Signatures===<br />
<br />
The hotfix extension is signed and the Add-ons Manager will only install it if it matches a pinned signature, stored in the <code>extensions.hotfix.certs.1.sha1Fingerprint</code> pref.<br />
<br />
The signature has changed over time (in Firefox 16.0.2 and Firefox 24), and users with current installations were updated to the newer signatures through a hotfix itself ([https://bugzilla.mozilla.org/show_bug.cgi?id=803596 bug 803596] and [https://bugzilla.mozilla.org/show_bug.cgi?id=874513 bug 874513]).<br />
<br />
This means that a clean profile from Firefox 10 - 23 won't have the right signature from start, and it needs to be updated to proceed with the testing. The current correct value for the pref is <code>91:53:98:0C:C1:86:DF:47:8F:35:22:9E:11:C9:A7:31:04:49:A1:AA</code><br />
===Triggering the update check===<br />
<br />
To not wait on the update interval and manually trigger the update check, you can run the following code snippet. Please only do this when debugging things or when there's plenty of evidence that the timer update trigger is working properly.<br />
<br />
<pre><br />
Components.utils.import("resource://gre/modules/AddonManager.jsm");<br />
AddonManagerPrivate.backgroundUpdateCheck();<br />
</pre><br />
<br />
Run this in a privileged script context, such as the Browser Console or Scratchpad set to the Browser environment.<br />
<br />
== Deployment ==<br />
# The intent to ship a new hotfix needs to be sent to release-drivers@m.o and moc@m.c by the developer, by a release manager, or by someone from the AMMO team ([https://mail.mozilla.org/private/release-drivers/2015-August/029924.html Example 1], [https://mail.mozilla.org/private/release-drivers/2015-September/030005.html Example 2] - Needs access to the r-d archives)<br />
# Bug is filed ([https://bugzilla.mozilla.org/show_bug.cgi?id=1244321 Example 1], [https://bugzilla.mozilla.org/show_bug.cgi?id=1237209 Example 2])<br />
# File a new bug in addons.mozilla.org::Administration, and assign it to the Add-ons team for signing and staging. (:kmag or :jorgev, otherwise contact the AMMO team, ammo-team@m.c) ([https://bugzilla.mozilla.org/show_bug.cgi?id=1196078 Example 1], [https://bugzilla.mozilla.org/show_bug.cgi?id=1201129 Example 2]) with the following instructions (replace vYYYYMMDD.NN with the hotfix version):<br />
#:To generate the hotfix XPI, do the following:<br />
#: <br/><br />
#:hg clone https://hg.mozilla.org/releases/firefox-hotfixes<br />
#:cd firefox-hotfixes<br />
#:HOTFIX=vYYYYMMDD.NN make package<br />
#: <br/><br />
#:Then sign the xpi generated at build/hotfix-vYYYYMMDD.NN.xpi<br />
#: <br/><br />
#:Please deploy to addons-dev.allizom.org for QA<br />
# File is signed and is attached to the signing bug.<br />
# Signed file is uploaded to [https://addons-dev.allizom.org/firefox/addon/firefox-hotfix/ addons-dev.allizom.org] and published.<br />
# Bug is reassigned to QA for testing.<br />
# QA signs off, hotfix owner signs off.<br />
# Bug is reassigned to Add-ons team for final deployment.<br />
# Add-ons team notifies release-drivers@m.o and moc@m.c about the deployment, including bug number.<br />
# Signed file is uploaded to [https://addons.mozilla.org/firefox/addon/firefox-hotfix/ addons.mozilla.org] and published.</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-08-11&diff=1143591Electrolysis/Meetings/2016-08-112016-08-11T16:00:20Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1291078}} - <select> change event is fired before mouse events if e10s is enabled<br />
** Fixed across the board, and riding in the 48.0.1 point release.<br />
* Have been dealing with testing fallout from {{bug|1261842}} (make initial browser remote)<br />
** {{bug|1290186}} - Intermittent test_end for test_windows.py TestBaseWindow.test_open_close logged while not in progress. Logged with data: {"status": "ERROR", "extra": {"class_name": "test_windows.TestBaseWindow", "method_name": “test_open_close"}<br />
*** We have a non-remote window in the background that opens and closes a bunch of windows. This causes many content processes to be created and queued for destruction. Sometimes, a content process is scheduled to be killed very soon after it's first created, which means that it doesn't get a chance to initialize before the shutdown kill timer kills it. This creates a silent shutdown kill paired minidump, which mozcrash interprets as a test failure.<br />
*** Fixed this by having the test flip a pref that disables the shutdown kill timer. We should probably do something better for short-lived content processes.<br />
** {{bug|1290567}} - "ERROR: GC found live Cell ... at shutdown" errors since bug 1261842<br />
*** Apparently after a shutdown GC, there's still stuff in the heap? Still investigating.<br />
** {{bug|1290280}} - [e10s] Tab crashes on startup<br />
*** We're doing some silly remoteness flipping for the initial browser tab when restoring windows. I have a patch that fixes this and some new tests.<br />
*** Blocked on review, but will request uplift to Aurora once this goes through.<br />
* {{bug|1291860}} - Investigate FX_SESSION_RESTORE_RESTORE_WINDOW_MS regression starting on 2016-07-26<br />
** I landed a patch, and [https://telemetry.mozilla.org/new-pipeline/evo.html#!aggregates=median&cumulative=0&end_date=2016-08-04&keys=!WITHOUT_PREVIEW!__none__!__none__&max_channel_version=nightly%252F51&measure=FX_SESSION_RESTORE_RESTORE_WINDOW_MS&min_channel_version=nightly%252F48&product=Firefox&sanitize=1&sort_keys=submissions&start_date=2016-08-01&trim=1&use_submission_date=0 it appears to be coming down a bit]. The work in {{bug|1290280}} should probably bring this down even more.<br />
* The usual slew of reviews and needinfos.<br />
<br />
== aklotz ==<br />
* {{bug|1273635}} is currently holding up a11y work - tps hangs on Windows 8 x64 e10s. Not clear why this is happening, working on a loaner from releng in an effort to repro.<br />
* Once that clears the remaining patches should be landable, hope to be able to point 51 Nightly to a11y client vendors for testing sometime next week.<br />
<br />
== felipe ==<br />
* {{bug|1292721}} - Handling system add-on update to increase e10s to 10% of users. Patch uplifted to 48.0.1</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-08-04&diff=1142702Electrolysis/Meetings/2016-08-042016-08-04T16:02:21Z<p>Felipc: felipe</p>
<hr />
<div><br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
<br />
== Roundtable ==<br />
<br />
* [https://crash-stats.mozilla.com/search/?product=Firefox&version=48.0&dom_ipc_enabled=%21__null__&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature 48 crash reports]<br />
** IPCError-browser | ShutDownKill is #2? (Low volume at this point)<br />
<br />
<br />
== felipe<br />
* {{bug|1247497}} - Mechanism for e10s-addons test<br />
* {{bug|1282120}} - Beta 49 experiment tracking bug</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-08-04&diff=1142701Electrolysis/Meetings/2016-08-042016-08-04T16:01:30Z<p>Felipc: felipe</p>
<hr />
<div>== Roundtable ==<br />
<br />
* [https://crash-stats.mozilla.com/search/?product=Firefox&version=48.0&dom_ipc_enabled=%21__null__&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature 48 crash reports]<br />
** IPCError-browser | ShutDownKill is #2? (Low volume at this point)<br />
<br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
<br />
== felipe<br />
* TBD</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Experiments&diff=1142699Electrolysis/Experiments2016-08-04T15:48:38Z<p>Felipc: fix indent</p>
<hr />
<div>= Electrolysis Experiments =<br />
<br />
This page intends to document the A/B experiments that were done during the development of e10s. <br />
<br />
== Experiment mechanisms ==<br />
<br />
=== Telemetry Experiments ===<br />
The first experiments were done through the [[QA/Telemetry|Telemetry Experiments]] system, which is an A/B mechanism meant to test new features to telemetry-enabled users. The experiments were published in the [http://telemetry-experiment.cdn.mozilla.net/ production server] for this mechanism.<br />
<br />
=== Staged Rollout - System add-on ===<br />
With the approach of releasing e10s to the release audience, it was necessary to have a more detailed mechanism specific to e10s in order to be able to do a staged rollout of the feature and quickly increase/decrease the rollout rate. To do that, the new System Add-on mechanism was chosen, because it can be updated out-of-band from the release process.<br />
<br />
After the [https://bugzilla.mozilla.org/show_bug.cgi?id=1249845 system add-on was developed], we started using it to run new phases of e10s experiments on Beta, in order to also test the add-on itself in preparation for Release. <br />
<br />
= List of experiments =<br />
<br />
Note: all dates are an approximation from the end-user's point of view, because they may take a couple of days to be updated to the build where the experiment was started/terminated.<br />
<br />
== Beta 49 ==<br />
=== Single phase ===<br />
'''Start''': beta 1 (Aug 2 or 3)<br />
<br />
'''End''': still running<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% test/control for each group<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No accessibility on Mac, Windows, Linux<br />
* No Mac OS X 10.6 - 10.8<br />
* No WinXP+graphics acceleration users (this caused a 3.9% drop on eligible users compared from the Beta 47 experiment)<br />
* Windows XP users should be excluded from release criteria analyses (e10s on WinXP disabled on the release channel by {{bug|1275039}})<br />
<br />
'''Addons Experiment Details''':<br />
* This experiment is the first to test some add-ons with e10s. The cohorts are divided like so:<br />
** Test/Control:<br />
*** Users with no add-ons, and no other disqualifying criteria (same as previous experiments)<br />
** addons-set2a-test / addons-set2a-control<br />
*** Users with any number > 0 of add-ons, where all of their add-ons are part of the experiment list (see below)<br />
** disqualified-test / disqualified-control<br />
*** Users with any number > 0 of add-ons, where any of their add-ons are not part of the experiment list. (Or may be disqualified by other criteria such as accessibility, OS, etc)<br />
<br />
'''Addons Experiment List''':<br />
* All WebExtension-style add-ons<br />
* And the following 10 bootstrap/jetpack add-ons:<br />
** Greasemonkey, Download YouTube Videos as MP4, Video Download Helper, Lightbeam, Flashblock, Adblock Plus, uBlock Origin, Emoji Cheatsheet, Awesome Screenshot Plus, Personas Plus<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1282120 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1247497 mechanism to control addons experiment list],<br />
<br />
'''Analyses''':<br />
* waiting on data<br />
<br />
== Beta 48 ==<br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Jun 6, shipped Jun 8)<br />
<br />
'''End''': ran through the entire beta (ended on Aug 2)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons<br />
* No accessibility on Mac and Windows<br />
* No accessibility on Linux starting on build 2 ({{bug|1277882}})<br />
* No Mac OS X 10.6 - 10.8<br />
* GTK+ 3.20+ users reincluded<br />
* No WinXP+graphics acceleration users (this caused a 3.9% drop on eligible users compared from the Beta 47 experiment)<br />
* Windows XP users should be excluded from release criteria analyses (e10s on WinXP disabled on the release channel by {{bug|1275039}})<br />
<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1278356 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1272751 unblock GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275040 block on OSX 10.6-10.8], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275039 block on release WinXP], [https://bugzilla.mozilla.org/show_bug.cgi?id=1277882 block on linux a11y], [https://bugzilla.mozilla.org/show_bug.cgi?id=1237769 block on WinXP+Accel]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week1-2/e10s_experiment.ipynb Week 1-2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week5/e10s_experiment.ipynb Week 5], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week6/e10s_experiment.ipynb Week 6], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week7/e10s_experiment.ipynb Week 7]<br />
<br />
== Beta 47 == <br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Apr 26, shipped Apr 27)<br />
<br />
'''End''': ran through the entire beta (Jun 8)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons, no a11y<br />
* No GTK+ 3.20+<br />
* E10SCohort annotation added to crash report<br />
* "disqualified" cohort is now split into "disqualified-test" and "disqualified-control" which should help verify the even-ness of the data<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1268627 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1266213 block GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1264437 disqualified -> disqualified-test/disqualified-control], [https://bugzilla.mozilla.org/show_bug.cgi?id=1259846 E10SCohort annotation on crash reporter]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week1/e10s_experiment.ipynb Week 1], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week2/e10s_experiment.ipynb Week 2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week5/e10s_experiment.ipynb Week 5]<br />
<br />
== Beta 46 ==<br />
=== 2nd phase ===<br />
'''Start''': beta 3 (built on March 21, shipped March 22)<br />
<br />
'''End''': beta 8 (built on April 4, shipped April 5)<br />
<br />
'''Range''': '''['''beta 3, beta 8''')''' (15 days)<br />
<br />
'''Sample''': 50% of ~40% eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons, no a11y<br />
* APZ enabled (for the first time)<br />
* Through the system add-on (for the first time)<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1257265 bugs related to the system add-on], [https://bugzilla.mozilla.org/show_bug.cgi?id=1261422 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/apz<br />
<br />
=== 1st phase ===<br />
'''Start''': March 9<br />
<br />
'''End''': March 21<br />
<br />
'''Range''': '''['''March 9, March 21''')''' (12 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1253669 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1258592 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/noapz<br />
<br />
== Beta 45 ==<br />
=== 2nd phase ===<br />
'''Start''': February 12<br />
<br />
'''End''': February 22<br />
<br />
'''Range''': '''['''February 12, February 22''')''' (11 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
* No add-ons (add-on users filtered for the first time)<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1244187 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1250338 stop it], [filter add-on users from e10s https://bugzilla.mozilla.org/show_bug.cgi?id=1234675]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withoutaddons<br />
<br />
=== 1st phase ===<br />
'''Start''': January 25<br />
<br />
'''End''': February 11<br />
<br />
'''Range''': '''['''January 25, February 11''')''' (17 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split (yield ~25%)<br />
<br />
'''Details''':<br />
* Add-ons enabled<br />
** LastPass 3.* and Skype Click-to-Call users removed from the experiment after a few days due to crash<br />
* APZ disabled<br />
* No a11y<br />
* Through Telemetry Experiments<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 start it], automatically stopped by date, [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 block LastPass 3.* users], [https://bugzilla.mozilla.org/show_bug.cgi?id=1245192 Block Skype Click-to-Call users]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withaddons</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Experiments&diff=1142698Electrolysis/Experiments2016-08-04T15:47:54Z<p>Felipc: Beta 49</p>
<hr />
<div>= Electrolysis Experiments =<br />
<br />
This page intends to document the A/B experiments that were done during the development of e10s. <br />
<br />
== Experiment mechanisms ==<br />
<br />
=== Telemetry Experiments ===<br />
The first experiments were done through the [[QA/Telemetry|Telemetry Experiments]] system, which is an A/B mechanism meant to test new features to telemetry-enabled users. The experiments were published in the [http://telemetry-experiment.cdn.mozilla.net/ production server] for this mechanism.<br />
<br />
=== Staged Rollout - System add-on ===<br />
With the approach of releasing e10s to the release audience, it was necessary to have a more detailed mechanism specific to e10s in order to be able to do a staged rollout of the feature and quickly increase/decrease the rollout rate. To do that, the new System Add-on mechanism was chosen, because it can be updated out-of-band from the release process.<br />
<br />
After the [https://bugzilla.mozilla.org/show_bug.cgi?id=1249845 system add-on was developed], we started using it to run new phases of e10s experiments on Beta, in order to also test the add-on itself in preparation for Release. <br />
<br />
= List of experiments =<br />
<br />
Note: all dates are an approximation from the end-user's point of view, because they may take a couple of days to be updated to the build where the experiment was started/terminated.<br />
<br />
== Beta 49 ==<br />
=== Single phase ===<br />
'''Start''': beta 1 (Aug 2 or 3)<br />
<br />
'''End''': still running<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% test/control for each group<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No accessibility on Mac, Windows, Linux<br />
* No Mac OS X 10.6 - 10.8<br />
* No WinXP+graphics acceleration users (this caused a 3.9% drop on eligible users compared from the Beta 47 experiment)<br />
* Windows XP users should be excluded from release criteria analyses (e10s on WinXP disabled on the release channel by {{bug|1275039}})<br />
<br />
'''Addons Experiment Details''':<br />
* This experiment is the first to test some add-ons with e10s. The cohorts are divided like so:<br />
** Test/Control:<br />
*** Users with no add-ons, and no other disqualifying criteria (same as previous experiments)<br />
** addons-set2a-test / addons-set2a-control<br />
*** Users with any number > 0 of add-ons, where all of their add-ons are part of the experiment list (see below)<br />
*** disqualified-test / disqualified-control<br />
*** Users with any number > 0 of add-ons, where any of their add-ons are not part of the experiment list. (Or may be disqualified by other criteria such as accessibility, OS, etc)<br />
<br />
'''Addons Experiment List''':<br />
* All WebExtension-style add-ons<br />
* And the following 10 bootstrap/jetpack add-ons:<br />
** Greasemonkey, Download YouTube Videos as MP4, Video Download Helper, Lightbeam, Flashblock, Adblock Plus, uBlock Origin, Emoji Cheatsheet, Awesome Screenshot Plus, Personas Plus<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1282120 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1247497 mechanism to control addons experiment list],<br />
<br />
'''Analyses''':<br />
* waiting on data<br />
<br />
== Beta 48 ==<br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Jun 6, shipped Jun 8)<br />
<br />
'''End''': ran through the entire beta (ended on Aug 2)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons<br />
* No accessibility on Mac and Windows<br />
* No accessibility on Linux starting on build 2 ({{bug|1277882}})<br />
* No Mac OS X 10.6 - 10.8<br />
* GTK+ 3.20+ users reincluded<br />
* No WinXP+graphics acceleration users (this caused a 3.9% drop on eligible users compared from the Beta 47 experiment)<br />
* Windows XP users should be excluded from release criteria analyses (e10s on WinXP disabled on the release channel by {{bug|1275039}})<br />
<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1278356 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1272751 unblock GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275040 block on OSX 10.6-10.8], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275039 block on release WinXP], [https://bugzilla.mozilla.org/show_bug.cgi?id=1277882 block on linux a11y], [https://bugzilla.mozilla.org/show_bug.cgi?id=1237769 block on WinXP+Accel]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week1-2/e10s_experiment.ipynb Week 1-2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week5/e10s_experiment.ipynb Week 5], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week6/e10s_experiment.ipynb Week 6], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week7/e10s_experiment.ipynb Week 7]<br />
<br />
== Beta 47 == <br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Apr 26, shipped Apr 27)<br />
<br />
'''End''': ran through the entire beta (Jun 8)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons, no a11y<br />
* No GTK+ 3.20+<br />
* E10SCohort annotation added to crash report<br />
* "disqualified" cohort is now split into "disqualified-test" and "disqualified-control" which should help verify the even-ness of the data<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1268627 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1266213 block GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1264437 disqualified -> disqualified-test/disqualified-control], [https://bugzilla.mozilla.org/show_bug.cgi?id=1259846 E10SCohort annotation on crash reporter]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week1/e10s_experiment.ipynb Week 1], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week2/e10s_experiment.ipynb Week 2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week5/e10s_experiment.ipynb Week 5]<br />
<br />
== Beta 46 ==<br />
=== 2nd phase ===<br />
'''Start''': beta 3 (built on March 21, shipped March 22)<br />
<br />
'''End''': beta 8 (built on April 4, shipped April 5)<br />
<br />
'''Range''': '''['''beta 3, beta 8''')''' (15 days)<br />
<br />
'''Sample''': 50% of ~40% eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons, no a11y<br />
* APZ enabled (for the first time)<br />
* Through the system add-on (for the first time)<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1257265 bugs related to the system add-on], [https://bugzilla.mozilla.org/show_bug.cgi?id=1261422 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/apz<br />
<br />
=== 1st phase ===<br />
'''Start''': March 9<br />
<br />
'''End''': March 21<br />
<br />
'''Range''': '''['''March 9, March 21''')''' (12 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1253669 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1258592 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/noapz<br />
<br />
== Beta 45 ==<br />
=== 2nd phase ===<br />
'''Start''': February 12<br />
<br />
'''End''': February 22<br />
<br />
'''Range''': '''['''February 12, February 22''')''' (11 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
* No add-ons (add-on users filtered for the first time)<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1244187 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1250338 stop it], [filter add-on users from e10s https://bugzilla.mozilla.org/show_bug.cgi?id=1234675]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withoutaddons<br />
<br />
=== 1st phase ===<br />
'''Start''': January 25<br />
<br />
'''End''': February 11<br />
<br />
'''Range''': '''['''January 25, February 11''')''' (17 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split (yield ~25%)<br />
<br />
'''Details''':<br />
* Add-ons enabled<br />
** LastPass 3.* and Skype Click-to-Call users removed from the experiment after a few days due to crash<br />
* APZ disabled<br />
* No a11y<br />
* Through Telemetry Experiments<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 start it], automatically stopped by date, [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 block LastPass 3.* users], [https://bugzilla.mozilla.org/show_bug.cgi?id=1245192 Block Skype Click-to-Call users]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withaddons</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis&diff=1142602Electrolysis2016-08-03T22:39:45Z<p>Felipc: Force Enable</p>
<hr />
<div>== Overview ==<br />
<br />
Electrolysis functionality hosts, renders, or executes web related content in background [https://en.wikipedia.org/wiki/Child_process child processes] which communicate with the "parent" Firefox browser via various [https://developer.mozilla.org/en-US/docs/IPDL ipdl protocols]. The two major advantages of this model are security and performance. Security improvements are accomplished through security sandboxing, performance improvements are born out of the fact that multiple processes better leverage available client computing power.<br />
<br />
Electrolysis child processes are currently in use for the following tasks within Firefox:<br />
<br />
* Legacy NPAPI plugin hosting<br />
* Media playback<br />
* Web content ('content processes')<br />
<br />
In the future Electrolysis child processes may be used to handle other browser tasks including graphical composition, and addon hosting for addons that leverage the new [[WebExtensions]] apis.<br />
<br />
In Mozilla documentation "Electrolysis" is often shorted as "e10s".<br />
<br />
== Testing ==<br />
<br />
=== Nightly/Aurora ===<br />
<br />
If you're on Nightly or Aurora, e10s is already enabled by default! A user facing checkbox is available for controlling Electrolysis functionality. Open Preferences and check the "Enable multi-process" checkbox and then restart your browser:<br />
<br />
[[File:E10s-toggle-in-preferences.png|324x150px|frameless|Nightly > Preferences > General > Enable multi-process]]<br />
<br />
=== Firefox Beta ===<br />
<br />
If you're currently using Firefox Beta you might be testing e10s already, check ''about:support'' and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in to help us test open ''about:config'' and toggle '''browser.tabs.remote.autostart''' to true. On your next restart, e10s should be active.<br />
<br />
=== Firefox Release ===<br />
<br />
If you're using Firefox 48 or later, you might be using e10s already. Check about:support and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in, open about:config and toggle browser.tabs.remote.autostart to true. On your next restart, e10s should be active.<br />
<br />
=== Force Enable ===<br />
<br />
If you've tried enabling e10s following the instruction above, but your ''about:support'' indicates that e10s is disabled (e.g., accessibility, add-ons can trigger this), you can force e10s on for testing purposes. Within ''about:config'' create a new boolean pref named '''browser.tabs.remote.force-enable''' and set it to true. This is not encouraged, use it at your own risk!<br />
<br />
== What to Expect ==<br />
<br />
Generally the browser should be stable and usable, without major issues or crashes. Profiles that have lots of older addons will likely experience slowness or other issues. If you run into any trouble, try disabling [http://arewee10syet.com/ incompatible add-ons].<br />
<br />
== Schedule and Status ==<br />
<br />
A single content process model is currently being tested on Nightly, Aurora and Beta channels. See the schedule below for planned rollout to release. A multiple content process model (e10s-multi) will roll out in a follow up release. View the [https://wiki.mozilla.org/Electrolysis/Multiple_content_processes Multiple Content Process] wiki page for more information.<br />
<br />
=== Schedule ===<br />
<br />
The following schedule covers rollout of the single content process feature to release builds. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Date !! Trunk !! Aurora !! Beta !! Release<br />
|-<br />
| 2015-04-30 || 40 default (working on m5) || 39 off || 38 off || 37 off<br />
|-<br />
| 2015-05-11 || 41 default (working on m6) || 40 prompt || 39 off || 38 off<br />
|-<br />
| 2015-06-29 || 42 default (working on m7/m8) || 41 prompt|| 40 off || 39 off<br />
|-<br />
| 2015-08-10 || 43 default (working on m8) || 42 default || 41 off || 40 off<br />
|-<br />
| 2015-09-21 || 44 default || 43 default || 42 off || 41 off<br />
|-<br />
| 2015-11-02 || 45 default || 44 default || 43 off || 42 off<br />
|-<br />
| 2015-12-14 || 46 default || 45 default || 44 A/B [1] || 43 off<br />
|-<br />
| 2016-01-25 || 47 default || 46 default || 45 A/B [1] || 44 off<br />
|-<br />
| 2016-03-07 || 48 default || 47 default || 46 A/B [1] || 45 off<br />
|-<br />
| 2016-04-25 || 49 default || 48 default || 47 50% [1][2] || 46 off<br />
|-<br />
| 2016-06-06 || 50 default || 49 default || 48 [1][2] || 47 off<br />
|-<br />
| 2016-08-01 || 51 default || 50 default || 49 [1][2] || 48 [3]<br />
|-<br />
| 2016-09-12 || 52 default || 51 default || 50 [1][2][4?] || 49 [5]<br />
|}<br />
<br />
[1] qualifying users: users that do not use addons and have not activated accessibility support over 30 days.<br/><br />
[2] full run across the entire beta period<br/><br />
[3] 1% of qualifying users with ramp up during the cycle<br/><br />
[4] white listed addons testing on beta<br/><br />
[5] 100% of qualifying users<br/><br />
<br />
===Staged Roll-Out Plan===<br />
To read a summary of the Roll-Out plan, see [https://asadotzler.com/ Asa's blog]. For information on add-on support rollout see the [https://wiki.mozilla.org/Add-ons Add-on Project Wiki].<br />
<br />
=== Weekly Status Reports ===<br />
<br />
* [https://wiki.mozilla.org/E10s/Status/Nov13 Nov 13]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Nov20 Nov 20]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Nov27 Nov 27]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Dec4 Dec 4]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Dec22 Dec 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Jan15 Jan 15]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Jan29 Jan 29]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Feb12 Feb 12]<br><br />
* [https://groups.google.com/a/mozilla.com/forum/?hl=en#!topic/e10s-stakeholders/og10V58T2fU March 4]<br><br />
* [https://groups.google.com/a/mozilla.com/forum/?hl=en#!topic/e10s-stakeholders/AFxTILtrzeQ March 11]<br><br />
* [https://wiki.mozilla.org/E10s/Status/March29 March 29]<br><br />
* [https://wiki.mozilla.org/E10s/Status/April8 April 8]<br><br />
* [https://wiki.mozilla.org/E10s/Status/April22 April 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/May5 May 6]<br><br />
* [https://wiki.mozilla.org/E10s/Status/May20 May 20]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July1 July 1]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July8 July 8]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July22 July 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July22 July 29]<br><br />
<br />
== Experiments ==<br />
There's a dedicated page for the experiments: [[Electrolysis/Experiments|E10s Experiments]]<br />
<br />
== Contributing ==<br />
<br />
The simplest way to help out is to test a release that has e10s enabled, and file bug when you find them. Please try to find duplicates prior to filing.<br />
<br />
* The [[Electrolysis/Roadmap|project roadmap overview]] provides current bug lists slated for development based on a set of 2015 milestones.<br />
* The current incoming [https://bugzilla.mozilla.org/buglist.cgi?j_top=OR&o5=nowordssubstr&o9=equals&v10=needinfo&o2=equals&v5=meta&v9=%3F&o4=nowordssubstr&v2=---&v4=addon%2Cadd-on%2Cextension%2Cmeta&f10=flagtypes.name&f1=OP&v6=needinfo&o3=anywordssubstr&f8=OP&v3=e10s&resolution=---&o6=notsubstring&f9=cf_tracking_e10s&f4=short_desc&o10=notsubstring&query_format=advanced&f3=short_desc&f2=cf_tracking_e10s&f11=CP&f5=keywords&f6=flagtypes.name&f7=CP&list_id=11857722 e10s weekly triage bug list]. Check this for "fresh" issues recently filed.<br />
* Here's a bugzilla template link for filing a new e10s bug: http://is.gd/aTza8A<br />
* <strong>When filing a new bug, please add the tracking-e10s:? flag or place 'e10s' in the bug title so that it shows up in the team's weekly triage bug list.</strong><br />
<br />
For developers interested in helping out, MDN has a [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox good introduction to e10s], useful for both Firefox and add-on developers.<br />
<br />
== Security Sandboxing ==<br />
<br />
See the [https://wiki.mozilla.org/Security/Sandbox Security Sandbox] wiki page for more information and status.<br />
<br />
== Accessibility Support ==<br />
See the [https://wiki.mozilla.org/Electrolysis/Accessibility e10s Accessibility] wiki page for support implementation detail.<br />
<br />
== Add-ons Compatibility ==<br />
<br />
Add-on authors should refer to the MDN [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox Firefox Add-on Migration Guide] for porting existing add-ons to e10s. For general design information see the [https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox Multiprocess Firefox] MDN documentation. Add-on testing compatibility is currently available at http://arewee10syet.com.<br />
<br />
For more information about Add-on issue mitigation and rollout of e10s to add-on users, see the [https://wiki.mozilla.org/Add-ons Add-on Project Wiki] page.<br />
<br />
== Past Milestones ==<br />
<br />
* 2014-09-11 - {{bug|1064885}} - Enable opt-in option for Nightly<br />
* 2014-11-13 - {{bug|1093691}} - Enabled for Nightly builds<br />
* 2015-05-08 - {{bug|1161260}} - Enable opt-in option for Aurora<br />
* 2015-07-28 - {{bug|1182097}} - Disabled on Aurora for about 1 week due to a bug in a11y prompting<br />
* 2015-07-31 - {{bug|1188605}} - Enabled for Aurora builds<br />
* 2015-12-15 - {{bug|1229104}} - Beta testing<br />
<br />
== Communication ==<br />
<br />
{| class="wikitable fullwidth-table"<br />
| Weekly Team Meeting<br />
|| [http://arewemeetingyet.com/Los_Angeles/2014-04-24/09:00/w/E10s Weekly Team Meeting Thursday at 9:00am PT]<br />
* Vidyo: [https://v.mozilla.com/flex.html?roomdirect.html&key=njJM9NHQBt2a "e10s"]<br />
* Invitation: Contact blassey, jimm, or larissa to get added to the meeting invite list.<br />
* [https://wiki.mozilla.org/Electrolysis/Meetings Meeting Notes]<br />
|-<br />
| Weekly Addons Strategy Meeting<br />
|| <br />
* Vidyo: [https://v.mozilla.com/flex.html?roomdirect.html&key=njJM9NHQBt2a "e10s"]<br />
* Invitation: Contact billm to get added to the meeting invite list.<br />
* [https://e10s.etherpad.mozilla.org/addons-notes Meeting Notes Etherpad]<br />
|-<br />
| IRC<br />
|| <br />
* Server: irc.mozilla.org<br />
* Channel: [irc://irc.mozilla.org/e10s #e10s]<br />
|-<br />
| Newsgroup/Mailing List<br />
|| <br />
* https://lists.mozilla.org/listinfo/dev-tech-electrolysis<br />
|-<br />
|}<br />
<br />
==People==<br />
{| class="wikitable fullwidth-table"<br />
| Engineering Management<br />
||<br />
* Brad Lassey<br />
|-<br />
|Product Management<br />
||<br />
*Jeff Griffiths<br />
|-<br />
| Project Management<br />
||<br />
* Erin Lancaster - e10s Go to Market<br />
* Shell Escalante - Add-Ons<br />
|-<br />
| QA<br />
||<br />
* Tracy Walker (e10s Quality Assurance Lead)<br />
|-<br />
| Development Team<br />
|| <br />
* Mike Conley<br />
* Felipe Gomes<br />
* Blake Kaplan<br />
* Gabor Krizsanits<br />
* William McCloskey<br />
* Jim Mathies<br />
* Tom Schuster<br />
* Dave Townsend<br />
* George Wright<br />
|}<br />
<br />
== Meeting Notes ==<br />
<br />
[https://wiki.mozilla.org/Electrolysis/Meetings Link]<br />
<br />
== Reference ==<br />
<br />
* [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox MDN: Working with multiprocess Firefox]<br />
* [https://developer.mozilla.org/en-US/docs/The_message_manager The message manager]<br />
* [https://developer.mozilla.org/en-US/docs/Cross_Process_Object_Wrappers Cross-process object wrappers]<br />
* [[Electrolysis/Archive | Archive of past content on this page]]<br />
* [https://etherpad.mozilla.org/uYS8ZplOMU Electrolysis platform notes]<br />
* [https://etherpad.mozilla.org/rRk4aEHkwC Notes on the Chromium IPC library]<br />
* [https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AhFRRYurPzRndHQwUVNscThIbFBsYmNRaU44LVlDdlE#gid=0 Addon Compatibility Test Results]<br />
* [http://mxr.mozilla.org/mozilla-central/source/dom/base/nsIMessageManager.idl#15 IDL comments about Message Manager]<br />
* Tim Taubert's [http://timtaubert.de/blog/2011/08/firefox-electrolysis-101/ "Firefox Electrolysis 101"] blog post (2011)<br />
* [[Electrolysis/e10s test tips|Tips for converting tests to be e10s compatible]]<br />
* [[Electrolysis/Performance_Optimization|Performance optimization tips]]<br />
* [https://www.mozilla.org/firefox/channel/ Download Beta, Developer, or Release]<br />
* [https://nightly.mozilla.org/ Download Nightly]<br />
<br />
== Bug Lists ==<br />
=== Nightly enable blockers ===<br />
* M2 bugs: http://tinyurl.com/mjywvmb (one leftover bug, assigned m5+, 1047603)<br />
* M3 bugs: http://tinyurl.com/n7jekh6 (all resolved + dependencies resolved)<br />
=== Aurora uplift blockers (plus dev. tools) ===<br />
* M4 bugs: http://is.gd/fi3ByM<br />
* M5 bugs: http://is.gd/hNTLWk<br />
* M6 bugs: http://is.gd/1Dw8gN<br />
* M4–M6 bugs: http://is.gd/drPSBc<br />
=== Beta blockers ===<br />
* M7 bugs: http://is.gd/HQGwVi<br />
* M8 bugs: http://is.gd/Au5e7x<br />
=== GA Blockers ===<br />
* M9 Actionable Bugs: http://is.gd/qufPe0<br />
* M9 plus RC Meta Bugs: http://is.gd/tv81Zf<br />
* M9 RC Metas: http://is.gd/hTHo9U<br />
* RC Meta Children: http://is.gd/eKcXxH<br />
=== Summary Lists ===<br />
* M7–M8 bugs: http://is.gd/YPXLZT<br />
* M4–M8 bugs: http://is.gd/16YH4l<br />
=== Devtools Lists ===<br />
* e10s-m7 and e10s-m8 bugs: http://is.gd/zrzaRw<br />
* e10s-m4 through e10s-m8 bugs: http://is.gd/Ra53os<br />
=== Performance bugs (e10s-perf) ===<br />
* Complete e10s-perf List: http://is.gd/izIbfl<br />
* P1: http://is.gd/N4Kska<br />
* P2: http://is.gd/tricyk<br />
=== Future ===<br />
* tracking-e10s:+ P1: http://is.gd/ztBxgX (no tests or sdk bugs)<br />
* tracking-e10s:+ P1: http://is.gd/syKhQ8 (everything)<br />
* tracking-e10s:+ P2: http://is.gd/NnCvUQ<br />
* tracking-e10s:+ P3: http://is.gd/PD3PI8<br />
* tracking-e10s:+ P4: http://is.gd/K6dCIq<br />
* tracking-e10s:later: http://is.gd/B1cfnm<br />
=== Triage Lists ===<br />
* e10s Triage List: https://is.gd/S0iUXW<br />
* e10s-perf Triage List: http://is.gd/5R5Leo<br />
* e10s needinfo Triage List: http://is.gd/MoraEb<br />
* tracking-e10s:? specific needinfo List: http://is.gd/vsPqdk<br />
* Add-on triage List: http://is.gd/P2aqLC<br />
* tracking-e10s:+ List: http://is.gd/ybrg68<br />
** minus needinfos<br />
** minus Summary containing 'intermittent', 'test', 'addon', 'add-on'<br />
** minus Keywords containing 'meta', 'qawanted'<br />
** minus bugs with a priority set<br />
** not blocking {{bug|apz-desktop}}, {{bug|e10s-tests}}, {{bug|e10s-perf}}, {{bug|e10s-addons}}, {{bug|e10s-gfx}}, {{bug|e10s-sdk}}, {{bug|e10sa11y2}}, {{bug|e10s-ime}}, {{bug|dte10s}}, {{bug|e10s-social}}, {{bug|e10s-multi}}, {{bug|e10s-harness}}<br />
* tracking-e10s:+ needinfos List: http://is.gd/YADITg<br />
* RTL Blockers: http://is.gd/cKUiNa<br />
<br />
=== Misc. Trackers ===<br />
* Accessibility tracker: https://bugzilla.mozilla.org/show_bug.cgi?id=1029143<br />
* Devtools bug tracking: https://etherpad.mozilla.org/devtools-e10s-statuses<br />
=== '''Uplift candidates''': (M9 and P1 tracking+ bugs fixed in FF 48 but not 47) ===<br />
* https://wiki.mozilla.org/E10s/Status/m9</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis&diff=1142601Electrolysis2016-08-03T22:38:51Z<p>Felipc: Firefox Release</p>
<hr />
<div>== Overview ==<br />
<br />
Electrolysis functionality hosts, renders, or executes web related content in background [https://en.wikipedia.org/wiki/Child_process child processes] which communicate with the "parent" Firefox browser via various [https://developer.mozilla.org/en-US/docs/IPDL ipdl protocols]. The two major advantages of this model are security and performance. Security improvements are accomplished through security sandboxing, performance improvements are born out of the fact that multiple processes better leverage available client computing power.<br />
<br />
Electrolysis child processes are currently in use for the following tasks within Firefox:<br />
<br />
* Legacy NPAPI plugin hosting<br />
* Media playback<br />
* Web content ('content processes')<br />
<br />
In the future Electrolysis child processes may be used to handle other browser tasks including graphical composition, and addon hosting for addons that leverage the new [[WebExtensions]] apis.<br />
<br />
In Mozilla documentation "Electrolysis" is often shorted as "e10s".<br />
<br />
== Testing ==<br />
<br />
=== Nightly/Aurora ===<br />
<br />
If you're on Nightly or Aurora, e10s is already enabled by default! A user facing checkbox is available for controlling Electrolysis functionality. Open Preferences and check the "Enable multi-process" checkbox and then restart your browser:<br />
<br />
[[File:E10s-toggle-in-preferences.png|324x150px|frameless|Nightly > Preferences > General > Enable multi-process]]<br />
<br />
=== Firefox Beta ===<br />
<br />
If you're currently using Firefox Beta you might be testing e10s already, check ''about:support'' and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in to help us test open ''about:config'' and toggle '''browser.tabs.remote.autostart''' to true. On your next restart, e10s should be active.<br />
<br />
=== Firefox Release ===<br />
<br />
If you're using Firefox 48 or later, you might be using e10s already. Check about:support and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in, open about:config and toggle browser.tabs.remote.autostart to true. On your next restart, e10s should be active.<br />
<br />
=== Force Enable ===<br />
<br />
If you've tried enabling e10s but ''about:support'' indicates that e10s is disabled (e.g., accessibility, add-ons can trigger this), you can force e10s on for testing purposes. Within ''about:config'' create a new boolean pref named '''browser.tabs.remote.force-enable''' and set it to true. This is not encouraged, use it at your own risk!<br />
<br />
== What to Expect ==<br />
<br />
Generally the browser should be stable and usable, without major issues or crashes. Profiles that have lots of older addons will likely experience slowness or other issues. If you run into any trouble, try disabling [http://arewee10syet.com/ incompatible add-ons].<br />
<br />
== Schedule and Status ==<br />
<br />
A single content process model is currently being tested on Nightly, Aurora and Beta channels. See the schedule below for planned rollout to release. A multiple content process model (e10s-multi) will roll out in a follow up release. View the [https://wiki.mozilla.org/Electrolysis/Multiple_content_processes Multiple Content Process] wiki page for more information.<br />
<br />
=== Schedule ===<br />
<br />
The following schedule covers rollout of the single content process feature to release builds. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Date !! Trunk !! Aurora !! Beta !! Release<br />
|-<br />
| 2015-04-30 || 40 default (working on m5) || 39 off || 38 off || 37 off<br />
|-<br />
| 2015-05-11 || 41 default (working on m6) || 40 prompt || 39 off || 38 off<br />
|-<br />
| 2015-06-29 || 42 default (working on m7/m8) || 41 prompt|| 40 off || 39 off<br />
|-<br />
| 2015-08-10 || 43 default (working on m8) || 42 default || 41 off || 40 off<br />
|-<br />
| 2015-09-21 || 44 default || 43 default || 42 off || 41 off<br />
|-<br />
| 2015-11-02 || 45 default || 44 default || 43 off || 42 off<br />
|-<br />
| 2015-12-14 || 46 default || 45 default || 44 A/B [1] || 43 off<br />
|-<br />
| 2016-01-25 || 47 default || 46 default || 45 A/B [1] || 44 off<br />
|-<br />
| 2016-03-07 || 48 default || 47 default || 46 A/B [1] || 45 off<br />
|-<br />
| 2016-04-25 || 49 default || 48 default || 47 50% [1][2] || 46 off<br />
|-<br />
| 2016-06-06 || 50 default || 49 default || 48 [1][2] || 47 off<br />
|-<br />
| 2016-08-01 || 51 default || 50 default || 49 [1][2] || 48 [3]<br />
|-<br />
| 2016-09-12 || 52 default || 51 default || 50 [1][2][4?] || 49 [5]<br />
|}<br />
<br />
[1] qualifying users: users that do not use addons and have not activated accessibility support over 30 days.<br/><br />
[2] full run across the entire beta period<br/><br />
[3] 1% of qualifying users with ramp up during the cycle<br/><br />
[4] white listed addons testing on beta<br/><br />
[5] 100% of qualifying users<br/><br />
<br />
===Staged Roll-Out Plan===<br />
To read a summary of the Roll-Out plan, see [https://asadotzler.com/ Asa's blog]. For information on add-on support rollout see the [https://wiki.mozilla.org/Add-ons Add-on Project Wiki].<br />
<br />
=== Weekly Status Reports ===<br />
<br />
* [https://wiki.mozilla.org/E10s/Status/Nov13 Nov 13]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Nov20 Nov 20]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Nov27 Nov 27]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Dec4 Dec 4]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Dec22 Dec 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Jan15 Jan 15]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Jan29 Jan 29]<br><br />
* [https://wiki.mozilla.org/E10s/Status/Feb12 Feb 12]<br><br />
* [https://groups.google.com/a/mozilla.com/forum/?hl=en#!topic/e10s-stakeholders/og10V58T2fU March 4]<br><br />
* [https://groups.google.com/a/mozilla.com/forum/?hl=en#!topic/e10s-stakeholders/AFxTILtrzeQ March 11]<br><br />
* [https://wiki.mozilla.org/E10s/Status/March29 March 29]<br><br />
* [https://wiki.mozilla.org/E10s/Status/April8 April 8]<br><br />
* [https://wiki.mozilla.org/E10s/Status/April22 April 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/May5 May 6]<br><br />
* [https://wiki.mozilla.org/E10s/Status/May20 May 20]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July1 July 1]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July8 July 8]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July22 July 22]<br><br />
* [https://wiki.mozilla.org/E10s/Status/July22 July 29]<br><br />
<br />
== Experiments ==<br />
There's a dedicated page for the experiments: [[Electrolysis/Experiments|E10s Experiments]]<br />
<br />
== Contributing ==<br />
<br />
The simplest way to help out is to test a release that has e10s enabled, and file bug when you find them. Please try to find duplicates prior to filing.<br />
<br />
* The [[Electrolysis/Roadmap|project roadmap overview]] provides current bug lists slated for development based on a set of 2015 milestones.<br />
* The current incoming [https://bugzilla.mozilla.org/buglist.cgi?j_top=OR&o5=nowordssubstr&o9=equals&v10=needinfo&o2=equals&v5=meta&v9=%3F&o4=nowordssubstr&v2=---&v4=addon%2Cadd-on%2Cextension%2Cmeta&f10=flagtypes.name&f1=OP&v6=needinfo&o3=anywordssubstr&f8=OP&v3=e10s&resolution=---&o6=notsubstring&f9=cf_tracking_e10s&f4=short_desc&o10=notsubstring&query_format=advanced&f3=short_desc&f2=cf_tracking_e10s&f11=CP&f5=keywords&f6=flagtypes.name&f7=CP&list_id=11857722 e10s weekly triage bug list]. Check this for "fresh" issues recently filed.<br />
* Here's a bugzilla template link for filing a new e10s bug: http://is.gd/aTza8A<br />
* <strong>When filing a new bug, please add the tracking-e10s:? flag or place 'e10s' in the bug title so that it shows up in the team's weekly triage bug list.</strong><br />
<br />
For developers interested in helping out, MDN has a [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox good introduction to e10s], useful for both Firefox and add-on developers.<br />
<br />
== Security Sandboxing ==<br />
<br />
See the [https://wiki.mozilla.org/Security/Sandbox Security Sandbox] wiki page for more information and status.<br />
<br />
== Accessibility Support ==<br />
See the [https://wiki.mozilla.org/Electrolysis/Accessibility e10s Accessibility] wiki page for support implementation detail.<br />
<br />
== Add-ons Compatibility ==<br />
<br />
Add-on authors should refer to the MDN [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox Firefox Add-on Migration Guide] for porting existing add-ons to e10s. For general design information see the [https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox Multiprocess Firefox] MDN documentation. Add-on testing compatibility is currently available at http://arewee10syet.com.<br />
<br />
For more information about Add-on issue mitigation and rollout of e10s to add-on users, see the [https://wiki.mozilla.org/Add-ons Add-on Project Wiki] page.<br />
<br />
== Past Milestones ==<br />
<br />
* 2014-09-11 - {{bug|1064885}} - Enable opt-in option for Nightly<br />
* 2014-11-13 - {{bug|1093691}} - Enabled for Nightly builds<br />
* 2015-05-08 - {{bug|1161260}} - Enable opt-in option for Aurora<br />
* 2015-07-28 - {{bug|1182097}} - Disabled on Aurora for about 1 week due to a bug in a11y prompting<br />
* 2015-07-31 - {{bug|1188605}} - Enabled for Aurora builds<br />
* 2015-12-15 - {{bug|1229104}} - Beta testing<br />
<br />
== Communication ==<br />
<br />
{| class="wikitable fullwidth-table"<br />
| Weekly Team Meeting<br />
|| [http://arewemeetingyet.com/Los_Angeles/2014-04-24/09:00/w/E10s Weekly Team Meeting Thursday at 9:00am PT]<br />
* Vidyo: [https://v.mozilla.com/flex.html?roomdirect.html&key=njJM9NHQBt2a "e10s"]<br />
* Invitation: Contact blassey, jimm, or larissa to get added to the meeting invite list.<br />
* [https://wiki.mozilla.org/Electrolysis/Meetings Meeting Notes]<br />
|-<br />
| Weekly Addons Strategy Meeting<br />
|| <br />
* Vidyo: [https://v.mozilla.com/flex.html?roomdirect.html&key=njJM9NHQBt2a "e10s"]<br />
* Invitation: Contact billm to get added to the meeting invite list.<br />
* [https://e10s.etherpad.mozilla.org/addons-notes Meeting Notes Etherpad]<br />
|-<br />
| IRC<br />
|| <br />
* Server: irc.mozilla.org<br />
* Channel: [irc://irc.mozilla.org/e10s #e10s]<br />
|-<br />
| Newsgroup/Mailing List<br />
|| <br />
* https://lists.mozilla.org/listinfo/dev-tech-electrolysis<br />
|-<br />
|}<br />
<br />
==People==<br />
{| class="wikitable fullwidth-table"<br />
| Engineering Management<br />
||<br />
* Brad Lassey<br />
|-<br />
|Product Management<br />
||<br />
*Jeff Griffiths<br />
|-<br />
| Project Management<br />
||<br />
* Erin Lancaster - e10s Go to Market<br />
* Shell Escalante - Add-Ons<br />
|-<br />
| QA<br />
||<br />
* Tracy Walker (e10s Quality Assurance Lead)<br />
|-<br />
| Development Team<br />
|| <br />
* Mike Conley<br />
* Felipe Gomes<br />
* Blake Kaplan<br />
* Gabor Krizsanits<br />
* William McCloskey<br />
* Jim Mathies<br />
* Tom Schuster<br />
* Dave Townsend<br />
* George Wright<br />
|}<br />
<br />
== Meeting Notes ==<br />
<br />
[https://wiki.mozilla.org/Electrolysis/Meetings Link]<br />
<br />
== Reference ==<br />
<br />
* [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox MDN: Working with multiprocess Firefox]<br />
* [https://developer.mozilla.org/en-US/docs/The_message_manager The message manager]<br />
* [https://developer.mozilla.org/en-US/docs/Cross_Process_Object_Wrappers Cross-process object wrappers]<br />
* [[Electrolysis/Archive | Archive of past content on this page]]<br />
* [https://etherpad.mozilla.org/uYS8ZplOMU Electrolysis platform notes]<br />
* [https://etherpad.mozilla.org/rRk4aEHkwC Notes on the Chromium IPC library]<br />
* [https://docs.google.com/a/mozilla.com/spreadsheet/ccc?key=0AhFRRYurPzRndHQwUVNscThIbFBsYmNRaU44LVlDdlE#gid=0 Addon Compatibility Test Results]<br />
* [http://mxr.mozilla.org/mozilla-central/source/dom/base/nsIMessageManager.idl#15 IDL comments about Message Manager]<br />
* Tim Taubert's [http://timtaubert.de/blog/2011/08/firefox-electrolysis-101/ "Firefox Electrolysis 101"] blog post (2011)<br />
* [[Electrolysis/e10s test tips|Tips for converting tests to be e10s compatible]]<br />
* [[Electrolysis/Performance_Optimization|Performance optimization tips]]<br />
* [https://www.mozilla.org/firefox/channel/ Download Beta, Developer, or Release]<br />
* [https://nightly.mozilla.org/ Download Nightly]<br />
<br />
== Bug Lists ==<br />
=== Nightly enable blockers ===<br />
* M2 bugs: http://tinyurl.com/mjywvmb (one leftover bug, assigned m5+, 1047603)<br />
* M3 bugs: http://tinyurl.com/n7jekh6 (all resolved + dependencies resolved)<br />
=== Aurora uplift blockers (plus dev. tools) ===<br />
* M4 bugs: http://is.gd/fi3ByM<br />
* M5 bugs: http://is.gd/hNTLWk<br />
* M6 bugs: http://is.gd/1Dw8gN<br />
* M4–M6 bugs: http://is.gd/drPSBc<br />
=== Beta blockers ===<br />
* M7 bugs: http://is.gd/HQGwVi<br />
* M8 bugs: http://is.gd/Au5e7x<br />
=== GA Blockers ===<br />
* M9 Actionable Bugs: http://is.gd/qufPe0<br />
* M9 plus RC Meta Bugs: http://is.gd/tv81Zf<br />
* M9 RC Metas: http://is.gd/hTHo9U<br />
* RC Meta Children: http://is.gd/eKcXxH<br />
=== Summary Lists ===<br />
* M7–M8 bugs: http://is.gd/YPXLZT<br />
* M4–M8 bugs: http://is.gd/16YH4l<br />
=== Devtools Lists ===<br />
* e10s-m7 and e10s-m8 bugs: http://is.gd/zrzaRw<br />
* e10s-m4 through e10s-m8 bugs: http://is.gd/Ra53os<br />
=== Performance bugs (e10s-perf) ===<br />
* Complete e10s-perf List: http://is.gd/izIbfl<br />
* P1: http://is.gd/N4Kska<br />
* P2: http://is.gd/tricyk<br />
=== Future ===<br />
* tracking-e10s:+ P1: http://is.gd/ztBxgX (no tests or sdk bugs)<br />
* tracking-e10s:+ P1: http://is.gd/syKhQ8 (everything)<br />
* tracking-e10s:+ P2: http://is.gd/NnCvUQ<br />
* tracking-e10s:+ P3: http://is.gd/PD3PI8<br />
* tracking-e10s:+ P4: http://is.gd/K6dCIq<br />
* tracking-e10s:later: http://is.gd/B1cfnm<br />
=== Triage Lists ===<br />
* e10s Triage List: https://is.gd/S0iUXW<br />
* e10s-perf Triage List: http://is.gd/5R5Leo<br />
* e10s needinfo Triage List: http://is.gd/MoraEb<br />
* tracking-e10s:? specific needinfo List: http://is.gd/vsPqdk<br />
* Add-on triage List: http://is.gd/P2aqLC<br />
* tracking-e10s:+ List: http://is.gd/ybrg68<br />
** minus needinfos<br />
** minus Summary containing 'intermittent', 'test', 'addon', 'add-on'<br />
** minus Keywords containing 'meta', 'qawanted'<br />
** minus bugs with a priority set<br />
** not blocking {{bug|apz-desktop}}, {{bug|e10s-tests}}, {{bug|e10s-perf}}, {{bug|e10s-addons}}, {{bug|e10s-gfx}}, {{bug|e10s-sdk}}, {{bug|e10sa11y2}}, {{bug|e10s-ime}}, {{bug|dte10s}}, {{bug|e10s-social}}, {{bug|e10s-multi}}, {{bug|e10s-harness}}<br />
* tracking-e10s:+ needinfos List: http://is.gd/YADITg<br />
* RTL Blockers: http://is.gd/cKUiNa<br />
<br />
=== Misc. Trackers ===<br />
* Accessibility tracker: https://bugzilla.mozilla.org/show_bug.cgi?id=1029143<br />
* Devtools bug tracking: https://etherpad.mozilla.org/devtools-e10s-statuses<br />
=== '''Uplift candidates''': (M9 and P1 tracking+ bugs fixed in FF 48 but not 47) ===<br />
* https://wiki.mozilla.org/E10s/Status/m9</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Experiments&diff=1141849Electrolysis/Experiments2016-07-29T16:36:16Z<p>Felipc: 48 details</p>
<hr />
<div>= Electrolysis Experiments =<br />
<br />
This page intends to document the A/B experiments that were done during the development of e10s. <br />
<br />
== Experiment mechanisms ==<br />
<br />
=== Telemetry Experiments ===<br />
The first experiments were done through the [[QA/Telemetry|Telemetry Experiments]] system, which is an A/B mechanism meant to test new features to telemetry-enabled users. The experiments were published in the [http://telemetry-experiment.cdn.mozilla.net/ production server] for this mechanism.<br />
<br />
=== Staged Rollout - System add-on ===<br />
With the approach of releasing e10s to the release audience, it was necessary to have a more detailed mechanism specific to e10s in order to be able to do a staged rollout of the feature and quickly increase/decrease the rollout rate. To do that, the new System Add-on mechanism was chosen, because it can be updated out-of-band from the release process.<br />
<br />
After the [https://bugzilla.mozilla.org/show_bug.cgi?id=1249845 system add-on was developed], we started using it to run new phases of e10s experiments on Beta, in order to also test the add-on itself in preparation for Release. <br />
<br />
= List of experiments =<br />
<br />
Note: all dates are an approximation from the end-user's point of view, because they may take a couple of days to be updated to the build where the experiment was started/terminated.<br />
<br />
== Beta 48 ==<br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Jun 6, shipped Jun 8)<br />
<br />
'''End''': ran through the entire beta (ended on Aug 2)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons<br />
* No accessibility on Mac and Windows<br />
* No accessibility on Linux starting on build 2 ({{bug|1277882}})<br />
* No Mac OS X 10.6 - 10.8<br />
* GTK+ 3.20+ users reincluded<br />
* No WinXP+graphics acceleration users (this caused a 3.9% drop on eligible users compared from the Beta 47 experiment)<br />
* Windows XP users should be excluded from release criteria analyses (e10s on WinXP disabled on the release channel by {{bug|1275039}})<br />
<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1278356 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1272751 unblock GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275040 block on OSX 10.6-10.8], [https://bugzilla.mozilla.org/show_bug.cgi?id=1275039 block on release WinXP], [https://bugzilla.mozilla.org/show_bug.cgi?id=1277882 block on linux a11y], [https://bugzilla.mozilla.org/show_bug.cgi?id=1237769 block on WinXP+Accel]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week1-2/e10s_experiment.ipynb Week 1-2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week5/e10s_experiment.ipynb Week 5], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week6/e10s_experiment.ipynb Week 6], [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week7/e10s_experiment.ipynb Week 7]<br />
<br />
== Beta 47 == <br />
=== Single phase ===<br />
'''Start''': beta 1 (built on Apr 26, shipped Apr 27)<br />
<br />
'''End''': ran through the entire beta (Jun 8)<br />
<br />
'''Range''': '''['''beta 1, ...''')'''<br />
<br />
'''Sample''': 50% of eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
* APZ is enabled by default (conditional to e10s) starting in 47<br />
* No add-ons, no a11y<br />
* No GTK+ 3.20+<br />
* E10SCohort annotation added to crash report<br />
* "disqualified" cohort is now split into "disqualified-test" and "disqualified-control" which should help verify the even-ness of the data<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1268627 Tracking bug], automatically started (no bug), [https://bugzilla.mozilla.org/show_bug.cgi?id=1266213 block GTK+ 3.20+], [https://bugzilla.mozilla.org/show_bug.cgi?id=1264437 disqualified -> disqualified-test/disqualified-control], [https://bugzilla.mozilla.org/show_bug.cgi?id=1259846 E10SCohort annotation on crash reporter]<br />
<br />
'''Analyses''':<br />
* [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week1/e10s_experiment.ipynb Week 1], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week2/e10s_experiment.ipynb Week 2], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week3/e10s_experiment.ipynb Week 3], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week4/e10s_experiment.ipynb Week 4], [https://github.com/vitillo/e10s_analyses/blob/master/beta/47/week5/e10s_experiment.ipynb Week 5]<br />
<br />
== Beta 46 ==<br />
=== 2nd phase ===<br />
'''Start''': beta 3 (built on March 21, shipped March 22)<br />
<br />
'''End''': beta 8 (built on April 4, shipped April 5)<br />
<br />
'''Range''': '''['''beta 3, beta 8''')''' (15 days)<br />
<br />
'''Sample''': 50% of ~40% eligible users (yield ~20%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons, no a11y<br />
* APZ enabled (for the first time)<br />
* Through the system add-on (for the first time)<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1257265 bugs related to the system add-on], [https://bugzilla.mozilla.org/show_bug.cgi?id=1261422 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/apz<br />
<br />
=== 1st phase ===<br />
'''Start''': March 9<br />
<br />
'''End''': March 21<br />
<br />
'''Range''': '''['''March 9, March 21''')''' (12 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
<br />
* No add-ons<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1253669 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1258592 stop it]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/46/noapz<br />
<br />
== Beta 45 ==<br />
=== 2nd phase ===<br />
'''Start''': February 12<br />
<br />
'''End''': February 22<br />
<br />
'''Range''': '''['''February 12, February 22''')''' (11 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split * ~40% eligible users (yield ~10%)<br />
<br />
'''Details''':<br />
* No add-ons (add-on users filtered for the first time)<br />
* APZ disabled<br />
* Through Telemetry Experiments<br />
<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1244187 start it], [https://bugzilla.mozilla.org/show_bug.cgi?id=1250338 stop it], [filter add-on users from e10s https://bugzilla.mozilla.org/show_bug.cgi?id=1234675]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withoutaddons<br />
<br />
=== 1st phase ===<br />
'''Start''': January 25<br />
<br />
'''End''': February 11<br />
<br />
'''Range''': '''['''January 25, February 11''')''' (17 days)<br />
<br />
'''Sample''': 50% targeted by experiment * 50% A/B split (yield ~25%)<br />
<br />
'''Details''':<br />
* Add-ons enabled<br />
** LastPass 3.* and Skype Click-to-Call users removed from the experiment after a few days due to crash<br />
* APZ disabled<br />
* No a11y<br />
* Through Telemetry Experiments<br />
'''Related bugs''': [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 start it], automatically stopped by date, [https://bugzilla.mozilla.org/show_bug.cgi?id=1241336 block LastPass 3.* users], [https://bugzilla.mozilla.org/show_bug.cgi?id=1245192 Block Skype Click-to-Call users]<br />
<br />
'''Analyses''':<br />
* https://github.com/vitillo/e10s_analyses/tree/master/beta/45/withaddons</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-07-28&diff=1141730Electrolysis/Meetings/2016-07-282016-07-28T16:02:43Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== mconley ==<br />
* {{bug|1261842}} - Make initial browser remote sooner if we're defaulting to using remote tabs<br />
** Finally, finally, finally landed. And appears to be sticking. I'm crossing all fingers and toes.<br />
** [https://bugzilla.mozilla.org/show_bug.cgi?id=1261842#c294 Full list of Talos improvements from jmaher]<br />
*** The ts_paint regression is dealt with in my next section<br />
*** The tsvgx one... I have no idea. Filed as {{bug|1289903}} to investigate - but almost certainly test confusion.<br />
* {{bug|1287938}} - ts_paint is measuring the wrong thing in the e10s case<br />
** Landed - we're at parity.<br />
* '''+ P1''' {{bug|1157404}} - [e10s] Possible to end up with two visuallyselected="true" tabs at the same time<br />
** Finally polished this off, landed on inbound.<br />
* {{bug|1200524}} - Using "Save Image as" on a large canvas doesn't work<br />
** Now that Blob URLs can be shared between processes, this was easy to fix<br />
** Landed on inbound<br />
* I've been testing with dom.ipc.processCount = 2 for a few days. Very pleased.<br />
* Anecdotally, there's a fellow in the office who's been doing process-per-tab (processCount=100), and really loving it.<br />
<br />
== chutten ==<br />
Latest week's results in: [https://github.com/vitillo/e10s_analyses/blob/master/beta/48/week7/e10s_experiment.ipynb]<br />
* Up to 722k on test (from 686k last week)<br />
<br />
== ting ==<br />
* {{bug|1278505}} RESOLVED::FIXED Save As PDF causes: [Child 91980] ###!!! ASSERTION: Deallocator for PPrintProgressDialogChild should not be called on nsPrintingProxy.: 'Not Reached', file embedding/components/printingui/ipc/nsPrintingProxy.cpp<br />
** Landed, requested for approval to uplift to aurora<br />
* {{bug|1145613}} NEW:: Crash in [@ ReleaseData ] & [@ ReleaseData(void*, unsigned int)]<br />
** Investigating<br />
<br />
== cervantes ==<br />
* {{bug|1281223}} REOPENED:: Crash in @0x0 | mozilla::dom::PContentChild::DestroySubtree<br />
** got r- with the debug register approach. Proposed a new version with crash in ContentChild dtor<br />
<br />
== wcpan ==<br />
* {{bug|1249698}} NEW:: Dead CPOW errors should have actual stack / file / line information<br />
** requested reivew<br />
* {{bug|1265324}} REOPENED:: [e10s] Typing is garbled after backspacing<br />
** still trying to reproduce the problem<br />
<br />
== felipe ==<br />
* Beta 49 e10s add-ons ready to start</div>Felipchttps://wiki.mozilla.org/index.php?title=Electrolysis/Meetings/2016-07-21&diff=1140579Electrolysis/Meetings/2016-07-212016-07-21T16:00:48Z<p>Felipc: felipe</p>
<hr />
<div><!-- Maybe don't screw with these links unless you've read this blog post:<br />
http://blog.johnath.com/2011/01/20/automatic-date-links-in-mediawiki/<br />
Just copy them to new pages and it should Just Work!<br />
--><br />
<br />
<small>[[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} -1 week}}|&laquo; previous week]] | [[Electrolysis/Meetings|index]] | [[Electrolysis/Meetings/{{#time: Y-m-d | {{SUBPAGENAME}} +1 week}}|next week &raquo;]]</small><br />
<br />
== wcpan ==<br />
* {{bug|1046166}} [e10s] userContent.css does not work<br />
** talked to dbaron<br />
** wip patch<br />
* {{bug|1265324}} [e10s] Typing is garbled after backspacing<br />
** asked for a testcase<br />
** cannot reproduce on linux, try again later<br />
* {{bug|1264566}} [e10s] UAC error message "Acces Denied" when doing action on file/folder after upload in Firefox with form submit<br />
** fixed some tests that failed on try<br />
** trying baku's approach, requested review<br />
<br />
== ting ==<br />
* {{bug|1261506}} Can't stop the loading of a very large page in e10s mode<br />
* {{bug|1287044}} Annotate crashes for pending messages in MessageChannel::OnMessageReceivedFromLink<br />
** received r+, revised the patch and pushed to try<br />
* {{bug|1239536}} [e10s] Hang in Linux when printing<br />
** can't reproduce for now, checked the code around print dialog<br />
* {{bug|1245713}} RESOLVED::DUPLICATE Not creating crash dumps for the content process when we should on Linux<br />
** dupe to bug 481781<br />
<br />
== cervantes ==<br />
* {{bug|1256313}} [e10s] <select> preserves active state when I release mouse over the list of options<br />
* {{bug|1253979}} [e10s] <select> preserves depressed state of dropmarker and stays active when I release mouse over the list of options<br />
* {{bug|1194027}} [e10s] DoubleClicking a select doesn't collapse when clicking on the dropmarker<br />
** attached a patch for feedback<br />
* {{bug|1281223}} Crash in @0x0 | mozilla::dom::PContentChild::DestroySubtree<br />
** tracing code<br />
<br />
== kanru ==<br />
* {{bug|1264642}} Reduce the contiguous address space needed for StructuredClone serialization<br />
** Addressing review comments for bug 1264642<br />
** Ready to request review again.<br />
<br />
== jimicy ==<br />
* Filed {{bug|1288453}} nsAutoCopyListener::NotifySelectionChanged doesn't get triggered for a selection changed when you click and drag to switch to a greyed out selection<br />
** Happy to take it, just need some input about the correct behavior on the Linux side.<br />
** Would simplify the patch I have for {{bug|1261299}} - [e10s] Mac OS X Services<br />
* {{bug|1285421}} Handle eQuerySelectionAsTransferable for remote targets<br />
** tracing code<br />
<br />
== chutten ==<br />
<br />
== mconley ==<br />
* {{bug|1261842}} - Make initial browser remote sooner if we're defaulting to using remote tabs<br />
** This landed and bounced. I needed to make some more changes to Marionette. Waiting on a review from AutomatedTester.<br />
* Discovered {{bug|1287938}} - ts_paint is measuring the wrong thing in the e10s case<br />
** In the process of modifying the test to calculate delta between process start and firstPaint as recorded in nsIAppStartup<br />
** We still seem to be at parity with non-e10s here, according to [https://treeherder.mozilla.org/#/jobs?repo=try&revision=deb714da1b8dfe35e8b717fb8adccc9808fb64a2 my try push], so I think we dodged a measurement bullet.<br />
* {{bug|1284687}} - Hide the windows instead of closing them during flush on quit<br />
** This has been uplifted to Aurora and Beta.<br />
<br />
== felipe ==<br />
* {{bug|1247497}} - Mechanism to limit when e10s is turned on based on add-ons presence or absense <br />
* {{bug|1282120}} - First e10s-addons beta 49 experiment</div>Felipc