Depends on D93817
There should no longer be new message managers during the lifecycle of the actor.
We can simplify the storage actor thanks to this.
Differential Revision: https://phabricator.services.mozilla.com/D93819
`mach configure` currently runs the equivalent to `make -f client.mk`.
This is history, and essentially does the following:
- Create `configure` and `js/src/configure` from `configure.in` and
`js/src/configure.in` respectively.
- Create the objdir.
- Run `configure` from the objdir.
The `configure` script is, nowadays, only really used as a means to set
OLD_CONFIGURE (and also for people who want to run `configure`,
literally, as in the `configure; make` workflow). `mach configure`
actually doesn't need it. Neither does recursing into `js/src` require
`js/src/configure`, since bug 1520340 (and now as of bug 1669633, we
don't even recurse).
Because configure.py can actually derive OLD_CONFIGURE on its own
(except for `js/src/configure`, but `mach configure` doesn't run that),
we don't really need `configure` for `mach configure`.
So all in all, we're at a point in history where it's straightforward to
just initiate configure.py from mach configure, so we just do that.
And in the hypothetical case where the `mach configure` code is somehow
running in python2, we get the mach virtualenv python3 and use it to
execute `configure.py`.
Differential Revision: https://phabricator.services.mozilla.com/D93741
While making other changes, I took a second look at some code I wrote in Bug 1668096, and found a few little mistakes. This patch fixes them up.
Depends on D94191
Differential Revision: https://phabricator.services.mozilla.com/D94192
This test times out on macOS 10.14 opt and debug. Logs show that the test
finishes properly but it exceeds the timeout threshold, so it appears that it
just takes too long. Increasing the timeout threshold fixes the problem on opt,
but it reveals another problem on debug where the watchdog process kills the
main process because its shutdown lasts too long. This happens during step 3 of
test-verify, which is "Run each test 10 times in one browser, in chaos mode."
Around the time that the crash happens, logs show that there are "2047 DOMWINDOW
created and 2037 destroyed log strings." The test opens, closes, and reopens
many windows -- with chaos mode on top of that -- so it's possible that debug
window instrumentation or just the debug nature of the build itself, plus slow
machines, causes all the window opening and closing to perform very poorly and
take a long time.
This patch increases the timeout, which fixes opt, and disables the test
entirely on debug -- and to reiterate, it's Mac only. Maybe the test could open
and close tabs instead of windows in order to test session store, but I'm not
sure it's worth rewriting.
Here's a successful try run with an earlier version of this patch that did not
disable the test on debug, but it shows that opt is green:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=7ab33a9225b9edf0cb8a95d556f9b76c7fc69470
And here's a run without the patch that shows opt is always orange:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=1e02bfc26ecb67f503cb24a180536e8c220226d5
Differential Revision: https://phabricator.services.mozilla.com/D94069
When `testing` is enabled, writes a set of information about the
current state of all picture cache slices and tiles into the
RenderResults structure.
Add a new mode, `test_invalidation` to wrench. This is similar to
the existing `rawtest` functionality, where tests are written in rust.
Add a basic test that demonstrates the testing infrastructure as
a proof of concept.
Follow up patches will add more tests, specifically testing for
expected behavior in a range of scenarios (e.g. scrolling by a
fractional amount, unusual zoom/dpi ratios etc).
Differential Revision: https://phabricator.services.mozilla.com/D94071
The partitionKey for HSTS is always set with 'http' scheme. So, we
should also use 'http' when checking the HSTS for http channels.
Differential Revision: https://phabricator.services.mozilla.com/D93393
Previously, we relied on walking the built clip-chain for a
stacking context to determine if it needed an intermediate surface
due to presence of a complex clip.
However, future patches in this bug need to delay clip-chain creation
for a primitive until the tile-cache slice for the primitive is
known. This change means we don't rely on the clip-chain early
during push_stacking_context (but should have no functional change).
Differential Revision: https://phabricator.services.mozilla.com/D93904
This changes two bits of Firefox that, together with the mime service, end up
very confused over webp + jpeg.
1) it changes contentAreaUtils.js' getDefaultExtension that if it gets an image
mimetype as the content type, it should ignore the URL. It doesn't have full channel
info so it can't really do better anyway. This fixes the context menu's "save image as..."
case.
2) it changes the external helper app service to do a few things slightly differently:
a. If we're told not to get an extension out of a URL, really don't. Don't just get the
filename and then get it from there anyway...
b. If we've got a suggested filename, and a primary extension for the mimetype,
and the extension on the file is not one of the known extensions for the mimetype,
replace it with the primary extension.
This fixes the link case.
It also adds tests for both of these mechanisms as well as "save image as."
Differential Revision: https://phabricator.services.mozilla.com/D92306
View source prefixes urls with a view-source scheme. Somewhere along
the way a request is made for the un-prefixed url but we do not intercept. This
removes the prefix for webrequest and proxy APIs prior to checking access rules
and filters, allowing the APIs to intercept those requests that the otherwise
could.
Differential Revision: https://phabricator.services.mozilla.com/D89068
The value is higher in privileged processes because it is measured later,
which is making the value skewed when comparing Fission to non-Fission.
Differential Revision: https://phabricator.services.mozilla.com/D94059
This is using collapsed as a carryover from XBL days, where setting the element to hidden would destroy bindings.
But it's causing a side effect of shrinking the browser element to 0x0 which causes the content to resize, leading to
some flickering and poor performance when switching back to content from a Customize Mode tab.
By setting hidden we instead are just toggling the display property.
Differential Revision: https://phabricator.services.mozilla.com/D94057