Commit Graph

126 Commits

Author SHA1 Message Date
Christian Holler
08b96099f2 Bug 1471647 - Add a pref to override the Telemetry update channel. r=Dexter
MozReview-Commit-ID: 4pRYWT8R8bB
2018-06-28 15:05:11 +02:00
Chris H-C
8040da08bf bug 1460595 - Implement the 'event' ping r=Dexter,janerik
MozReview-Commit-ID: HQAk8jmouyI
2018-05-14 09:57:30 -04:00
Marco Castelluccio
8b64f5f043 Bug 1449534 - Don't start TelemetryModules timer on shutdown. r=Dexter 2018-04-10 00:58:30 +02:00
Kris Maglione
fd7e9e6a69 Bug 1456035: Part 4 - Convert callers of XPCOMUtils.generateQI to ChromeUtils.generateQI. r=mccr8
This also removes any redundant Ci.nsISupports elements in the interface
lists.

This was done using the following script:

acecb401b7/processors/chromeutils-generateQI.jsm

MozReview-Commit-ID: AIx10P8GpZY
2018-04-22 20:55:06 -07:00
Alessio Placitelli
14f801cbb5 Bug 1452551 - Initialize the Telemetry core in GeckoView. r=esawin,gfritzsche,jchen
This additionally introduces a new pref (toolkit.telemetry.isGeckoViewMode)
to discriminate, at runtime, between Fennec and GV in JavaScript code.
Moreover, this disables TelemetryController initialization from content
processes, which was left enabled.

MozReview-Commit-ID: 7VoDorxAhvD
2018-04-11 13:11:27 +02:00
Jan-Erik Rediger
af5cde507e Bug 1448945 - Load dynamic inbuilt event probes on startup. r=chutten
MozReview-Commit-ID: 3eyqkcV6LWM
2018-04-09 15:26:09 +02:00
akriti
984440c21a Bug 1441892 : TelemetryController.savePing removed , r=chutten
MozReview-Commit-ID: 2D8SeJ8ShKH
2018-03-22 21:05:17 +05:30
J. Ryan Stinnett
4271604996 Bug 1445386 - Use GreD for artifact build scalars. r=chutten
On macOS, the paths for the special directories `GreD` (Resources) vs. `GreBinD`
(MacOS) are different.  On other platforms, they are the same.

With scalar loading for artifact builds, we need to load a file from
`Resources`, so `GreD` should be used for this case.

MozReview-Commit-ID: 91JFwOISQCk
2018-03-12 19:24:30 -05:00
Bogdan Tara
28ae405a63 Backed out changeset 3df355881aa0 (bug 1445386) for xpcshell failures on test_TelemetryScalars_buildFaster.js CLOSED TREE 2018-03-13 22:33:14 +02:00
J. Ryan Stinnett
507002aaf3 Bug 1445386 - Use GreD for artifact build scalars. r=chutten
On macOS, the paths for the special directories `GreD` (Resources) vs. `GreBinD`
(MacOS) are different.  On other platforms, they are the same.

With scalar loading for artifact builds, we need to load a file from
`Resources`, so `GreD` should be used for this case.

MozReview-Commit-ID: 91JFwOISQCk
2018-03-12 19:24:30 -05:00
Chris H-C
4f4493bc30 bug 1435753 - Resume collection of extended data from Release Candidate builds on beta, too r=froydnj,gfritzsche
Before Firefox 58 we collected extended collection from users on nightly,
aurora, and beta. Then we had to change things (see bug 1406391).

In doing so, we accidentally stopped receiving data from "release candidate"
beta builds. This patch resumes that collection by detecting an RC build as
having a MOZ_UPDATE_CHANNEL of "release", but an app.update.channel of "beta"

