Граф коммитов

8339 Коммитов

Автор SHA1 Сообщение Дата
Emil Farisan 1c3c4674f6 Bug 1658505 - added banner in migrated pages and added table. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D86812
2020-08-19 10:12:39 +00:00
Emil Farisan bfa8dd8228 Bug 1658505 - fix codespell and rst errors and remove unused reference. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D86810
2020-08-17 12:07:49 +00:00
Emil Farisan 8d75cc29fb Bug 1658505 - added debugging and memory sanitizer pages from MDN to in-tree. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D86705
2020-08-17 12:07:18 +00:00
Duncan Dean d99484e5ff Bug 1620162 - Upgrade eslint-plugin-jest and fix new lint errors. r=bomsy,Standard8
Currently the `jest/no-standalone-expect` rule needs to be disabled for `jest-in-case` cases blocks as it is not compatible.

Differential Revision: https://phabricator.services.mozilla.com/D87184
2020-08-20 08:52:42 +00:00
Bogdan Tara a904137456 Backed out changeset 0327b662a05f (bug 1659674) for nsStorageStream related central bustage CLOSED TREE 2020-08-20 02:58:41 +03:00
Gerald Squelart 5601ec576f Bug 1659901 - Rework profiler's TLS accesses - r=mstange
To ensure correct usage of TLSs in the profiler, they are now better encapsulated so that:
- init() is called once and its result is cached. (TLSREGISTEREDThread::Init() doesn't need proof of the PSLock, because it's using thread-safe function-static initializers.)
- get() and set() always init() as needed, or in some particular cases strongly assert that init() was successful.

Also, a null-check was missing in profiler_init_threadmanager().

Depends on D87588

Differential Revision: https://phabricator.services.mozilla.com/D87589
2020-08-19 18:26:32 +00:00
Gerald Squelart 2a9a115783 Bug 1657174 - Added more (un)registration TLS assertions - r=mstange
Assertions are also clarified with messages, to better distinguish the same tests in different locations.

