1a01e72a56e4c396b38781cb840c187e25962e8e: Bug 1246130 - Gather onboarding telemetry experiments separately from other active experiments. r=margaret draft
Chenxia Liu <liuche@mozilla.com> - Tue, 16 Feb 2016 19:08:43 -0800 - rev 331699
Push 11044 by cliu@mozilla.com at Wed, 17 Feb 2016 23:00:35 +0000
Bug 1246130 - Gather onboarding telemetry experiments separately from other active experiments. r=margaret MozReview-Commit-ID: INBoGNmVndw
001bafcb55e98c26b4930940d7220f0248d81e38: Bug 1245969 - TaskCluster tasks for performing system bootstrap; r?dustin draft
Gregory Szorc <gps@mozilla.com> - Wed, 17 Feb 2016 14:56:48 -0800 - rev 331698
Push 11043 by gszorc@mozilla.com at Wed, 17 Feb 2016 23:00:32 +0000
Bug 1245969 - TaskCluster tasks for performing system bootstrap; r?dustin (THIS PATCH IS FEEDBACK QUALITY AND ISN'T READY FOR FULL REVIEW) We've had `mach bootstrap` and the one-line wget + `python bootstrap` bootstrap tool for years. Unfortunately, it's never been formally tested. TaskCluster enables us to finally do that. This commit introduces support for testing the system bootstrap tool on various Linux distros. The bootstrap tasks are implemented as generic non-build/test tasks. They are part of the "bootstrap" tag, so you can include "-j bootstrap" in your try syntax to schedule them. TODO * Arch does not work (interactive prompt is hanging execution) * Gentoo does not work * Figure out how to schedule every ~24 hours * Support Fennec bootstrap * Tidy up TreeHerder names/groups? * Work with sheriffs on TreeHerder visibility policy MozReview-Commit-ID: 1ncrnBT1Sti
11e286a1df3a4fcde49f3561859c7772041f58de: Bug 1246277 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self draft
David Rajchenbach-Teller <dteller@mozilla.com> - Wed, 17 Feb 2016 23:47:36 +0100 - rev 331697
Push 11042 by dteller@mozilla.com at Wed, 17 Feb 2016 22:55:10 +0000
Bug 1246277 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self MozReview-Commit-ID: EsaLZ8oB9r5
4ddd1e2f786217deab014a9bdcee79b6fe6f3e57: Bug 1243706 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self draft
David Rajchenbach-Teller <dteller@mozilla.com> - Wed, 17 Feb 2016 23:47:36 +0100 - rev 331696
Push 11041 by dteller@mozilla.com at Wed, 17 Feb 2016 22:51:40 +0000
Bug 1243706 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self MozReview-Commit-ID: EsaLZ8oB9r5
5fdc0244e2e9363fbcac80eb604c84adcdf2f75f: Bug 1249091 - Incorporate moz.build Files metadata into TaskCluster scheduling; r?garndt draft
Gregory Szorc <gps@mozilla.com> - Wed, 17 Feb 2016 14:27:53 -0800 - rev 331695
Push 11040 by gszorc@mozilla.com at Wed, 17 Feb 2016 22:51:37 +0000
Bug 1249091 - Incorporate moz.build Files metadata into TaskCluster scheduling; r?garndt Querying moz.build files info from Python is pretty simple: just instantiate a BuildReader and pass it a list of paths. We already have the (possibly empty) set of changed files from version control. So querying against the moz.build data is pretty easy! As part of this, the eslint-gecko file patterns have been moved into moz.build files. The moz.build syntax is a bit verbose because Files() are limited to a single pattern. There is an open bug on supporting multiple patterns per Files() instance that will make this cleaner. MozReview-Commit-ID: 3htQK9oDGoF
c559632cdaa2b24252bfc0380c7ee5ad0bc1d2e8: Bug 1249091 - Make generic tasks disabled by default; r?garndt draft
Gregory Szorc <gps@mozilla.com> - Wed, 17 Feb 2016 14:23:01 -0800 - rev 331694
Push 11040 by gszorc@mozilla.com at Wed, 17 Feb 2016 22:51:37 +0000
Bug 1249091 - Make generic tasks disabled by default; r?garndt We want to encourage tasks to only run when necessary. This commit changes the default behavior of generic tasks to not run unless their conditions are met. This is accomplished by the introduction of the "always" condition flag. We set this flag on old-style tasks to mimic existing behavior. All new generic tasks will need to set this flag or define conditions to trigger task scheduling. While we're here, we also add an "explicitly-added" property to denote that a task was explicitly requested to be run. This prevents such tasks from getting filtered. The filtering logic for tasks is kind of wonky and occurs in multiple locations. The code should definitely be unified someday. MozReview-Commit-ID: 7tQbd0GMUs0
91b09cb2bbae5560ed8ab5a906d4f025b8892ff9: Bug 1249091 - Add IMPACTED_TASKS to moz.build Files metadata; r?glandium draft
Gregory Szorc <gps@mozilla.com> - Wed, 17 Feb 2016 13:30:32 -0800 - rev 331693
Push 11040 by gszorc@mozilla.com at Wed, 17 Feb 2016 22:51:37 +0000
Bug 1249091 - Add IMPACTED_TASKS to moz.build Files metadata; r?glandium Bug 1245953 added support for limiting TaskCluster task scheduling to when certain files change. This was implemented as a list of mozpath patterns in TaskCluster's YAML files. A drawback of that approach is YAML files in testing/taskcluster list paths from all over the tree. This is prone to getting out of sync and can be a pain to update. moz.build files already provide a mechanism for associating metadata with files. And TaskCluster's scheduling code runs on a full source code checkout and it knows which files have changed. Putting all that together means it is possible for TaskCluster to query moz.build files for the set of tasks that are relevant to a file. This commit introduces the IMPACTED_TASKS Files metadata variable for declaring which TaskCluster tasks are impacted by files [and should be scheduled]. A subsequent commit will teach the TaskCluster code to query this metadata. MozReview-Commit-ID: IOSu9kMcSvi
3415bbb960ef937222a2a2e71f4c48c6dff0569c: Bug 1243706 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self draft
David Rajchenbach-Teller <dteller@mozilla.com> - Wed, 17 Feb 2016 23:47:36 +0100 - rev 331692
Push 11039 by dteller@mozilla.com at Wed, 17 Feb 2016 22:47:48 +0000
Bug 1243706 - Don't forget to register nsPerformanceStatsService on non-Nightly;r=self MozReview-Commit-ID: EsaLZ8oB9r5
1f5d5137b3b99326e460da185074cedd2b04a2ad: Bug 1240160: Add the TimeStamp based uptime value to crash reports, tagging it as UptimeTS, to differentiate from an existing Uptime value. A bit of additional code, avoiding the usage of C libraries to format some strings and a way to gtest these. r=benwa, also carrying ted.mielczarek review for the exception handler changes. draft
Milan Sreckovic <milan@mozilla.com> - Wed, 17 Feb 2016 17:44:21 -0500 - rev 331691
Push 11038 by msreckovic@mozilla.com at Wed, 17 Feb 2016 22:45:03 +0000
Bug 1240160: Add the TimeStamp based uptime value to crash reports, tagging it as UptimeTS, to differentiate from an existing Uptime value. A bit of additional code, avoiding the usage of C libraries to format some strings and a way to gtest these. r=benwa, also carrying ted.mielczarek review for the exception handler changes. MozReview-Commit-ID: 12pRuD7agIG
4c701b026040d1cc4aba2aa52956f161569bcfa1: Bug 1208204 - Pressing space in the animation inspector should toggle play/pause. r?pbrosset draft
Nicolas Chevobbe <chevobbe.nicolas@gmail.com> - Sat, 13 Feb 2016 17:07:05 +0100 - rev 331690
Push 11037 by chevobbe.nicolas@gmail.com at Wed, 17 Feb 2016 22:39:55 +0000
Bug 1208204 - Pressing space in the animation inspector should toggle play/pause. r?pbrosset MozReview-Commit-ID: 3NxNIaPjemt
a408d9d9a172500fb146e6d547069110346e89d2: Bug 1244701 - Message EOL plan to gingerbread users. r=margaret draft
Chenxia Liu <liuche@mozilla.com> - Fri, 12 Feb 2016 11:52:26 -0800 - rev 331689
Push 11036 by cliu@mozilla.com at Wed, 17 Feb 2016 22:38:01 +0000
Bug 1244701 - Message EOL plan to gingerbread users. r=margaret MozReview-Commit-ID: ESJd870iP3N
6aebf0aaaecbf311d0a8baee74dff2b75a33bafa: Bug 1231154 - Make cookies table fields editable via double-click in storage inspector r?pbrosset draft
Michael Ratcliffe <mratcliffe@mozilla.com> - Wed, 17 Feb 2016 13:31:16 +0000 - rev 331688
Push 11035 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:43:46 +0000
Bug 1231154 - Make cookies table fields editable via double-click in storage inspector r?pbrosset devtools/server/actors/storage.js * Add getEditableFields() to the cookie actor. The presence of this method indicates that we are making some fields editable. The method simply returns an array of editable fields. * We were previously showing expired cookies, which are not erased until their host and path are hit e.g. by loading a page that uses the expired cookie. We no longer display these expired cookies as they are not valid as far as the system is concerned. * cellEditInParent takes the data in the format listed in the comments and does the actual editing of the cookie. That is it... very simple. The frontend is already handled by the dependencies. MozReview-Commit-ID: KxMHHzV54bU
a71479171d247508c0774bf8b228163d4de6b66f: Bug 1235350 - Storage Inspector needs a simplified inline editor r?pbrosset draft
Michael Ratcliffe <mratcliffe@mozilla.com> - Wed, 17 Feb 2016 12:43:14 +0000 - rev 331687
Push 11034 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:34:43 +0000
Bug 1235350 - Storage Inspector needs a simplified inline editor r?pbrosset devtools/client/shared/widgets/TableWidget.js ============================================= * Set a datatype for each table in order to make it possible to access a table's actor. * onChange emits EVENTS.CELL_EDIT along with row and change info. * onMousedown closes any editors if the area outside the table is clicked. * makeFieldsEditable is called by ui.js when the appropriate actor has a getEditableFields method e.g. getEditableFields("cookie", ["isExpired", "value", ...]) * Remove stuff using the destructor. * Stop focusing the cell as it always focused the row instead often making the clicked cell jump outside the visible area. * Prevent errors in onClick and onMousedown listeners. * The actual EditableFieldsEngine widget. We decided to keep this inside TableWidget.js as is currently only used by tableWidget.js. devtools/client/storage/ui.js ============================= * In destroy() we remove event listeners and call table.destroy (the table's destructor was not called previous to adding this). * When we receive EVENTS.CELL_EDIT we call the appropriate actor's cellEdit() method passing in the row, columnid and change data. We don't need this for all datatypes but this makes this method very generic. * Switched dates from .toLocaleString() to .toUTCString() as this is what is used with all storage types in the browser. devtools/client/themes/widgets.css ================================== * Make non-editable cells look readonly in dark and light themes. Tests to follow. MozReview-Commit-ID: 48RLX8jBUtI
df671d7256446fcae8488f7109c4381fe75b52b8: Bug 1235350 - Storage Inspector needs a simplified inline editor r?pbrosset draft
Michael Ratcliffe <mratcliffe@mozilla.com> - Wed, 17 Feb 2016 12:43:14 +0000 - rev 331686
Push 11033 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:31:08 +0000
Bug 1235350 - Storage Inspector needs a simplified inline editor r?pbrosset devtools/client/shared/widgets/TableWidget.js ============================================= * Set a datatype for each table in order to make it possible to access a table's actor. * onChange emits EVENTS.CELL_EDIT along with row and change info. * onMousedown closes any editors if the area outside the table is clicked. * makeFieldsEditable is called by ui.js when the appropriate actor has a getEditableFields method e.g. getEditableFields("cookie", ["isExpired", "value", ...]) * Remove stuff using the destructor. * Stop focusing the cell as it always focused the row instead often making the clicked cell jump outside the visible area. * Prevent errors in onClick and onMousedown listeners. * The actual EditableFieldsEngine widget. We decided to keep this inside TableWidget.js as is currently only used by tableWidget.js. devtools/client/storage/ui.js ============================= * In destroy() we remove event listeners and call table.destroy (the table's destructor was not called previous to adding this). * When we receive EVENTS.CELL_EDIT we call the appropriate actor's cellEdit() method passing in the row, columnid and change data. We don't need this for all datatypes but this makes this method very generic. * Switched dates from .toLocaleString() to .toUTCString() as this is what is used with all storage types in the browser. devtools/client/themes/widgets.css ================================== * Make non-editable cells look readonly in dark and light themes. Tests to follow. MozReview-Commit-ID: 48RLX8jBUtI
73dd38538f6cf1d2d9947c2b9c6f1f226877f89d: Bug 1248563 - eslint cleanup of storage inspector code r?=pbrosset draft
Michael Ratcliffe <mratcliffe@mozilla.com> - Tue, 16 Feb 2016 16:12:55 +0000 - rev 331685
Push 11033 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:31:08 +0000
Bug 1248563 - eslint cleanup of storage inspector code r?=pbrosset MozReview-Commit-ID: Bz0vSbG5oU2
8b188df8101e985e7c5f0dbdbdcdd78e0893a400: Bug 1248563 - eslint cleanup of storage inspector code r=pbrosset
Michael Ratcliffe <mratcliffe@mozilla.com> - Tue, 16 Feb 2016 16:12:55 +0000 - rev 331684
Push 11033 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:31:08 +0000
Bug 1248563 - eslint cleanup of storage inspector code r=pbrosset
26578a584f861abfa06f02378a233b77f2a1feec: Bug 1248523 - Remove duplicate rules in .eslintrc r=kmag
Julien Wajsberg <felash@gmail.com> - Wed, 17 Feb 2016 12:03:05 -0800 - rev 331683
Push 11033 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:31:08 +0000
Bug 1248523 - Remove duplicate rules in .eslintrc r=kmag MozReview-Commit-ID: ICAnRlR1ILI
f9acfe711678f232e60beb2452a69218484dc013: Bug 1248563 - eslint cleanup of storage inspector code r=pbrosset draft
Michael Ratcliffe <mratcliffe@mozilla.com> - Tue, 16 Feb 2016 16:12:55 +0000 - rev 331682
Push 11032 by mratcliffe@mozilla.com at Wed, 17 Feb 2016 21:04:13 +0000
Bug 1248563 - eslint cleanup of storage inspector code r=pbrosset (In reply to Patrick Brosset [:pbrosset] [:pbro] from comment #4) > Comment on attachment 8719821 > MozReview Request: Bug 1248563 - eslint cleanup of storage inspector code > r?=pbrosset > > https://reviewboard.mozilla.org/r/35133/#review31917 > > Mostly good to go. My most important comment is about not disabling eslint > entirely in head.js but instead coniguring the unused rule (which is what > we're doing for other head.js files). > No need to re-request review after the changed have been done. Noted. > One question: with these changes, can the storage inspector be un-ignored > from .eslintignore, or are there other things left to clean up? > If so, can you file another bug (good-first, mentored) to finish the cleanup? > Unfortunately, the blocker there is defo not a good first bug (bug 1248447). There is also some CPOW stuff in tests too that should be fixed. > ::: devtools/client/shared/widgets/TableWidget.js:858 > (Diff revision 1) > > - return; > > + return true; > > } > > > > if (event.button == 0 && event.originalTarget == this.header) { > > return this.table.sortBy(this.id); > > Why does this event handler callback even return a value at all? > `sortBy` doesn't seem to return anything useful anyway. > ESLint complains about multiple returns when they don't seem to be of the > same type. > But this would pass ESLint rules and, I think, be correct: > > ``` > if (event.originalTarget == this.column) { > return; > } > > if (event.button == 0 && event.originalTarget == this.header) { > this.table.sortBy(this.id) > } > ``` > Changed. > ::: devtools/client/shared/widgets/TreeWidget.js:487 > (Diff revision 1) > > + items[this.level]; > > nit: maybe put each condition on its own line? > ``` > let label = items[this.level].label || > items[this.level].id || > items[this.level]; > ``` > Done > ::: devtools/client/storage/panel.js:1 > (Diff revision 1) > > -/* -*- Mode: Javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ > > +/* -*- Mode: Javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ // eslint-disable-line > > I'm not a fan of adding yet another comment at the end of this already long > line. > Can't this emacs config line be wrapped on 2 lines? > Nope. > If not, I would advise changing our .eslintrc instead by adding another > regex part in our max-len ignorePattern regex: > > `"max-len": [1, 80, 2, {"ignoreUrls": true, "ignorePattern": > "\\s*require\\s*\\(|^\\s*loader\\.lazy|-\\*- Mode"}],` > Well, It doesn't necessarily contain "Mode" but appending |-\\- works just fine. > ::: devtools/client/storage/test/head.js:7 > (Diff revision 1) > > +/* eslint-disable */ > > I'm guessing you've disabled this whole block because eslint complains about > unused globals, right? > If so, there's a better solution than just disabling eslint altogether. Add > this comment to the top of this head.js file: > > ``` > /* eslint no-unused-vars: [2, {"vars": "local"}] */ > ``` > > This makes sure eslint doesn't complain about unused globals variables in > this file (but will still complain about unused local variables). > I hadn't noticed this... perfect! > ::: devtools/client/storage/test/head.js:8 > (Diff revision 1) > > var { console } = Cu.import("resource://gre/modules/Console.jsm", {}); > > I think you don't need to import console in tests, it's already defined by > the test runner. > Yup, already removed it. > ::: devtools/client/storage/test/head.js:90 > (Diff revision 1) > > -function* openTabAndSetupStorage(url) { > > +function* openTabAndSetupStorage(url) { // eslint-disable-line > > This can then be removed. > Done > ::: devtools/client/storage/test/head.js:200 > (Diff revision 1) > > -function* finishTests() { > > +function* finishTests() { // eslint-disable-line > > And this. > Done > ::: devtools/client/storage/test/head.js:295 > (Diff revision 1) > > - function fetchError(aProp) { > > + function fetchError(prop) { // eslint-disable-line > > And this. > Done > ::: devtools/client/storage/test/head.js:328 > (Diff revision 1) > > -function findVariableViewProperties(aRules, aParsed) { > > +function findVariableViewProperties(ruleArray, parsed) { // eslint-disable-line > > And this. > Done > ::: devtools/client/storage/test/head.js:488 > (Diff revision 1) > > -function* selectTreeItem(ids) { > > +function* selectTreeItem(ids) { // eslint-disable-line > > And this. > Done > ::: devtools/client/storage/test/head.js:509 > (Diff revision 1) > > -function* selectTableItem(id) { > > +function* selectTableItem(id) { // eslint-disable-line > > And this. > Done > ::: devtools/client/storage/test/head.js:526 > (Diff revision 1) > > -function once(target, eventName, useCapture=false) { > > +function once(target, eventName, useCapture = false) { // eslint-disable-line > > And this! > Done > ::: devtools/server/actors/storage.js:1808 > (Diff revision 1) > > - this.childActorPool.set(store, new actor(this)); > > + // Let's use an upper-case constructor to avoid eslint errors. > > + let Actor = actor; > > + this.childActorPool.set(store, new Actor(this)); > > I find this a little easier to read (and no need for the eslint comment): > > ``` > for (let [store, ActorConstructor] of storageTypePool) { > this.childActorPool.set(store, new ActorConstructor(this)); > } > ``` Changed. MozReview-Commit-ID: ECnnGUHakMA
26b980f7dc730f4b7f10045d36125cb6cae70d9e: Bug 1246480 - Update test to not wait for a scroll event that might never arrive. r?botond draft
Kartikaya Gupta <kgupta@mozilla.com> - Wed, 17 Feb 2016 15:53:45 -0500 - rev 331681
Push 11031 by kgupta@mozilla.com at Wed, 17 Feb 2016 20:57:38 +0000
Bug 1246480 - Update test to not wait for a scroll event that might never arrive. r?botond MozReview-Commit-ID: JZmRmqFCJAG
c89f363605fecf01b8376df90fa18faf6011d433: Bug 760956 - Post: remove unneeded getPinnedSites and getTopSites from BrowserDB r=me draft
Andrzej Hunt <ahunt@mozilla.com> - Wed, 17 Feb 2016 09:57:44 -0800 - rev 331680
Push 11030 by ahunt@mozilla.com at Wed, 17 Feb 2016 20:44:39 +0000
Bug 760956 - Post: remove unneeded getPinnedSites and getTopSites from BrowserDB r=me MozReview-Commit-ID: 7Q5dOMVnqKP
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip