Commit Graph

8811 Commits

Author SHA1 Message Date
Ed Lee
f07a609a76 Bug 1699188 - [mozlint] Include jsmin now that mozversioncontrol uses it r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D108807
2021-03-17 18:57:03 +00:00
Florian Quèze
dc0e6ae9f9 Bug 1699036 - Fix build error on (symbol 'profiler_is_locked_on_current_thread()' is multiply-defined) on platforms with MOZ_GECKO_PROFILER not defined, r=gerald. DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D108744
2021-03-17 08:50:18 +00:00
Ryan Kelly
f6a46d059d Bug 1665420 - Remove legacy BrowserID crypto code. r=markh
Differential Revision: https://phabricator.services.mozilla.com/D107985
2021-03-17 00:38:08 +00:00
Mike Hommey
ec7f538e0c Bug 1698719 - Remove aSkipFrames argument to both FramePointerStackWalk and MozStackWalkThread. r=gsvelto,gerald
In the case of FramePointerStackwalk, the caller gives a pointer to the
top-most frame to walk from. There isn't really a reason to give a
number of frames to skip, as the right frame pointer could be given in
the first place if that was really necessary. And in practice, it's
hasn't been used so far.

In the case of MozStackWalkThread, the caller presumably doesn't know
what the thread the stack is being walked for is doing, and it would be
a guesswork to pass a valid number of frames to skip. In practice, it's
also not used.

The aSkipFrames is already a footgun on MozStackWalk (and we're going to
change that in bug 1515229), we don't need to keep a footgun on these
other stack walking methods.

Differential Revision: https://phabricator.services.mozilla.com/D108563
2021-03-17 00:21:39 +00:00
Luca Greco
7b459bbed3 Bug 1698158 - part 3.2 - Remove unnecessary imports from testharness addons experimental API. r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D108229
2021-03-16 18:15:41 +00:00
Florian Quèze
0e334fd3d8 Bug 1698493 - ProfilerState.h should define no-op inline functions to avoid MOZ_GECKO_PROFILER ifdefs in code adding markers, r=gerald.
Differential Revision: https://phabricator.services.mozilla.com/D108457
2021-03-16 12:04:01 +00:00
Gerald Squelart
2cc3b39bc9 Bug 1698427 - Call ExtractJsFrames outside of MergeStacks, before native stackwalk (if present) - r=canaltinova
In a later bug, ExtractJsFrames will retrieve more information about the JS frames, which will be given to stack walkers in order to resume native sampling past JIT stacks.

Differential Revision: https://phabricator.services.mozilla.com/D108417
2021-03-16 05:08:23 +00:00
Gerald Squelart
3c786e5b5e Bug 1698427 - Clean and optimize ExtractJsFrames - r=canaltinova
Some changes after the previous just-move-the-code refactoring:
- Updated functon comment for clarity.
- Renamed `jsCount` to more precise `jsFramesCount`.
- Moved `samplePosInBuffer` computation to where it's first needed. Bonus: It won't happen anymore if there is no JS stack.
- Construct `jsIter` as first `for` statement, it's clearer that it's the main loop iterator.
- Moved `MAX_JS_FRAMES` checks into the loop body, and only when needed.
- Try to move-from an rvalue reference to the `frame`, instead of `value()` forcing a copy.
- Moved `context` retrieval closer to first use. Same in `MergeStacks`; Note that `aRegisteredThread.GetJSContext()` is only reading a member variable, so it's cheap enough to use it again there if needed, it may even be better overall than storing it in a register or on the stack (if the compiler couldn't optimize it already before).