MozReview-Commit-ID: 3EzzDtQj8Kw
2018-02-27 14:12:43 -05:00
Florian Quèze
f1a55f73f8 Bug 1440284 - change this.EXPORTED_SYMBOLS back to var EXPORTED_SYMBOLS in JS modules, r=mccr8. 2018-02-23 20:50:01 +01:00
Andrew McCreight
272cee1e65 Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG
2018-02-06 09:36:57 -08:00
Alessio Placitelli
eb7a868f0c Bug 1425909 - Enable adding scalars in artifact builds without rebuilding Firefox. r=chutten,froydnj
This patch enables generating a JSON file that mirrors the scalar definitions
in Scalars.yaml. On local developer builds, this file is loaded when Firefox
starts to register all the scalars. If some change was introduced in the
definition files, the new scalar will be dynamically added.
The JSON definition file will be regenerated every time an artifact build
is performed or the build faster command is invoked.

MozReview-Commit-ID: Do3WjE38aIK
2018-01-18 18:25:01 +01:00
Narcis Beleuzu
d49844a6e2 Backed out 2 changesets (bug 1425909) for mochitest C3 failures on test_memoryReporters.xul. on a CLOSED TREE
Backed out changeset 6bcaae60c82e (bug 1425909)
Backed out changeset 0b5d96b317c3 (bug 1425909)
2018-02-01 19:45:22 +02:00
Alessio Placitelli
7f5273e816 Bug 1425909 - Enable adding scalars in artifact builds without rebuilding Firefox. r=chutten,froydnj
This patch enables generating a JSON file that mirrors the scalar definitions
in Scalars.yaml. On local developer builds, this file is loaded when Firefox
starts to register all the scalars. If some change was introduced in the
definition files, the new scalar will be dynamically added.
The JSON definition file will be regenerated every time an artifact build
is performed or the build faster command is invoked.

MozReview-Commit-ID: Do3WjE38aIK
2018-01-18 18:25:01 +01:00
Kris Maglione
0bb74efdf1 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Cosmin Sabou
f09d6d985d Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Kris Maglione
fd67f090b2 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Brindusan Cristian
483ba301cb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione
683a97d172 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl
2018-01-29 15:20:18 -08:00
Chris H-C
541c1a772a bug 1432809 - Remove ancient ThirdPartyCookieProbe.jsm r=Dexter
It seems as though pre-Firefox 40 we did a proto-experiment about what a world
without 3rd-party cookies would look like. Near as I can tell, we never looked
at the results of this exploration.

We have much better experimentation and data exploration techniques now that
would allow us to do something better than this, easier. So at least there's
that.

MozReview-Commit-ID: KaOyB87YjGA
2018-01-24 10:51:32 -05:00
Alessio Placitelli
efe22f54ab Bug 1411269 - Enable extended telemetry in local developer builds. r=chutten
This changes the Telemetry enabling logic so that extended telemetry
gets enabled when MOZILLA_OFFICIAL is not defined and the update
channel is "default", which is the case for local developer builds.

MozReview-Commit-ID: 19vlItyHsKp
2017-10-27 15:09:15 +02:00
Alessio Placitelli
100390f189 Bug 1406392 - Make nsITelemetry.canRecordExtended true on pre release channels. r=chutten
MozReview-Commit-ID: 2FR5dekXbeV
2017-10-16 12:28:38 +02:00
Dan Banner
5af4450327 Bug 1408777 - Automatically fix instances of missing semicolons in the tree. r=Standard8
MozReview-Commit-ID: Jm8BRgt6mIv
2017-10-15 20:50:39 +01:00
Kris Maglione
d7f8583c5a Bug 1391707: Follow-up: Skip idle in more places that incorrectly expect strict timing. r=me CLOSED TREE
MozReview-Commit-ID: BbMB5qk4F4e
2017-09-11 21:26:04 -07:00
Kris Maglione
0fb6b2e73c Bug 1388215: Part 3 - Use JIT-friendly defineLazy*Getters methods when defining many lazy imports. r=florian
MozReview-Commit-ID: APoFwUhDFdj
2017-08-09 13:03:36 -07:00
Marco Castelluccio
743dd2e0c8 Bug 1357517 - Remove Preferences.jsm usage from some Telemetry files. r=Dexter 2017-07-31 01:32:31 +02:00
Ryan VanderMeulen
ee187263c2 No bug - Fix up TelemetryController.jsm no-tabs ESLint failures that came in from the last merge from m-c. r=Dexter on a CLOSED TREE 2017-07-27 09:08:23 -04:00
Carsten "Tomcat" Book
3dfe1c867a merge mozilla-central to autoland 2017-07-27 11:38:15 +02:00
Alessio Placitelli
e28100a98c Bug 1120372 - Introduce the "update" ping. r=bsmedberg,gfritzsche,mhowell
This ping will be sent as soon as an update is ready to be applied, after
it's downloaded. This is currently enabled but protected behind the
'toolkit.telemetry.updatePing.enabled' preference.

MozReview-Commit-ID: 4TuM0e5MzBl
2017-07-12 12:12:18 +02:00
Kate Ustiuzhanina
3af03ea956 Bug 1318297 - Support initial implementation for Health ping. r=gfritzsche
Health ping is supposed to be a small ping for monitoring failures.
Current implementation tracks discarded for size and
send failures.
2017-07-25 16:19:31 +01:00
Carsten "Tomcat" Book
5089ce5b5c Backed out changeset 2ceb8a5a3e40 (bug 1318297) for xpcshell failures in test_TelemetryHealthPing.js 2017-07-24 16:16:40 +02:00
Kate Ustiuzhanina
17ad6746e6 Bug 1318297 - Support initial implementation for Health ping. r=gfritzsche
Health ping is supposed to be a small ping for monitoring failures.
Current implementation tracks discarded for size and
send failures.
2017-07-13 13:39:09 +01:00
Alejandro Rodriguez Salamanca
27d7b8264a Bug 1344723 - Use the prefs defined in TelemetryUtils.jsm in TelemetryController.jsm. r=dexter 2017-07-19 01:14:00 +02:00
Florian Quèze
f97b0ef21c Bug 1034599 - Convert remaining Promise.defer() uses to PromiseUtils.defer() or new Promise(), r=mconley. 2017-06-23 11:25:02 +02:00
Vedant Sareen
20ea75b667 Bug 1033860 - Add probes for time needed to load pending & archived pings from disk. r=chutten data-r=bsmedberg
Added "TELEMETRY_PENDING_LOAD_MS" & "TELEMETRY_ARCHIVE_LOAD_MS" as exponential histograms.
Added the functionality to save in these histograms the time it takes to load pending/archived pings respectively.
Added the file |test_TelemetryStorage.js| with tests for the added functionality.
2017-05-29 17:25:39 +05:30
Florian Quèze
50b8c6608d Bug 1353542 - script-generated patch to remove .bind(this) calls we no longer need now that generator functions have been replaced with async functions, r=Mossop. 2017-05-12 14:47:41 +02:00
Florian Quèze
b2499a4c57 Bug 1353542 - smaller script-generated patch converting remaining generators that are likely tasks (actual generators were identified by hand and whitelisted), r=Mossop. 2017-05-12 14:45:01 +02:00
Florian Quèze
ff53eb9a63 Bug 1353542 - massive script-generated patch converting Task.async and Task.spawn calls, and generators clearly identifiable as tasks, rs=Mossop. 2017-05-12 14:42:39 +02:00
Alessio Placitelli
6bc6b11ec3 Bug 1120370 - Implement the new-profile ping. r=bsmedberg,chutten, data-r=bsmedberg
It schedules the ping to be sent on new profiles after 30 minutes
from the Firefox startup. The ping is eventually sent at shutdown
if the scheduled time wasn't reached.
To reliably prevent sending the ping more than once, the "session-state.json"
file is used to keep track of the "sent" state.

The "new-profile" ping is protected behind a pref, disabled by default
in this patch.

MozReview-Commit-ID: 4g4lPRXe9q6
2017-04-27 09:36:01 +02:00
Alessio Placitelli
85afcfb3ff Bug 1346223 - Remove SessionRecorder.jsm. r=gfritzsche
This patch also moves the activeTicks logic to TelemetrySession.jsm
along with the related test coverage.