Assertions should now cover all cases:
- NEW: After registering a thread in the profiler with `CorePS::AppendRegisteredThread`, the TLS should be set to that thread.
- NEW: If `profiler_register_thread` is called again, the TLS should still be set to that thread.
- When `profiler_unregister_thread` is first called, the TLS should still be set to that thread (that's the assertion currently trigering this bug 1657174),
- NEW: When `profiler_unregister_thread` is first called and after we remove the thread with `CorePS::RemoveRegisteredThread`, the TLS should now be null.
- If `profiler_unregister_thread` is called again (or with a never-registered thread), the TLS should be null.

This is a further exploratory patch for bug 1657174, this will not prevent crashes, but hopefully it should give a bit more information, at least a smaller range in which the possible presumed registration/TLS race happens.

Differential Revision: https://phabricator.services.mozilla.com/D87588
2020-08-19 17:49:12 +00:00
Simon Giesecke 9352526320 Bug 1659674 - Change BulkWrite to return mozilla::Result. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D87419
2020-08-19 14:39:03 +00:00
Florian Quèze 918620c7cc Bug 1659771 - Remove obsolete nsIProfiler.AddMarker API, r=gerald.
Differential Revision: https://phabricator.services.mozilla.com/D87470
2020-08-18 22:52:55 +00:00
Sonia Singla 5f5c9fd7f2 Bug 1659267 - Remove usages of -moz-user-select across the Firefox codebase. r=emilio,marionette-reviewers,geckoview-reviewers,preferences-reviewers,whimboo,agi
Differential Revision: https://phabricator.services.mozilla.com/D87499
2020-08-18 23:37:51 +00:00
Ricky Stewart 1218762d08 Bug 1659575 - Delete `mach python-safety` r=ahal
There are zero uses of this `mach` command over the past 90 days according to our telemetry. There are no external references to `mach python-safety` in-tree, and indeed if you track the history of the originating bug 1468394, it appears that once the `mach` command was created, none of the follow-up work that was discussed (i.e. running this in CI and triaging failures to appropriate owners) was done over the following 2 years.

If this ever does appear to be useful in the future, we can just resurrect this code from source control.

Differential Revision: https://phabricator.services.mozilla.com/D87351
2020-08-18 14:18:24 +00:00
Nazım Can Altınova 8fbf2fb2ca Bug 1659103 - Start JVM profiler before loading of libxul and mozglue r=geckoview-reviewers,julienw,snorp
Before this patch, we were always waiting for libxul to load because we were
starting the JVM from libxul. But we needed to start this a lot earlier. Also
thinking that JVM profiler can actually run without the gecko side, we can
start this a lot earlier than we currently start. We need to check the
environmnet variables to be able to start the profiler. It looks like the best
place to do it is inside the GeckoThread.run method.

We have also a similar code for Java debugger, with maybeWaitForJavaDebugger
name. This fucntion does similar things in terms of enviromnent variable
handling.

Differential Revision: https://phabricator.services.mozilla.com/D87069
2020-08-18 12:57:22 +00:00
Andrew Halberstadt 456d9a582f Bug 1655107 - [moztreedocs] Use pip-tools rather than pipenv to manage doc dependencies r=championshuttler,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D85048
2020-08-17 17:46:23 +00:00
Andrew Halberstadt 9acf8feccb Bug 1659466 - [docs] Don't set up redirects for try pushes, r=firefox-source-docs-reviewers,sylvestre,championshuttler
Differential Revision: https://phabricator.services.mozilla.com/D87286
2020-08-17 17:24:54 +00:00
Bogdan Tara 42af559fd1 Backed out changeset 6124d9a5422b (bug 1655107) for pip related failures CLOSED TREE 2020-08-17 17:32:40 +03:00
Andrew Halberstadt b5d2c40afa Bug 1655107 - [moztreedocs] Use pip-tools rather than pipenv to manage doc dependencies r=championshuttler,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D85048
2020-08-17 14:07:35 +00:00
Gerald Squelart 2ae86bbfac Bug 1658232 - profiler_capture_backtrace(ProfileChunkedBuffer&) - r=canaltinova
The stack sampling can be abstracted to only use a reference to a `ProfileBuffer`, and the existing `locked_profiler_get_backtrace` can provide its stack-based `ProfileBuffer` that points at a heap-based `ProfileChunkedBuffer` (the one that will be stored in the returned `ProfilerBacktrace`).

And we can now add a public `profiler_capture_backtrace` that only takes a reference to a `ProfileChunkedBuffer`, and fills it with a backtrace.
This will be used by the new marker API, to optionally capture a backtrace in stack-based buffers at the user's request.

Differential Revision: https://phabricator.services.mozilla.com/D86514
2020-08-13 03:30:58 +00:00
Gerald Squelart d9705556b1 Bug 1658232 - Use a temporary ProfileBuffer in locked_profiler_get_backtrace - r=gregtatum
A heap-allocate ProfileBuffer is not really needed, so it's more efficient to have one on the stack during capture, and we don't need to keep it in the `ProfilerBacktrace`.

Differential Revision: https://phabricator.services.mozilla.com/D86513
2020-08-13 03:30:30 +00:00
Gerald Squelart b2df384fc7 Bug 1658232 - ProfilerBacktrace can reference or own a ProfileBuffer and/or ProfileChunkedBuffer - r=canaltinova,gregtatum
Instead of always taking ownership of both heap-allocated `ProfileBuffer` and `ProfileChunkedBuffer`, `ProfilerBacktrace` can now accept:
- Unique pointers to both or either, similar to what it was before, so a ProfilerBacktrace can be kept for later use.
- Non-owning pointers to both or either, to allow callers to use stack-based buffer(s); null pointers are allowed for totally empty backtraces.

Only the `ProfileChunkedBuffer` contains the actual data, we can create a `ProfileBuffer` on the spot if not provided.

Differential Revision: https://phabricator.services.mozilla.com/D86512
2020-08-13 03:30:02 +00:00
Gerald Squelart d4fa7a1fda Bug 1658232 - Use std::string for ProfilerBacktrace::mName - r=gregtatum
Instead of keeping a pointer to a null-terminated string, it's simpler to keep a proper `std::string`, and it helps to keep the length ready for streaming.

Differential Revision: https://phabricator.services.mozilla.com/D86511
2020-08-13 03:29:34 +00:00
Gerald Squelart ab7dd1effd Bug 1658232 - ProfileBuffer::UnderlyingChunkedBuffer() - r=gregtatum
Let `ProfilerBuffer` expose its underlying `ProfileChunkedBuffer`, this will be useful when `ProfilerBacktrace` will only be given a `ProfileBuffer`, and to perform some safety checks.

As a bonus from this change, `StoreMarker()` can be made non-generic -- It was relying on both `ProfileBuffer` and `ProfileChunkedBuffer` to have the same function `PutObjects()`. Consequently, we don't need `ProfileBuffer::PutObjects()` anymore, this removes this clunky pass-through (but useful and the best solution at the time).

Differential Revision: https://phabricator.services.mozilla.com/D86510
2020-08-13 03:29:06 +00:00
Gerald Squelart accd288dcf Bug 1658232 - Don't make ~ProfileBuffer() erase the ProfileChunkedBuffer - r=gregtatum
Until now the `ProfileBuffer` would erase its attached `ProfileChunkedBuffer` upon destruction.
However:
- The main `ProfileChunkedBuffer` is erased anyway in the `ActivePS`,
- Other `ProfileChunkedBuffer`s are short-lived and don't really need to be erased.
- The upcoming changes to `ProfilerBacktrace` and its users means that we will only keep the `ProfileChunkedBuffer` as backtrace storage, a `ProfileBuffer` will only be needed during capture and then when streaming to JSON; so we don't want the `ProfileChunkedBuffer` to be erased when detached from its capturing `ProfileBuffer`.
- Also, the erasing was done by `ResetChunkManager()` in `~ProfileBuffer()`, which was asymetric with what the constructor does (nothing!). So it's better to leave whoever did the `SetChunkManager()` to deal with the corresponding `ResetChunkManager()` (in the main case `ActivePS`, otherwise short-lived buffers being destroyed at the end of their scope).

Both `ProfileBuffer` destructors were only doing this operation, so we can just remove them completely.

Differential Revision: https://phabricator.services.mozilla.com/D86509
2020-08-13 03:28:38 +00:00
Gerald Squelart 3f131cf7b3 Bug 1658232 - ProfileBufferEntryKinds.h - r=gregtatum
Backtraces and other marker data will be stored directly into a ProfileChunkedBuffer from public code in both profilers, so we will need to have the entry "kinds" available outside of the profiler directories.
This also helps with de-duplicating, since the kinds will now be in one spot and shared by both profilers.

Differential Revision: https://phabricator.services.mozilla.com/D86508
2020-08-13 03:28:11 +00:00
Gerald Squelart 5d1e58c441 Bug 1658232 - ns...Strings are now serialized with their length instead of the number of bytes - r=gregtatum
While working on this bug, I found it distracting to reason about how strings (of different char types) are stored in the profile buffer.
So instead of storing the size in bytes, I think it's better to store the string length in number of characters, in particular it matches lengths as handled by string types.

Differential Revision: https://phabricator.services.mozilla.com/D86507
2020-08-13 03:27:42 +00:00
Nazım Can Altınova 5b42e2f322 Bug 1658708 - Do not create a MarkerTiming when profiler is not active. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D86807
2020-08-12 14:38:44 +00:00
Sylvestre Ledru 5ea6c250c3 Bug 1657926 - firefox doc: fix some warnings r=championshuttler
Differential Revision: https://phabricator.services.mozilla.com/D86732
2020-08-11 23:20:25 +00:00
Ricky Stewart cd9a620ede Bug 1657954 - Move various branding options from `old-configure` r=geckoview-reviewers,mhentges,nalexander,snorp
Differential Revision: https://phabricator.services.mozilla.com/D86391
2020-08-11 15:58:52 +00:00
Sylvestre Ledru 1bcabb9d34 Bug 1657926 - Move to sphinx 3.1.2 and sphinx-js 3.0.1 r=championshuttler
Hopefully, it will help with the intermittent issues.
And it seems that the warnings are better presented.

Differential Revision: https://phabricator.services.mozilla.com/D86361
2020-08-11 15:26:16 +00:00
Nathan Froyd 3c32012822 Bug 1658375 - add support for arm64 macOS to profiler sampling and unwinding; r=mstange
The registers referenced in this patch and the assembly have been tested to
compile; the code changes have not been tested to actually work.

Differential Revision: https://phabricator.services.mozilla.com/D86612
2020-08-11 14:09:20 +00:00
Nathan Froyd 7951ffdf2e Bug 1658375 - define platform macros for arm64 macOS in the profiler; r=mstange
This change doesn't resolve some of the issues in profiler code that have
x86-64-isms in them, but this is at least a start.

Differential Revision: https://phabricator.services.mozilla.com/D86595
2020-08-10 22:02:27 +00:00
Michael Hoffmann 6de2904eeb Bug 1553421 - Add request method to network markers r=necko-reviewers,gerald,valentin
Differential Revision: https://phabricator.services.mozilla.com/D85878
2020-08-10 06:33:22 +00:00
Gerald Squelart 9aec647e21 Bug 1658230 - Renamed SpliceableChunkedJSONWriter::WriteFunc to ChunkedWriteFunc - r=gregtatum
SpliceableChunkedJSONWriter::WriteFunc was hiding base-class non-virtual JSONWriter::WriteFunc(), which made it less than ideal (for me) to reason with.

Also made a few subclasses final, to help with possible devirtualization.

Differential Revision: https://phabricator.services.mozilla.com/D86505
2020-08-11 03:51:33 +00:00
Gerald Squelart cc6cde66ad Bug 1658230 - Deduplicate ProfileJSONWriter classes - r=gregtatum
The main change is removing ProfileJSONWriter.cpp, making ProfileJSONWriter.h point at BaseProfileJSONWriter.h, and exposing `mozilla::baseprofiler::` classes in the top namespace as expected by users of ProfileJSONWriter.h (to minimize changes).

These two headers are now always present in the "mozilla" include directory, independent of MOZ_GECKO_PROFILER settings.

The rest is just needed tweaks to match the above changes.

Differential Revision: https://phabricator.services.mozilla.com/D86504
2020-08-11 03:50:54 +00:00
emcminn 037a8e97b9 Bug 1656048 - Remove linter exception for newtab re: whitelist/blacklist, and fix errors r=andreio
Differential Revision: https://phabricator.services.mozilla.com/D85931
2020-08-10 16:47:39 +00:00
Andrew Halberstadt 9fb7a14b52 Bug 1654937 - [lint] Fix test_flake8.py::test_lint_excluded_file on Windows, r=linter-reviewers,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D86411
2020-08-10 09:37:29 +00:00
Mike Hommey 527e667296 Bug 1537703 - Use llvm-rc instead of rc.exe. r=mhentges,froydnj
This makes us use one less tool from MSVC, and removes one more use of wine
in cross builds.

We replace the call to either rc/llvm-rc or windres with a wrapper script.
While the script is not strictly needed for the latter, we use a wrapper
in that case anyway because it's one step towards fixing bug 1498414.
For llvm-rc, however, we need a wrapper because llvm-rc doesn't preprocess
on its own, so the wrapper does that too.

The wrapper script also allows to deal with the default flags passed to
llvm-rc or windres, rather than inherit them from old-configure.

We also need to explicitly pass the codepage to llvm-rc, which was not
necessary with rc (presumably, llvm-rc has a different default).

While here, remove the unused WINDRES subst from js/src/old-configure.in.
Also, while here, we remove --use-temp-file, because as described in the
linked bug and in the windres manual page, it was used to work around bugs
on Windows 98 and earlier.

Differential Revision: https://phabricator.services.mozilla.com/D86312
2020-08-08 21:02:04 +00:00
Andreea Pavel aed7669de9 Bug 1654648 - fix whitespace linting failure r=test-only 2020-08-08 07:14:40 +03:00
Evan Welsh 2e8ba0e06f Bug 1654696 - Implement code coverage JSAPI. r=nbp,jwalden
Differential Revision: https://phabricator.services.mozilla.com/D85808
2020-08-08 03:23:31 +00:00
Ricky Stewart 31755b431d Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj
Today we don't require that `mach` `CommandProvider`s subclass from any particular parent class and we're very lax about the requirements they must meet. While that's convenient in certain circumstances, it has some unfortunate implications for feature development.

Today the only requirements that we have for `CommandProvider`s are that they have an `__init__()` method that takes either 1 or 2 arguments, the second of which must be called `context` and is populated with the `mach` `CommandContext`. Again, while this flexibility is occasionally convenient, it is limiting. As we add features to `mach`, having a better idea what the shape of our `CommandProvider`s are and how we can instantiate them and use them is increasingly important, and this gives us additional control when having `mach` configure `CommandProvider`s based on data that is only available at the `mach` level. In particular, we plan to leverage this in bugs 985141 and 1654074.

Here we add validation to the `CommandProvider` decorator to ensure all classes inherit from `MachCommandBase`, update all `CommandProvider`s in-tree to inherit from `MachCommandBase`, and update source and test code accordingly.

Follow-up work: we now require (de facto) that the `context` be populated with a `topdir` attribute by the `populate_context_handler` function, since instantiating the `MachCommandBase` requires a `topdir` be provided. This is fine for now in the interest of keeping this patch reasonably sized, but some additional refactoring could make this cleaner.

Differential Revision: https://phabricator.services.mozilla.com/D86255
2020-08-07 18:24:59 +00:00
Ricky Stewart 3ddb065650 Bug 1656611 - Remove `objdir` support from `virtualenv_packages.txt` handling r=mhentges,froydnj
I noticed that the `objdir:build` entry in `build/virtualenv_packages.txt` entry was apparently unused. This originates from bug 841713, seven years ago, when the `objdir` handling was introduced. Today, this doesn't appear to be serving a purpose. There is no Python library in my `$objdir/build` directory; nor can I see anything in `build/moz.build` or any related files suggesting one could ever appear. I can only assume this feature has outlived its usefulness, so delete it and the relevant in-tree support.

This necessitates slightly changing the signature and implementation of the `activate_pipenv()` method; also update all callers.

Differential Revision: https://phabricator.services.mozilla.com/D85635
2020-08-07 16:03:36 +00:00
Bogdan Tara 57ed67928b Backed out changeset 760fc38c793b (bug 1656611) for doc failure complaining about virtualenv_root CLOSED TREE 2020-08-07 18:57:56 +03:00
Ricky Stewart 41e473f17b Bug 1656611 - Remove `objdir` support from `virtualenv_packages.txt` handling r=mhentges,froydnj
I noticed that the `objdir:build` entry in `build/virtualenv_packages.txt` entry was apparently unused. This originates from bug 841713, seven years ago, when the `objdir` handling was introduced. Today, this doesn't appear to be serving a purpose. There is no Python library in my `$objdir/build` directory; nor can I see anything in `build/moz.build` or any related files suggesting one could ever appear. I can only assume this feature has outlived its usefulness, so delete it and the relevant in-tree support.

This necessitates slightly changing the signature and implementation of the `activate_pipenv()` method; also update all callers.

Differential Revision: https://phabricator.services.mozilla.com/D85635
2020-08-06 18:21:35 +00:00
Hamzah 8a86250605 Bug 1408051 - Remove mozharness' copy of virtualenv and use the one under /third_party/python instead r=ahal,rail
Differential Revision: https://phabricator.services.mozilla.com/D83181
2020-08-05 19:52:24 +00:00
Simon Giesecke 1e02318b49 Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83817
2020-08-07 07:49:47 +00:00
Andrew Halberstadt 8733547d93 Bug 1657649 - [ci] Remove the SETA shadow-scheduler, r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D86250
2020-08-06 20:27:26 +00:00
Mike Hommey 22179736a6 Bug 1656141 - Rename version_win.py to create_rc.py. r=firefox-build-system-reviewers,mhentges,rstewart
Because while the original perl script was added to add version info
to Windows binaries, it does more and will do even more with upcoming
changes.

Differential Revision: https://phabricator.services.mozilla.com/D86153
2020-08-06 22:52:01 +00:00
Mihai Alexandru Michis c4e805857f Backed out 9 changesets (bug 1656141) for causing multiple failures.
CLOSED TREE

Backed out changeset 9033b0400339 (bug 1656141)
Backed out changeset e43dd57dc61a (bug 1656141)
Backed out changeset eb450457a9b7 (bug 1656141)
Backed out changeset 194a994cf9c9 (bug 1656141)
Backed out changeset ce6831acb5e3 (bug 1656141)
Backed out changeset 29653ea85d49 (bug 1656141)
Backed out changeset 704f28486bda (bug 1656141)
Backed out changeset de8899453150 (bug 1656141)
Backed out changeset 4b133eda46aa (bug 1656141)
2020-08-07 01:48:45 +03:00
Mike Hommey d6565296c3 Bug 1656141 - Rename version_win.py to create_rc.py. r=firefox-build-system-reviewers,mhentges,rstewart
Because while the original perl script was added to add version info
to Windows binaries, it does more and will do even more with upcoming
changes.

Differential Revision: https://phabricator.services.mozilla.com/D86153
2020-08-06 15:59:09 +00:00
David Major 4950130b02 Bug 1657391 - Update CodeCoverageHandler.cpp for clang-12 r=marco
In clang-12, 5809a32e7c split `__gcov_flush` into `__gcov_dump` and `__gcov_reset`. We have to make a corresponding update in CodeCoverageHandler.cpp to avoid build errors.

Differential Revision: https://phabricator.services.mozilla.com/D86026
2020-08-05 22:00:39 +00:00
Andi-Bogdan Postelnicu 1ead43f591 Bug 1657299 - First step of refactor `static-analysis` integration, making it more modular. r=marco
Add a modular approach for the integration of `static-analysis` module in order
to be able to share components of it with other modules, like the integration of
`clangd` in `vscode` where we need to have access to the configuration of `clang-tidy`
in order to have `in-ide` `static-analysis` messages.
In this initial step we make a separate module for the clang-tidy configuration.

Differential Revision: https://phabricator.services.mozilla.com/D85979
2020-08-06 06:51:16 +00:00
Andi-Bogdan Postelnicu 9e73e83509 Bug 1657301 - Reformat `static-analysis` with `black`. r=sylvestre
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D85985
2020-08-05 13:32:46 +00:00
Gerald Squelart b0647eab4e Bug 1657174 - Added more targeted assertions around multiple thread de-registrations - r=mstange
`MOZ_RELEASE_ASSERT(registeredThread == TLSRegisteredThread::RegisteredThread(lock));` is failing on Android, probably as a follow-up to bug 1651086, which allowed multiple registrations (to fix a problem with yet-unknown root cause).
This assertion is too broad to help find the issue because at this point:
- If `FindCurrentThreadRegisteredThread()` is not null, `TLSRegisteredThread::RegisteredThread()` should also not be null, and it should equal `FindCurrentThreadRegisteredThread()`, from the first succesful `profiler_register_thread()`.
- If `FindCurrentThreadRegisteredThread()` is null, `TLSRegisteredThread::RegisteredThread()` should be null as well, from the first `profiler_unregister_thread()`.

So this patch splits this assertion into multiple more targeted ones to check the above, and also some extra assertions after de-registration, to ensure that both `FindCurrentThreadRegisteredThread()` and `TLSRegisteredThread::RegisteredThread()` are null.

Differential Revision: https://phabricator.services.mozilla.com/D86118
2020-08-06 00:55:20 +00:00
championshuttler 790296ef00 Bug 1649966 - Discard the docs for vcs-setup git. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D82087
2020-08-05 02:47:20 +00:00
Mike Hommey cd31cb1f77 Bug 1116553 - Rewrite version_win.pl in Python. r=firefox-build-system-reviewers,rstewart
This is not a feature-for-feature rewrite. The python version removes
unused things, and simplifies some others:

- Only two command line arguments are taken in, and all the others are
  dropped and the corresponding values are gotten from the buildconfig
  module instead. The command line arguments are also taken as
  positional arguments rather than going with a full argument parser.

- Variable expansion in module.ver used to be limited to one specific
  variable to expand for a given value, which is now replaced with the
  possibility to expand any of the variables that are allowed in
  module.ver.

- The perl version was adding a RT_MANIFEST entry on its own if a
  manifest file existed in the objdir for the given binary, but if such
  a file existed, the build would fail after linking from the changes in
  bug 1613799.

- The perl version was defaulting the module name to the binary name in
  a branch that was never taken because the module name was assigned to
  an empty string before that.

The output from the new script has been validated to being identical to
the output from the perl script, except for one extra whitespace at the
end of a comment.

Differential Revision: https://phabricator.services.mozilla.com/D85817
2020-08-04 22:21:01 +00:00
Tom Prince 7c9d324074 Bug 1657181 - Show task estimates for any selector where we have an explicit list of tasks; r=sfraser
Differential Revision: https://phabricator.services.mozilla.com/D85903
2020-08-04 18:33:45 +00:00
Eric Rahm 6611c40970 Bug 1306503 - Add logspam mach commands. r=firefox-build-system-reviewers,mhentges,rstewart
This adds support for invoking the |mach logspam {report|file|bisect}|
commands. The core logic from the pypi base command is reused.

Differential Revision: https://phabricator.services.mozilla.com/D85493
2020-08-03 18:44:18 +00:00
Eric Rahm a442c0fca4 Bug 1306503 - Split out a reusable pypi tool class. r=firefox-build-system-reviewers,mhentges,rstewart
This splits out the pypi tool logic baked into the mozregression command. It
will be reused for the logspam command.

Differential Revision: https://phabricator.services.mozilla.com/D85492
2020-08-03 18:44:10 +00:00
Julian Descottes 656a588bc2 Bug 1472821 - Update linter to detect array of properties defined by lazyRequireGetter r=Standard8
Depends on D85268

Differential Revision: https://phabricator.services.mozilla.com/D85280
2020-08-01 10:39:56 +00:00
neil 974e53c285 Bug 1639509 Remove mach uuid r=championshuttler,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79540
2020-07-13 15:43:24 +00:00
Sylvestre Ledru 843f943758 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D85678
2020-08-02 15:29:15 +00:00
Christian Holler c63127c59a Bug 1656463 - Upgrade in-tree libFuzzer to latest version. r=truber
Differential Revision: https://phabricator.services.mozilla.com/D85576
2020-07-31 15:06:26 +00:00
Christian Holler 9b24bf03b8 no bug - Update download links in ASan Nightly documentation. r=truber
Differential Revision: https://phabricator.services.mozilla.com/D85454
2020-07-31 02:06:06 +00:00
Ben Hearsum 23a8387aec Bug 1655703: Can't schedule opt tests on try without --full r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D85197
2020-07-30 20:56:36 +00:00
Gerald Squelart a496811364 Bug 1640969 - Fix gtests for tracing markers, and add PHASE tests; r=canaltinova
Depends on D85376

Differential Revision: https://phabricator.services.mozilla.com/D85377
2020-07-30 22:21:40 +00:00
Gerald Squelart 5afacba934 Bug 1640969 - Ensure Tracing markers always have correct times and kind; r=canaltinova
Depends on D85375

Differential Revision: https://phabricator.services.mozilla.com/D85376
2020-07-30 22:21:04 +00:00
Gerald Squelart ba51dfc24c Bug 1640969 - Fix StoreMarkers calls from Android code; r=canaltinova
Depends on D85374

Differential Revision: https://phabricator.services.mozilla.com/D85375
2020-07-30 22:19:27 +00:00
Gerald Squelart 3a96e30d41 Bug 1640969 - StoreMarker() doesn't need the TimeStamp argument anymore; r=canaltinova
Depends on D84595

Differential Revision: https://phabricator.services.mozilla.com/D85374
2020-07-30 15:46:53 +00:00
Gerald Squelart 03254edcc1 Bug 1640969 - Update profiler gtests for startTime and endTime in markers; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D84595
2020-07-30 08:14:29 +00:00
Gerald Squelart eb42fd2957 Bug 1640969 - Remove startTime and endTime from most marker payloads; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D84346
2020-07-30 08:14:27 +00:00
Gerald Squelart eedf3b3c6b Bug 1640969 - Add Instant, Interval, IntervalStart, IntervalEnd markers to the profiler; r=gerald
This patch is the first step to our so-called "Markers 2.0" work. It's attempting to consolidate
some ad-hoc practices in the profiler into more solid practices. This is the first step to getting
the Gecko profiler to produce a format that has the timing information applied to the serialized
marker tuple, rather than a mix in the tuple and the payload.

Differential Revision: https://phabricator.services.mozilla.com/D78990
2020-07-30 22:21:10 +00:00
Nathan Froyd e3ebda1914 Bug 1223932 - delete guard object uses from the tree; r=jwalden
CLOSED TREE

We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Mihai Alexandru Michis a911a108d0 Backed out changeset ac9c811bc427 (bug 1223932) for causing spidermonkey rust failures.
CLOSED TREE
2020-07-30 18:23:21 +03:00
Nathan Froyd bec9f9b93a Bug 1223932 - delete guard object uses from the tree; r=jwalden
We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Andrew Halberstadt bfda0cee38 Bug 1655577 - [tryselect] Fix test_fuzzy.py after removal of opt builds from central, r=bhearsum
This test is pretty brittle. This change should make it slightly less
brittle, but still far from great.

Differential Revision: https://phabricator.services.mozilla.com/D85199
2020-07-28 20:52:45 +00:00
Andrew Halberstadt bef34ebc4b Bug 1408051 - Backed out changeset 7864e0d0295f
This change had a few regressions that will be easier to fix without the pressure of time.

Differential Revision: https://phabricator.services.mozilla.com/D85193
2020-07-28 19:04:53 +00:00
Tyson Smith 423110c056 Bug 1655548 - Update fuzzing interface documentation. r=decoder
Differential Revision: https://phabricator.services.mozilla.com/D85041
2020-07-28 17:08:52 +00:00
Andrew Halberstadt d0fbcca0b6 Bug 985141 - [mozbuild] Remove leading underscore from MozbuildObject._activate_virtualenv, r=firefox-build-system-reviewers,perftest-reviewers,andi,AlexandruIonescu,rstewart
This function is used all across the tree and should be considered a public API.

Differential Revision: https://phabricator.services.mozilla.com/D85045
2020-07-28 16:06:10 +00:00
Andrew Halberstadt 1468afcc00 Bug 1636271 - [taskgraph] Move 'optimize-strategies' from try_task_config.json to a parameter, r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D79704
2020-07-28 13:21:05 +00:00
Tom Prince 4fd5e1a2d3 Bug 1652503: [lint] Remove old requirements for perfdocs; r=ahal
These packages are all vendored in-tree, so no need to install them again.
This also fixes the issue that these packages are older than the vendored
versions, which causes issues with the use of attrs in `mozlint` now.

Differential Revision: https://phabricator.services.mozilla.com/D85037
2020-07-27 21:24:43 +00:00
Myeongjun Go c2457707a7 Bug 1633889 - Add test url to test description r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D84133
2020-07-25 01:01:10 +00:00
Mark Banner def8aa427a Bug 1620537 - Upgrade to ESLint 7.5.0, remove now unnecessary Babel plugins. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D84820
2020-07-24 21:37:12 +00:00
Mark Banner d5b23d75e7 Bug 1620537 - Fix issues in eslint-plugin-mozilla rules that were raised in ESLint 7. r=mossop
Depends on D84818

Differential Revision: https://phabricator.services.mozilla.com/D84819
2020-07-24 20:38:27 +00:00
Andrew Halberstadt 1193a05962 Bug 1654591 - Format 'taskcluster/test' with black, r=marco
Depends on D84598

Differential Revision: https://phabricator.services.mozilla.com/D84750
2020-07-24 13:02:33 +00:00
Tom Prince 0fd0a6cf0a Bug 1652503: [mozlint] Install rstcheck for tests; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D84646
2020-07-23 14:55:57 +00:00
Tom Prince 306656ebf5 Bug 1652503: [mozlint] Use `mozpack.path` for paths in lint tests; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D84645
2020-07-23 14:55:55 +00:00
Tom Prince ad21a1db21 Bug 1652503: [mozlint] Sort the results of lints in the lint tests; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D84644
2020-07-23 14:55:47 +00:00
Tom Prince 89e3880e17 Bug 1652503: [mozlint] Always use vendored yamllint; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D84642
2020-07-23 14:55:42 +00:00
Tom Prince 49eef29ae8 Bug 1652503: [mozlint] Make yamllint test indenpendent of the environment; r=linter-reviewers,ahal
The root yamlint config would accepts the invalid test file,
so force the test to use the default yamllint config.

Differential Revision: https://phabricator.services.mozilla.com/D84641
2020-07-23 14:55:35 +00:00
Tom Prince 5007ec8642 Bug 1651642: [mozlint] Disable black lint tests on macOS; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D84640
2020-07-23 14:55:27 +00:00
Christian Holler 0ee607720b Bug 1589934 - Rewrite old MDN ThreadSanitizer documentation. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D83803
2020-07-21 16:17:59 +00:00
Andrew Halberstadt 3b776aad05 Bug 1654535 - [tryselect] Update |mach try --help| text with corrected default selector, DONTBUILD, r=smacleod
Differential Revision: https://phabricator.services.mozilla.com/D84527
2020-07-22 20:45:57 +00:00
Narcis Beleuzu ef290a86e8 Backed out 3 changesets (bug 1636271) for breaking the Gecko Decision Task. CLOSED TREE
Backed out changeset 4b0f13fcf941 (bug 1636271)
Backed out changeset 4250f49877ba (bug 1636271)
Backed out changeset d3f93bd6b1f9 (bug 1636271)
2020-07-22 23:40:32 +03:00
Andrew Halberstadt 8d40cc05d4 Bug 1636271 - [taskgraph] Move 'optimize-strategies' from try_task_config.json to a parameter, r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D79704
2020-07-22 15:36:55 +00:00
Jonathan Almeida [:jonalmeida] e9a6ea525b Bug 1607092 - Add new quote from Book of Mozilla for GeckoView r=geckoview-reviewers,Pike,agi
Differential Revision: https://phabricator.services.mozilla.com/D80575
2020-07-07 02:22:07 +00:00
Hamzah 848d6992f5 Bug 1408051 - Remove mozharness' copy of virtualenv and use the one under /third_party/python instead r=ahal,rail
Differential Revision: https://phabricator.services.mozilla.com/D83181
2020-07-17 19:21:18 +00:00
Tim Huang 26fd85af70 Bug 1647825 - Part 2: Report the XFO and CSP: frame-ancestors error through the telemetry event. r=ckerschb,chutten,nhnt11
After user ticks the checkbox of allowing error reporting, we will
report the error through the telemetry event. The event includes the
error type, XFO policy, CSP policy, the frame uri and the top-level uri.

Differential Revision: https://phabricator.services.mozilla.com/D82332
2020-07-22 15:12:38 +00:00
Geoff Brown 217bbab384 Bug 1654090 - Replace testing/mochitest/pywebsocket with pywebsocket3; r=jmaher
Update testing/mochitest/pywebsocket with the latest version available: pywebsocket3
is python 3 compatible. This keeps the basic structure of the old pywebsocket, but
changes the directory name to pywebsocket3 to reflect the project renaming.

Differential Revision: https://phabricator.services.mozilla.com/D84455
2020-07-22 02:06:38 +00:00
Jonathan Kew bc9c7169fe Bug 1641805 - Remove DownloadPDFSaver, no longer needed in a post-Fennec world. r=paolo,mak
Differential Revision: https://phabricator.services.mozilla.com/D84012
2020-07-20 16:10:09 +00:00
Mark Banner 56b100bc3a Bug 1653195 - Update eslint-plugin-mozilla's eslint-visitor-keys to be the same as the top-level include. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D84136
2020-07-20 12:33:56 +00:00
Gerald Squelart 126afc3ab4 Bug 1653181 - Profiler feature 'audiocallbacktracing' controls Start/StopAudioCallbackTracing(), off by default - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D83749
2020-07-17 11:22:23 +00:00
Gerald Squelart 698881bb66 Bug 1653181 - Refactor Start/StopAudioCallbackTracing calls - r=canaltinova
Start/StopAudioCallbackTracing calls are always around locked_profiler_start/stop, this patch brings these calls inside the locked_ functions.

Differential Revision: https://phabricator.services.mozilla.com/D83748
2020-07-17 11:21:50 +00:00
Mitchell Hentges ccdcc211eb Bug 1653049: Docs support markdown tables r=championshuttler
Glean generates telemetry documentation in markdown and uses tables.

This revision adds support for rendering markdown tables using an extension.

Differential Revision: https://phabricator.services.mozilla.com/D83685
2020-07-17 17:11:33 +00:00
Gerald Squelart 4c769ee76a Bug 1651102 - Safely delay handling of child profile buffer updates - r=canaltinova
Profile buffer updates could be triggered from a number of locations, including scopes where profiler and/or system locks are held, making deadlocks possible if profiler and/or system function are called.
So instead of dispatching updates to the main thread (which may use OS task queue functions), we fold updates into a static storage. The profiler sampler loop regularly triggers processing of these pending updates.

Differential Revision: https://phabricator.services.mozilla.com/D83747
2020-07-17 11:21:38 +00:00
Gerald Squelart 7ad0136123 Bug 1651102 - Safely delay handling of parent profile buffer updates - r=canaltinova
Profile buffer updates could be triggered from a number of locations, including scopes where profiler and/or system locks are held, making deadlocks possible if profiler and/or system function are called.
So instead of dispatching updates to the main thread (which may use OS task queue functions), we fold updates into a static storage. When child updates arrive, we can safely handle parent updates as well.

Child updates are assumed to arrive regularly enough to properly handle parent updates.
But in the worst case, if no updates came from children, it should mean nothing is happening, and in any case we wouldn't know how the memory is used elsewhere. Note that the chunk manager still enforces local limits automatically, so memory usage would still get limited.

Differential Revision: https://phabricator.services.mozilla.com/D83746
2020-07-17 11:21:15 +00:00
Gerald Squelart 2a75e1761c Bug 1651102 - Remove unused ProfileBufferGlobalController members - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D83745
2020-07-17 11:20:57 +00:00
Gerald Squelart db28bc0ab0 Bug 1648324 - Add timeout when waiting for child profiles - r=canaltinova
Knowing the time it takes for the parent process to gather its profile, we expect sub-processes not to take longer than twice that time (plus a bit more).
Each time we receive a profile, the timer is restarted* to allow more time for pending processes.
If the most current timer fires, we assume that pending processes may be frozen and unable to ever respond, so we use all profiles gathered so far.
(There is currently no indication to the user that processes are missing, this should be added in the future.)

* Tech detail: We just cancel the current timer and forget about it, then start a new one and keep track of it. When a timer fires, we can compare its address to the address of the last (most current) timer, and only that one can force the end of profile-gathering.

Differential Revision: https://phabricator.services.mozilla.com/D83626
2020-07-16 22:56:57 +00:00
Tomislav Jovanovic 0c81930a84 Bug 1587541 - Make tab.executeScript, insertCSS, removeCSS Fission compatible r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D81772
2020-07-15 14:30:17 +00:00
Randell Jesup fa153eb95d Bug 1642772: name processes in the profiler with eTLD+1 r=gerald,dveditz
Differential Revision: https://phabricator.services.mozilla.com/D77926
2020-07-15 18:00:54 +00:00
Myeongjun Go 32cbdb3b33 Bug 1649497 - [perfdocs] Port mozperftest into Performance Testing r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D82207
2020-07-15 17:13:30 +00:00
Emil Farisan bac22e4499 Bug 1651606 - fix the 404 not found issue when accessing the generated docs link on S3. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D83265
2020-07-15 11:34:04 +00:00
Csoregi Natalia 2d34e224ae Backed out changeset 448679382b06 (bug 1649497) for linting failures on framework_gatherers.py. CLOSED TREE 2020-07-14 20:20:48 +03:00
Myeongjun Go 62777a18b5 Bug 1649497 - [perfdocs] Port mozperftest into Performance Testing r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D82207
2020-07-14 16:55:56 +00:00
Andrew Halberstadt 88d8a92a39 Bug 1649194 - [tryselect] Fixup cram test bustage r=marco
Differential Revision: https://phabricator.services.mozilla.com/D83530
2020-07-14 15:47:30 +00:00
Andrew Halberstadt 85ea78dea5 Bug 1649194 - [try] Make 'mach try auto' the default selector (replaces try syntax), r=marco
Try syntax users wishing to preserve their default selector can modify
~/.mozbuild/machrc (create it if it doesn't exist), and add:

[try]
default = syntax

Depends on D82983

Differential Revision: https://phabricator.services.mozilla.com/D82985
2020-07-14 14:44:05 +00:00
Andrew Halberstadt 8bfb464356 Bug 1649194 - [try] Remove 'experimental' warning with |mach try auto|, r=marco
Differential Revision: https://phabricator.services.mozilla.com/D82983
2020-07-10 19:53:26 +00:00
championshuttler 7670b95ed4 Bug 1498604 - Update the message to use mach npm now.r=dmose
Differential Revision: https://phabricator.services.mozilla.com/D83418
2020-07-13 23:12:38 +00:00
Andreea Pavel 6587206412 Backed out changeset 328b97bc228e (bug 1587541) for causing bug 1652665 a=backout DONTBUILD 2020-07-14 11:30:47 +03:00
Dan Mosedale e9c23bbb90 Bug 1652173 - implement `mach node` and `mach npm`, r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D83204
2020-07-13 21:31:31 +00:00
Tom Prince 1691c9892d Bug 1652184: Report to perherder stats about bugbug timings; r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D83212
2020-07-13 19:53:00 +00:00
Tom Prince 10f35da9c8 Bug 1646834: [scriptworker-canary] Split linux signing tasks to handle partials; r=rail
Since partials have started verifying signatures, the partial task has been failing in
`mach try scriptworker`. Since we are not concerned with the partial task itself,
split the tasks into two groups, so that it does not need to run.

Differential Revision: https://phabricator.services.mozilla.com/D83370
2020-07-13 18:46:51 +00:00
Mark Banner a5ae60cdd9 Bug 1652130 - Switch the Mozilla eslint parser to use multi-ini. r=mossop
Depends on D83176

Differential Revision: https://phabricator.services.mozilla.com/D83177
2020-07-13 18:05:18 +00:00
Mark Banner cdec147c98 Bug 1627766 - Add eslint-plugin-html to eslint-plugin-mozilla's package.json. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D83176
2020-07-13 18:03:21 +00:00
Tom Prince 6ba2d68aa3 Bug 1651867: Fix failing mozlint tests. r=ahal
The root fixutre was accidentaly made not a fixture, due to a bad rebase.

Differential Revision: https://phabricator.services.mozilla.com/D83020
2020-07-13 14:37:58 +00:00
Gerald Squelart 8049dc9c3e Bug 1651086 - Allow profiler_register_thread from thread with already-registered id - r=canaltinova
It is possible that some threads fail/forget to unregister themselves, in which case a registered thread id could get recycled by a later thread, which was not allowed before this patch.

Note: The thread name cannot currently be changed. We record a special marker with the new name, so the frontend could process it to split the thread track at that point.

We also record a marker when profiler_unregister_thread is called from an already-unregistered thread, this could help find reg/unreg mismatches or nesting in Firefox threads.

Differential Revision: https://phabricator.services.mozilla.com/D83293
2020-07-13 13:18:29 +00:00
Gerald Squelart 7610ff4326 Bug 1651086 - Handle tgkill failure - r=canaltinova
On Linux (including Android), it was assumed that a registered thread could always be suspended through `tgkill`.
However in some cases a thread may not be correctly unregistered, in which case this would trigger `MOZ_ASSERT` or wait forever in the following loop.

This will especially be needed when `profiler_{,un}register_thread()` are made less strict in the following patch.

Windows and Mac already handle suspension failures.

Differential Revision: https://phabricator.services.mozilla.com/D83292
2020-07-13 13:14:32 +00:00
Tomislav Jovanovic 0d4b27f0d1 Bug 1587541 - Make tab.executeScript, insertCSS, removeCSS Fission compatible r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D81772
2020-07-13 10:28:42 +00:00
Narcis Beleuzu 895e17157a Backed out changeset aeaa527e6119 (bug 1587541) for mochitest failures on test_chrome_ext_contentscript_telemetry.html . CLOSED TREE 2020-07-13 05:28:48 +03:00
Tomislav Jovanovic d1e60a800a Bug 1587541 - Make tab.executeScript, insertCSS, removeCSS Fission compatible r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D81772
2020-07-13 00:32:43 +00:00
Harry Twyford e0287bb730 Bug 1645521 - Part 3 - Port unifiedcomplete tests. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D80294
2020-07-12 17:35:02 +00:00
Narcis Beleuzu 8e31f424cf Backed out changeset 60840d7cfef1 (bug 1587541) for Documentation opt failure. CLOSED TREE 2020-07-12 22:46:00 +03:00
Tomislav Jovanovic 17939666b8 Bug 1587541 - Make tab.executeScript, insertCSS, removeCSS Fission compatible r=rpl
Differential Revision: https://phabricator.services.mozilla.com/D81772
2020-07-12 17:11:58 +00:00
Csoregi Natalia b74c685d0f Backed out 6 changesets (bug 1650099, bug 1647881, bug 1645521, bug 1645324) for causing Bug 1652024.
Backed out changeset f66c5cce9088 (bug 1650099)
Backed out changeset bf67c2159244 (bug 1645324)
Backed out changeset 76d81e1e728b (bug 1645521)
Backed out changeset ab3766fa81f9 (bug 1645521)
Backed out changeset ff56bb6cbfb7 (bug 1645521)
Backed out changeset aceb6f9acf3b (bug 1647881)
2020-07-12 17:58:28 +03:00
Harry Twyford 3ab8f9b1e3 Bug 1645521 - Part 3 - Port unifiedcomplete tests. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D80294
2020-07-09 05:02:47 +00:00
Cosmin Sabou 71bfce5442 Backed out 5 changesets (bug 1650099, bug 1645521, bug 1645324) as requested by harry for causing bug 1652024.
Backed out changeset 93abbd32c314 (bug 1650099)
Backed out changeset 366f7bfe267c (bug 1645324)
Backed out changeset b92a18e970ee (bug 1645521)
Backed out changeset d57d3a47b1ad (bug 1645521)
Backed out changeset 41e4a6353913 (bug 1645521)
2020-07-11 02:03:18 +03:00
Tom Prince 388e735d63 Bug 1649168: Add scriptworker-canary action and corresponding task; r=rail
Add an action that will trigger a task that runs
`mach release push-scriptworker-canary`
to test a new scriptworker deployment.

Differential Revision: https://phabricator.services.mozilla.com/D82821
2020-07-10 16:12:05 +00:00
Tom Prince 6d84883e1d Bug 1649168: Add `mach release push-scriptworker-canary` command; r=rail
This will make several pushes to try, to test newly deployed scriptworker
versions.

Differential Revision: https://phabricator.services.mozilla.com/D82819
2020-07-10 16:11:00 +00:00
Tom Prince 7ff3369322 Bug 1649168: Allow specifying arbitrary routes for `mach try scriptworker; r=rail
This will be used to notify releng, when failures happen in scriptworker-canary
runs.

Differential Revision: https://phabricator.services.mozilla.com/D82818
2020-07-10 16:10:57 +00:00
Tom Prince 204d796929 Bug 1651731: [lint] Python and shell files without `#!` should not be executable; r=linter-reviewers,perftest-reviewers,geckoview-reviewers,agi,sylvestre,sparky
Differential Revision: https://phabricator.services.mozilla.com/D82954
2020-07-09 20:29:18 +00:00
Tom Prince 2c52622b85 Bug 1651731: [lint] Add a bunch more types of files that should never be executable; r=linter-reviewers,perftest-reviewers,geckoview-reviewers,preferences-reviewers,agi,sylvestre,sparky
Differential Revision: https://phabricator.services.mozilla.com/D82953
2020-07-09 21:28:49 +00:00
Tom Prince 2244b1cc7c Bug 1651731: [lint] Only allow files that are typically executable to have shebang lines override permission check; r=linter-reviewers,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D82949
2020-07-09 21:16:32 +00:00
Kris Maglione a1cb850855 Bug 1464542: Part 3c - Change Services.jsm to use the C++-implemented services cache. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D81420
2020-07-09 21:42:53 +00:00
Kris Maglione 6a39211860 Bug 1464542: Part 3b - Add existing Services.jsm registrations to the new services cache. r=mccr8,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D81419
2020-07-09 21:42:25 +00:00
Csoregi Natalia b355fcc4bf Backed out 6 changesets (bug 1464542) for xpcshell failures on test_Services.js. CLOSED TREE
Backed out changeset b50af9005851 (bug 1464542)
Backed out changeset 9d3a0ea2cf65 (bug 1464542)
Backed out changeset 71c3475fcbc2 (bug 1464542)
Backed out changeset 51ff93220a95 (bug 1464542)
Backed out changeset e84de1547c09 (bug 1464542)
Backed out changeset bbecc16d08eb (bug 1464542)
2020-07-09 23:19:26 +03:00
Axel Hecht 595a699c3e Bug 1649441, port ICU update docs into firefox-source-docs, r=jwalden
This is just a copy via pandoc, and some minor fixups. No actual
content changes, aside of linter fixes.

Differential Revision: https://phabricator.services.mozilla.com/D81703
2020-07-07 11:24:08 +00:00
Harry Twyford 2830a9e611 Bug 1645521 - Part 3 - Port unifiedcomplete tests. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D80294
2020-07-09 05:02:47 +00:00
Kris Maglione d0524196c2 Bug 1464542: Temporarily remove user-services.js test to fix bustage.
Differential Revision: https://phabricator.services.mozilla.com/D82972
2020-07-09 18:44:49 +00:00
Sylvestre Ledru 711e975c18 Bug 1650834 - mozlint/pylint - remove useless code r=marco
Differential Revision: https://phabricator.services.mozilla.com/D82490
2020-07-09 14:09:49 +00:00
Sylvestre Ledru 9b0a16fc65 Bug 1650834 - Make tools/lint code black compatible r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D82401
2020-07-09 14:09:31 +00:00
Andrew Halberstadt d5e8716e90 Bug 1640902 - [taskcluster.test] Add some additional checks to test_mach_try_auto.py, r=marco
Adds some additional assertions against what would be ran with |mach try auto|.
This also fixes a legit bug that the 'test_important_manifests_only' test
caught.

Differential Revision: https://phabricator.services.mozilla.com/D81404
2020-07-09 12:46:49 +00:00
Andrew Halberstadt 8dc68edc8e Bug 1640902 - [ci] Add integration tests for the 'taskcluster' directory, r=tomprince
Initially this suite will only include a test for |mach try auto| pushes.

Differential Revision: https://phabricator.services.mozilla.com/D81403
2020-07-08 18:48:26 +00:00