Differential Revision: https://phabricator.services.mozilla.com/D108416
2021-03-16 05:08:22 +00:00
Gerald Squelart
76a3ecb304 Bug 1698427 - ExtractJsFrames factored out of MergeStacks - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D108415
2021-03-16 05:08:22 +00:00
Dave Hunt
a51eb65163 Bug 1697594 - Migrate static wiki content for Talos tests to PerfDocs r=perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D107896
2021-03-15 18:09:58 +00:00
Gerald Squelart
29484a6f2b Bug 1687631 - Add cpu profiler feature to stack-walking profiling tests - r=florian,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D107599
2021-03-15 11:54:44 +00:00
Gerald Squelart
f193604f7c Bug 1687631 - Enable CPU Utilization by default in the profilers - r=florian
Differential Revision: https://phabricator.services.mozilla.com/D107598
2021-03-15 11:54:43 +00:00
Dave Hunt
9e3ef144c3 Bug 1697772 - Replace uses of "whitelist" with "allowlist" in Talos r=perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D108163
2021-03-12 22:04:46 +00:00
Mitchell Hentges
20b1f0de34 Bug 1694839: Use glean_parser from current python environment r=firefox-build-system-reviewers,glandium
Though the `mach` virtual environment is activated, it
hasn't been added to the `$PATH`. So, we can't use the
`$PATH` to find `glean_parser`.

Differential Revision: https://phabricator.services.mozilla.com/D106543
2021-03-12 16:07:10 +00:00
Mitchell Hentges
8e07ea1b2d Bug 1694838: Show mach doc mach-telemetry failure reasons r=firefox-build-system-reviewers,glandium
Don't capture `glean_parser` output: it has error details,
so should be shown to the user.

Differential Revision: https://phabricator.services.mozilla.com/D106542
2021-03-12 16:07:10 +00:00
Andrew Halberstadt
659a890219 Bug 1638970 - Run 'mach jsshell-bench' with Python 3 r=releng-reviewers,mtabara,bhearsum
Differential Revision: https://phabricator.services.mozilla.com/D94882
2021-03-11 17:52:59 +00:00
leli
bb2e8e2911 Bug 1665057 - Add www button on https-only error page r=ckerschb,JulianWels,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D101468
2021-03-11 17:10:06 +00:00
Myeongjun Go
95e1fff568 Bug 1691739 - [perfdocs] Display each test description for raptor r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D105643
2021-03-11 15:59:15 +00:00
Julien Wajsberg
dd99d64577 Bug 1567222 - Improve profiler tests for the service worker case r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D107715
2021-03-11 14:31:11 +00:00
Andrew Halberstadt
21323f36fc Bug 1409733 - [taskcluster] Exclude taskcluster/mach_commands.py from the py2 linter, r=taskgraph-reviewers,bhearsum
Differential Revision: https://phabricator.services.mozilla.com/D107271
2021-03-09 16:18:23 +00:00
Andrew Creskey
3227459668 Bug 1696945 - Part 1: Extend PerfStats to record arbitrary durations r=bas,necko-reviewers,valentin
Add PerfStats::RecordMeasurement( metric, duration ) api so we can record timings for async metrics where details are not always known until completion.

Differential Revision: https://phabricator.services.mozilla.com/D107496
2021-03-09 15:59:42 +00:00
Mitchell Hentges
d925c83f15 Bug 1683797: Don't use "build targets" to build rusttests r=sheehan,firefox-build-system-reviewers,glandium
When "build targets" are used, the sccache server isn't
being used/integrated properly with make.
By moving rusttests to a separate build "application",
`client.mk` is invoked normally, and sccache is happy.

* Move rusttests to a new build "application".
* Move and denormalize rusttests mozconfigs. The new rusttests
  mozconfigs should expand to be mostly identical to their old
  versions, except with `MOZ_AUTOMATION_*=0` and
  `--enable-application=tools/rusttests`.
  They will differ a bit from their old variants because some
  of them originally didn't source from their
  respective `$app_mozconfigs/common`.
* Modify `baseconfig.mk` to change tiers if running rusttests.
* Adjust CI config to use new "rusttests" build application.

Differential Revision: https://phabricator.services.mozilla.com/D106294
2021-03-09 14:45:25 +00:00
David Major
3d0430b610 Bug 1696990 - Remove unnecessary semicolons in tools/fuzzing/rust/src/lib.rs r=vporof
Rust 1.52 errors out on these.

Differential Revision: https://phabricator.services.mozilla.com/D107510
2021-03-08 20:57:08 +00:00
Valentin Gosu
096363c840 Bug 1696417 - Move HTTP logging page to in-tree docs r=necko-reviewers,sylvestre,dragana DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D107208
2021-03-08 10:28:12 +00:00
championshuttler
3f7cb70543 Bug 1691327 - Update sphinxcontrib-mermaid to v0.6.3 DONTBUILD. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D107057
2021-03-04 07:07:58 +00:00
James Graham
7814585840 Bug 1695263 - Vendor in a copy of wptserve that's still Python 2 compatible, r=marionette-reviewers,whimboo
Upstream wptserve just switched to Python 3 only. That's fine for
web-platform-tests, but it turns out that some marionette harness
tests are also using wptserve and are still on Python 2.

Since fixing marionette harness turns out to be non-trivial and this
blocks other wpt work, this patch does the following:

* Temporarily vendors the last wptserve revision that works with
  Python 2 in to testing/web-platform/mozilla/tests/tools/wptserve_py2

* Configures the mach virtualenv to use that copy for Python 2 modules
  only.

* Configures the test packaging system to also put that copy in the
  common tests zip. Requirements files are updated to use either the
  Python 2 version or the Pyhton 3 version as required.

Differential Revision: https://phabricator.services.mozilla.com/D106764
2021-03-03 10:03:05 +00:00
Jens Stutte
05581ddca4 Bug 1678330: Ensure nested SpinEventLoopUntil(OrShutdown) calls are traceable to the originating source in case of crash. r=nika,extension-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D106839
2021-03-02 22:11:58 +00:00
Cosmin Sabou
b2eb620ed0 Backed out changeset 03cae7800b41 (bug 1678330) for mochitest plain failures on test_window_open_discarded_bc.html. CLOSED TREE 2021-03-02 20:18:21 +02:00
Jens Stutte
a0af9ea0a4 Bug 1678330: Ensure nested SpinEventLoopUntil(OrShutdown) calls are traceable to the originating source in case of crash. r=nika,extension-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D106839
2021-03-02 15:15:20 +00:00
Mike Hommey
39a14165d0 Bug 1694318 - Remove the mozjs_sys rust crate. r=jandem
The mozjs_sys crate is actually responsible for all the problems
encountered with the js crate we just removed, but the sm-mozjs-crate
task that builds and runs tests for it doesn't fail because... there is
actually no test to build and run, so all it builds is a static library,
which doesn't expose all the problems that exist.

The content of this crate in mozilla-central is also outdated compared
to servo upstream.

Differential Revision: https://phabricator.services.mozilla.com/D106390
2021-03-02 08:09:35 +00:00
Mike Hommey
93e7a214c2 Bug 1694318 - Remove the js rust crate. r=jandem,sheehan
The sm-rust-bindings task that builds and runs tests for it actually only
doesn't fail by three(!) distinct happenstances of chance:
- It somehow doesn't hit a race condition that can happen, but that
  attempting to change the build process for jsglue.cpp did,
- The second call to `cargo test` without `--feature debugmozjs` only
  works because nothing was cleaned up from the first and the second
  build uses artifacts from the first that are otherwise not there if
  only running the second.
- The addition of rust code to spidermonkey (the jsrust crate in
  js/src/rust) somehow didsn't cause problems in the current
  configuration, but in other configurations (which fixing the second
  thing above unveils) the build fails because of the multiple
  definition of rust_eh_personality between the jsrust staticlib and the
  rust stdlib that rustc links to test programs.

On top of all the above, the content of the crate in mozilla-central
has not received updates from upstream servo in years, and doesn't
reflect what servo actually uses.

Differential Revision: https://phabricator.services.mozilla.com/D106389
2021-03-02 08:09:35 +00:00
Dan Minor
a685764079 Bug 1691763 - Add identifier length check for Fluent linter; r=gregtatum,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D106666
2021-03-01 16:18:26 +00:00
Julien Cristau
e92445954b Bug 1689040 - bump update-verify docker image to ubuntu 20.04. r=bhearsum
Use python3 in more places so we don't have to explicitly install
the python 2.x package.

The newer version of curl in 20.04 will hopefully fix the intermittent
http2 framing errors we've been seeing recently.

Differential Revision: https://phabricator.services.mozilla.com/D106259
2021-03-01 10:49:26 +00:00
Jens Stutte
1e19379853 Bug 1689953: Harmonize shutdown phase definitions across nsTerminator and AppShutdown r=dthayer,chutten
This patch wants to solve several quirks around the shutdown terminator.

 - Use the same shutdown phase definitions in AppShutdown and nsTerminator. This touches quite a few files.
 - Ensure that the terminator phase shift is handled before any shutdown observer notifications are sent and reduce its heartbeat duration.
 - Add missing phases to the shutdown telemetry.

Please note that this changes the unit of "tick" to 100ms rather than 1s.
As a side effect, we also remove the obsolete "shutdown-persist" context.