MozReview-Commit-ID: 8vXffqo2V85
2017-04-24 16:32:14 +02:00
mcfuller
fb5e11e9f1 Bug 1354039 - Remove unused PromiseUtils.jsm import from TelemetryController.jsm and TelemetryEnvironment.jsm. r=gfritzsche 2017-04-07 00:34:44 -07:00
djmdev
c93799501b Bug 1344738 - Updated TelemetryController.jsm to async function & await. r=dexter
Replaced Task.async and yield with async and await
2017-03-27 15:15:02 +05:30
Alessio Placitelli
d0dc520ab5 Bug 1336360 - Use the PingSender for sending pings when the browser shuts down. r=chutten,gsvelto
MozReview-Commit-ID: 6bNQs87UQ9m
2017-02-23 14:58:02 +01:00
Gabriele Svelto
ad6e2212ea Bug 1345153 - When the pingsender fails to send a ping, persist it to disk so that it can be sent later via regular telemetry; r=chutten,ted
Currently we hand over a crash ping to the pingsender via a pipe; if the
pingsender fails to send the ping we rely on the CrashManager assembling and
sending one instead. Since the crashmanager is not aware of whether the ping
was sent or not this causes duplication on the server side. To solve this
problem we save the ping to disk instead, read it from the pingsender and
delete the file only if the ping was sent. In this scenario the CrashManager
will know that a ping was already sent and will not send a new one.

This patch removes all the code used to deal with pipes between the telemetry,
crashreporter and pingsender code and also tries to cut down the amount of
platform-specific code we have in this machinery.

MozReview-Commit-ID: ASm2jnDagCK
2017-03-27 12:38:39 +02:00
Andrew McCreight
b5b828733f Bug 1349389 - Lazily load osfile.jsm in telemetry. r=gfritzsche
Also, avoid two entirely unused imports.

This avoids loading the various osfile jsms at startup.

The additional shim method for sysinfo is needed in
test_TelemetryEnvironment.js because delaying the intialization of
osfile results in loading osfile_shared_allthreads.jsm after the shim
sysinfo has been added, which initializes
Ci.nsIOSFileConstantsService, which calls into sysinfo in
InitOSFileConstants().

MozReview-Commit-ID: D7IWk20TRt1
2017-03-21 14:55:39 -07:00
Gabriele Svelto
4ff26d2d74 Bug 1341349 - Enable sending the crash ping from the crashreporter client only when the overall configuration would allow pings to be sent r=Dexter,gfritzsche
The crashreporter client will send a crash ping autonomously only when it
finds a valid TelemetryServerUrl annotation. This patch makes this annotation
conditional on all the preferences that regulate sending pings (including
official telemetry flags) and prevents it from sending pings before the user
has been notified of the privacy policy.

This is achieved by adding a new _annotateCrashReport() method to the
TelemetrySend obejct which can be called before we've initialized the rest of
the components. It is invoked manually early in the startup process so that
startup crashes are properly annotated, then it's invoked again when the user
is informed of the privacy policy as well as when one of the relevant
preferences is altered. This ensures that the annotations are stripped if the
user disables uploading pings without having to restart Firefox.

MozReview-Commit-ID: 2DKnoWGT1Bp
2017-03-08 15:00:26 +01:00
Marco Castelluccio
2f3e68079b Bug 1330833 - Add the new "modules" (DLLs) ping type. r=Dexter,mstange,jorendorff, data-review=bsmedberg 2017-02-18 14:17:30 +00:00
Wes Kocher
3f83b41f7e Backed out 2 changesets (bug 1330833) for windows 64 xpcshell failures a=backout
Backed out changeset 466565fa382a (bug 1330833)
Backed out changeset 927194e7769d (bug 1330833)

MozReview-Commit-ID: GB4KsH29xYC
2017-02-16 17:20:54 -08:00