While the existing test coverage continues to prove the most important functions, we acknowledge the wish for better test coverage with [[ https://bugzilla.mozilla.org/show_bug.cgi?id=1693966 | bug 1693966 ]].

Differential Revision: https://phabricator.services.mozilla.com/D103626
2021-02-27 14:38:14 +00:00
Butkovits Atila
bb3fe218a4 Backed out changeset be43a81b35f9 (bug 1689953) for causing failure at test_terminator_record.js. CLOSED TREE 2021-02-27 05:03:11 +02:00
Jens Stutte
f6d52040b9 Bug 1689953: Harmonize shutdown phase definitions across nsTerminator and AppShutdown r=dthayer,chutten
This patch wants to solve several quirks around the shutdown terminator.

 - Use the same shutdown phase definitions in AppShutdown and nsTerminator. This touches quite a few files.
 - Ensure that the terminator phase shift is handled before any shutdown observer notifications are sent and reduce its heartbeat duration.
 - Add missing phases to the shutdown telemetry.

Please note that this changes the unit of "tick" to 100ms rather than 1s.
As a side effect, we also remove the obsolete "shutdown-persist" context.

While the existing test coverage continues to prove the most important functions, we acknowledge the wish for better test coverage with [[ https://bugzilla.mozilla.org/show_bug.cgi?id=1693966 | bug 1693966 ]].

Differential Revision: https://phabricator.services.mozilla.com/D103626
2021-02-26 21:33:29 +00:00
Simon Giesecke
9af107a839 Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika
This makes the naming more consistent with other functions called
Insert and/or Update. Also, it removes the ambiguity whether
Put expects that an entry already exists or not, in particular because
it differed from nsTHashtable::PutEntry in that regard.

Differential Revision: https://phabricator.services.mozilla.com/D105473
2021-02-26 09:11:46 +00:00
Alex Lopez
56dc4c7787 Bug 1682959 - Update pylint dependencies to ensure compatibility. r=mhentges
Conflicting pylint requirements were causing the new pip dependency resolver
to report an error. This updates the dependencies for pylint (using the hashin package)
so that the conflict is resolved.

Differential Revision: https://phabricator.services.mozilla.com/D106154
2021-02-25 18:36:59 +00:00
Kershaw Chang
61d4a64bb0 Bug 1688864 - P2: Add more tests for ODoH r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D106074
2021-02-25 13:07:04 +00:00
Daisuke Akatsuka
c0e2db0631 Bug 897954: Implement and apply purge-caches mechanism. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D105440
2021-02-25 01:58:23 +00:00
smolnar
8a82d9ec16 Backed out 3 changesets (bug 897954) for causing node test failures in PlacesFeed. CLOSED TREE
Backed out changeset 0a60eb3f7ba8 (bug 897954)
Backed out changeset 9443814d173b (bug 897954)
Backed out changeset 2e558ac8e419 (bug 897954)
2021-02-25 03:21:58 +02:00
Daisuke Akatsuka
88810c4c22 Bug 897954: Implement and apply purge-caches mechanism. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D105440
2021-02-25 00:12:40 +00:00
Henrik Skupin
563458af7d Bug 1690475 - [remote] Reorganize xpcshell and browser chrome tests. r=remote-protocol-reviewers,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D106062
2021-02-23 17:37:03 +00:00
Gerald Squelart
b22230bc7d Bug 1693502 - Check GetObserverService() instead of gXPCOMShuttingDown to handle pre/failed-XPCOM calls - r=florian
In XREMain(), if something went wrong between `PROFILER_INIT` and `MakeUnique<ScopedXPCOMStartup>()`,
- XPCOM would not be initialized -- Meaning `ExtensionPolicyService::GetSingleton()` would assert when not finding the Observer Service,
- But `gXPCOMShuttingDown` would still be false.
So `StreamMetaJSCustomObject` (invoked by `profiler_shutdown`, called by the `PROFILER_INIT` object destructor at the end of `XREMain()`) would still attempt to use `ExtensionPolicyService::GetSingleton()`.

In this patch, `StreamMetaJSCustomObject` now checks that the observer service exists, instead of only testing `!gXPCOMShuttingDown`. This should handle all situations where `ExtensionPolicyService::GetSingleton()` could assert, not just during normal shutdown.

Differential Revision: https://phabricator.services.mozilla.com/D106061
2021-02-23 09:01:37 +00:00
Alexandre Poirot
ed507be3f8 Bug 1690742 - [devtools] - Strip flow from the debugger sources. r=nchevobbe,bomsy
This is a mixed of automated and manual changes.
See abandoned revisions on phabricator for a detailed breakdown.

Differential Revision: https://phabricator.services.mozilla.com/D105324
2021-02-22 10:48:52 +00:00
championshuttler
501ee430fa Bug 1691327 - Update sphinxcontrib-mermaid to v0.6.2 by renovate DONTBUILD.r=sylvestre,firefox-source-docs-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D105660
2021-02-20 19:12:01 +00:00
Neil Deakin
9b59ada594 Bug 1689126, add a test to verify that a subframe crash notification does not appear if there is no crash report, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D105661
2021-02-19 13:40:45 +00:00
championshuttler
2d8d6edee2 Bug 1693140 - Fix the mermaid rendering issue and remove post processing script.r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D105674
2021-02-19 08:45:10 +00:00
Jeff Gilbert
85bbcbfa5e Bug 1602143 - Use ShortStatementLines=1 for readability-braces-around-statements. r=andi
This will reduce the false-positive rate that sometimes causes devs to
ignore other important warnings because they expect to see these
warnings because of module/legacy code styles.

```
if (foo) return; // no longer warns
if (bar)
  return; // still warns
```
clang-format will sometimes turn long-line versions of the former into
the latter, and this warning will pick those as readability warnings.
NB: This is Chromium style for same-line conditional statements.

Another test result json has its EOL-newline removed too, since that's
what the script does and I'm just committing its results.

Differential Revision: https://phabricator.services.mozilla.com/D105497
2021-02-18 08:26:11 +00:00
Gerald Squelart
96f3fabfcb Bug 1693037 - Fix non-MOZ_GECKO_PROFILER builds - r=florian
No code changes.

Build issues were found by renaming `MOZ_GECKO_PROFILER` to something else in toolkit/moz.configure, in both unified and non-unified builds, on all supported platforms.

Also updated some profiler-related comments.

Differential Revision: https://phabricator.services.mozilla.com/D105375
2021-02-17 22:36:28 +00:00