Commit Graph

855661 Commits

Author SHA1 Message Date
Sandor Molnar
950a3c620d Backed out 3 changesets (bug 1852963) for causing remote failures on remote/shared/messagehandler/test/browser/browser_session_data.js CLOSED TREE
Backed out changeset 98de7bc404c3 (bug 1852963)
Backed out changeset edf1527c9a99 (bug 1852963)
Backed out changeset 34357750f69c (bug 1852963)
2023-09-14 20:29:06 +03:00
Sandor Molnar
4bd577fefa Backed out 8 changesets (bug 1792501) for causing wpt failures on /css/selectors/...
Backed out changeset 993b0e6567e6 (bug 1792501)
Backed out changeset 7686c9df9ad4 (bug 1792501)
Backed out changeset cf9f855ad80c (bug 1792501)
Backed out changeset 27abe13a5a48 (bug 1792501)
Backed out changeset f708f940e907 (bug 1792501)
Backed out changeset 2a7c57a69803 (bug 1792501)
Backed out changeset 69f1155100f5 (bug 1792501)
Backed out changeset 3f5f59b76a56 (bug 1792501)
2023-09-14 20:08:41 +03:00
Marco Bonardo
61f8ecc425 Bug 1852963 - Rename BrowserTestUtils.loadURIString() to .startLoadingURIString(). r=dao
This should make a bit clearer that it is only starting the load, not waiting
for its completion.

Differential Revision: https://phabricator.services.mozilla.com/D188213
2023-09-14 16:33:13 +00:00
Marco Bonardo
6647ee429a Bug 1852963 - BrowserTestUtils.browserLoaded() should also accept gBrowser as input. r=dao
BrowserTestUtils.browserLoaded() wants a tabbrowser-tab as input, most of it will
also work passing gBrowser, and indeed some tests ended up doing that.
Unfortunately some parts of it are skipped in that case.
Since it's confusing anyway, let's make it more lenient on its input.

Differential Revision: https://phabricator.services.mozilla.com/D188212
2023-09-14 16:33:13 +00:00
Marco Bonardo
2d21eb4e99 Bug 1852963 - Fix tests awaiting on BrowserTestUtils.loadURIString(). r=dao,webdriver-reviewers,devtools-reviewers,whimboo
BrowserTestUtils.loadURIString() is not async, nor returning a promise, it's
effectively not awaiting for the page to be loaded.

Differential Revision: https://phabricator.services.mozilla.com/D188211
2023-09-14 16:33:13 +00:00
Nicolas Chevobbe
66337b2870 Bug 1853163 - [devtools] Turn PrefObserver into ES6 class extending EventEmitter. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D188256
2023-09-14 15:52:19 +00:00
Harshit Sohaney
9559563c34 Bug 1835913 - Deprecating RejectForeignAllowList. r=bvandersloot,anti-tracking-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D187286
2023-09-14 15:41:40 +00:00
Jonathan Kew
0defe56d77 Bug 1852742 - Include 'ex-height in completion keywords for font-size-adjust. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D187985
2023-09-14 15:31:46 +00:00
Nicolas Chevobbe
48084785dd Bug 1851978 - [devtools] Turn CssColor's authored and lowerCased property private. r=ochameau,devtools-reviewers.
These are only used within the class, so we don't need to expose them.

Depends on D188005

Differential Revision: https://phabricator.services.mozilla.com/D188255
2023-09-14 15:06:22 +00:00
Nicolas Chevobbe
f4a8ba14ef Bug 1851978 - [devtools] Pass colorUnit to CssColor.toString. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D188005
2023-09-14 15:06:22 +00:00
Nicolas Chevobbe
a4f92ef6bd Bug 1851978 - [devtools] Inline CssColor.newColor into CssColor constructor. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D188002
2023-09-14 15:06:22 +00:00
Nicolas Chevobbe
a66f556b6b Bug 1851978 - [devtools] Remove unused setAlpha function and associated tests. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D188001
2023-09-14 15:06:21 +00:00
Nicolas Chevobbe
5b85c7a94c Bug 1851978 - [devtools] Remove unused CssColor._getHSLATuple. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D187998
2023-09-14 15:06:21 +00:00
Nicolas Chevobbe
c5107b2204 Bug 1851978 - [devtools] Use proper private properties and methods in CssColor. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D187997
2023-09-14 15:06:21 +00:00
Nicolas Chevobbe
f850d6b068 Bug 1851978 - [devtools] Turn CssColor into ES6 class. r=ochameau,devtools-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D187996
2023-09-14 15:06:21 +00:00
Perry McManis
5a60c2b482 Bug 1853168 - Record an event when the Show More URL is clicked r=jhirsch
Differential Revision: https://phabricator.services.mozilla.com/D188257
2023-09-14 14:46:44 +00:00
Jan de Mooij
f0e9b8c938 Bug 1852917 - Add ToDouble to allow list in SetTypePolicyBailoutKind. r=iain
We're inserting `MToDouble` for a `MIRType::Float32` value. This is similar to
the `MToFloat32` case we were already handling.

Longer term it would be nicer to do the float32 analysis as a separate optimization
pass instead of doing it at the same time as type analysis.

Depends on D188110

Differential Revision: https://phabricator.services.mozilla.com/D188111
2023-09-14 14:37:35 +00:00
Jan de Mooij
ad8068d18c Bug 1852702 - Handle non-Object/Value types in unboxObjectInfallible. r=iain
We failed the assertion in `unboxObjectInfallible` while adding an unbox for
`MCreateThis` in the transpiler. In this case we fail an earlier guard at
runtime, but at compile time we don't know that and can still get a non-Object/Value
type at a later point.

Differential Revision: https://phabricator.services.mozilla.com/D188110
2023-09-14 14:37:34 +00:00
jneuberger
9008e3425d Bug 1844358 - Deduplicate scenario detection in FormHistory, FormAutofill and LoginManager - r=dimi,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D186219
2023-09-14 14:30:36 +00:00
negin
6ff242eff5 Bug 1851267 - [Survey] Update Shopping Survey Styles to match final designs r=omc-reviewers,emcminn
Differential Revision: https://phabricator.services.mozilla.com/D188034
2023-09-14 14:04:29 +00:00
Manuel Bucher
6759c84685 Bug 1853141 - Early Hints: enable module test case in browser_103_asset.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D188243
2023-09-14 13:34:55 +00:00
Timothy Nikkel
c15dd9c30f Bug 1852749. Cherry-pick upstream libwebp fix. r=gfx-reviewers,lsalzman
95ea5226c8

Differential Revision: https://phabricator.services.mozilla.com/D188066
2023-09-14 13:16:57 +00:00
stransky
51887ff098 Bug 1852918 [Linux] Don't disable system titlebar from nsWindow::Create() r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D188233
2023-09-14 12:57:28 +00:00
Valentin Gosu
dcfa54910f Bug 1850273 - Avoid WARNING message from NS_ENSURE_TRUE(mRequest) in nsBaseChannel::RetargetDeliveryTo r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D188239
2023-09-14 12:36:50 +00:00
David Shin
85c6ffe7ac Bug 1792501: Part 7 - :has invalidation inside :nth-child(of). r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D185680
2023-09-14 12:30:57 +00:00
David Shin
a1ec796191 Bug 1792501: Part 6 - :has invalidation for :empty and :nth (Without of). r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D185679
2023-09-14 12:30:56 +00:00
David Shin
b2734528a4 Bug 1792501: Part 5 - :has DOM mutation invalidation. r=emilio,layout-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D185678
2023-09-14 12:30:56 +00:00
David Shin
a53ddf9908 Bug 1792501: Part 4 - Basic :has invalidation. r=emilio,layout-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D185677
2023-09-14 12:30:56 +00:00
David Shin
63086e5c76 Bug 1792501: Part 3 - Let :has contribute to dependencies. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D185676
2023-09-14 12:30:56 +00:00
David Shin
ff6e5a74e6 Bug 1792501: Part 2 - Infrastructure for relative selector invalidation. r=emilio
Invalidating a relative selector requires traversal in the opposite direction of
the usual invalidation, i.e. In the directions of ancestor and/or earlier sibling.
However, when there are complex selectors within the relative selector, e.g.
`:has(:is(..) ..)`, we first need to perform invalidation in the usual direction to
reach the relative selector's search space, then perform the relative selector
invalidation.

There are two major changes to this effect:

1. `InvalidationProcessor` has an additional lifetime that separates matching context from
invalidations. This enables storing encountered dependencies (Since we may be in a deep recursion
during the invalidation) to be relative selector invalidated, without requiring that the
matching context live that long.

2. There now exists a separate category for relative selector invalidation depenedencies,
which triggers relative selector invalidation. Dependencies now can be either normal or
relative, since any complex selector inside a relative selector would have normal
dependencies, but with its outer dependency being a relative dependency.

Differential Revision: https://phabricator.services.mozilla.com/D185675
2023-09-14 12:30:55 +00:00
David Shin
0897d682f3 Bug 1792501: Part 1.5 - Take snapshots for unstyled elements if they're in relative selector search path. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D185833
2023-09-14 12:30:55 +00:00
David Shin
7b00e82664 Bug 1792501: Part 1 - Mark relative selector search path. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D185674
2023-09-14 12:30:54 +00:00
ffxbld
01fdd66543 No Bug, mozilla-central repo-update HSTS HPKP remote-settings - r=release-managers,dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D188236
2023-09-14 12:30:50 +00:00
Sebastian Hengst
b567ecdf0d Bug 1852064 - set InteractionsChild.sys.mjs as expected to load on startup for all branches. r=sclements
Bug 1840118 enabled engagement logging outside Nightly.

Differential Revision: https://phabricator.services.mozilla.com/D187811
2023-09-14 12:23:03 +00:00
Julian Descottes
0c26566738 Bug 1852250 - [bidi] Always process navigation data when handling network events r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D187898
2023-09-14 12:19:47 +00:00
Narcis Beleuzu
b55d98b00f Backed out 21 changesets (bug 1839396) for bustages on Printer.h . CLOSED TREE
Backed out changeset c2c0876384ea (bug 1839396)
Backed out changeset 7b00061ff1d0 (bug 1839396)
Backed out changeset 560d36ce1c94 (bug 1839396)
Backed out changeset 9c97403ef422 (bug 1839396)
Backed out changeset a4f770f763f0 (bug 1839396)
Backed out changeset 326d5dabcc77 (bug 1839396)
Backed out changeset 24a2da10bd17 (bug 1839396)
Backed out changeset 45bf93263df4 (bug 1839396)
Backed out changeset 7cdbc7725383 (bug 1839396)
Backed out changeset ff43d8997410 (bug 1839396)
Backed out changeset 14d35aab82ba (bug 1839396)
Backed out changeset 1e0ae94927c1 (bug 1839396)
Backed out changeset cdbd5c0aa968 (bug 1839396)
Backed out changeset 5879c10cab2a (bug 1839396)
Backed out changeset 81ade27ceb03 (bug 1839396)
Backed out changeset e881ed1205c3 (bug 1839396)
Backed out changeset 1c777cc01b84 (bug 1839396)
Backed out changeset e078a7f110b2 (bug 1839396)
Backed out changeset c8918d4de8ac (bug 1839396)
Backed out changeset 436a663a486d (bug 1839396)
Backed out changeset 8c6bea3ac605 (bug 1839396)
2023-09-14 15:51:30 +03:00
Updatebot
484a0a6c43 Bug 1853098 - Update libwebp to v1.3.2 r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D188160
2023-09-14 12:12:58 +00:00
Otto Länd
415a2c39e3 Bug 1839396: apply code formatting via Lando
# ignore-this-changeset
2023-09-14 11:45:23 +00:00
Nicolas B. Pierron
f2980cfe2c Bug 1839396 part 19 - Add documentation to GenericPrinter classes. r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D183761
2023-09-14 11:41:06 +00:00
Nicolas B. Pierron
5364888f45 Bug 1839396 part 18 - Remove GenericPrinter::putAsciiPrintable. r=mgaudet
`putAsciiPrintable` was added temporarily as a substitute for externalizing the
logic done by `QuoteString`, while providing an interface which is as efficient.

Now, `EscapePrinter` is used to replace the content of `QuoteString` while
providing the same implementation, except that it is based on `put` instead of
`putAsciiPrintable`. The `EscapePrinter` already provides the guarantees that
are asserted by `putAsciiPrintable`, thus there is no longer any need for it.

As this patch set introduced `putAsciiPrintable`, there is not yet any external
consumer of it, and `EscapePrinter` should cover all use cases where non-ascii
inputs are provided.

Differential Revision: https://phabricator.services.mozilla.com/D183760
2023-09-14 11:41:05 +00:00
Nicolas B. Pierron
3d55cd49c2 Bug 1839396 part 17 - Make QuoteString and JSONQuoteString infallible. r=mgaudet
The previous patch reimplemented QuoteString to use a `StringSegmentRange`,
which should avoid mutating the inner parts of `JSRope`, while remaining fast on
`JSAtom`-s.

As the StringSegmentRange does not need to allocate with `ensureLinear`, then
all the failures are reported by the `put` functions using the `GenericPrinter`
mechanism, and the `release` functions of `Sprinter` would report the failure if
any.

Thus, there is no need for retuning a boolean value anymore from `QuoteString`
and `JSONQuoteString`, while this is still necessary to check the returned value
variant of `QuoteString` which returns `UniqueChars` by using the `release`
function of `Sprinter`.

Differential Revision: https://phabricator.services.mozilla.com/D183759
2023-09-14 11:41:05 +00:00
Nicolas B. Pierron
5cfbedc31e Bug 1839396 part 16.1 - Reimplement QuoteString using EscapePrinter. r=arai,mgaudet
`QuoteString` is today only available as a mean to serialize a `JSString` to a
`Sprinter`, or by making an extra temporary allocation whch is most likely
discarded once the serialized content has been used once.

This implementation provide a generic escaping mechanism, named `EscapePrinter`,
which can be used on top of any existing Printer class, and with any escaping
logic such as different quotes, or different quotation marks if needed. The
different quoting strategies are implemented using a class which provides
`isSafeChar` and `convertInto` to normalize the `JSString` input characters into
characters which are properly encoded for the Printer.

This change keep the original `QuoteString` behavior, while replacing its
fallible implementation by an infallible implementation. `QuoteString` had an
undocummented side-effect of linearizing the strings while reading them, which
causes memory allocation and potential GC failures. This change replaces the
`ensureLinear` call by the new `GenericPrinter::putString` function which relies
on `StringSegmentRange` to iterate over the string fragments and serialize the
content which does not have the same side-effects.

If performance issue arise from this modification, calls to `ensureLinear`
should be added before the `QuoteString` calls.

Differential Revision: https://phabricator.services.mozilla.com/D183758
2023-09-14 11:41:05 +00:00
Nicolas B. Pierron
a69f5a1ceb Bug 1839396 part 16.0 - Add JSContext* argument to Sprinter::putString. r=mgaudet
`putString` requires a JSContext, and it is taken out of Sprinter, which does
not make much sense. Making it explicit that a JSContext is required to print
JSString would make things simpler for users instead of failing during the
execution.

Differential Revision: https://phabricator.services.mozilla.com/D187202
2023-09-14 11:41:05 +00:00
Nicolas B. Pierron
da63680af6 Bug 1839396 part 15 - Replace Sprinter::jsprintf. r=mgaudet
Sprinter::jsprintf is nowadays the same as GenericPrinter::printf which Sprinter
inherit from. This patch removes all calls to Sprinter::jsprintf and replaces
them by Sprinter::printf.

The advantage of using GenericPrinter::printf is that this reduce the dependency
on Sprinter-specific interface and moves us toward being able to move more
consumers over to the GenericPrinter.

Differential Revision: https://phabricator.services.mozilla.com/D181500
2023-09-14 11:41:04 +00:00
Nicolas B. Pierron
d7edbaecdd Bug 1839396 part 14 - GC: Bubble-up infallible print functions. r=jonco
Now that Sprinter::put and Sprinter::jsprintf functions are infallible, there is
no need to return a boolean from Nursery::printProfileDurations and
Statistics::printProfileTimes functions.

Differential Revision: https://phabricator.services.mozilla.com/D181499
2023-09-14 11:41:04 +00:00
Nicolas B. Pierron
0c0087c94b Bug 1839396 part 13 - Convert GenericPrinter::put to be infallible. r=mgaudet
Remove the boolean returned value of printing functions of the GenericPrinter
and all descendant classes.

The goal being that error checking is the responsibility of the wrapping
function in charge of the GenericPrinter, and that functions in charge of
providing content should assume that everything is always written successfully.

This patch only look at the GenericPrinter methods, consumers of these functions
would be updated in subsequent patches.

Differential Revision: https://phabricator.services.mozilla.com/D181498
2023-09-14 11:41:04 +00:00
Nicolas B. Pierron
4dfe3bab48 Bug 1839396 part 12 - Make Fprinter / LSPrinter short-circuit on previous errors. r=mgaudet
As we are going to remove the returned value, and to be extra cautious, we skip
future re-entry in case of previous failures.

Differential Revision: https://phabricator.services.mozilla.com/D181497
2023-09-14 11:41:03 +00:00
Nicolas B. Pierron
ec386fb696 Bug 1839396 part 11 - Make Sprinter put functions infallible. r=mgaudet
As functions are made infallible, only the 2 release functions are reporting
errors. The advantage of this approach is that the error reporting and checking
would only happen in the release functions calls in the future.  This enables
the upcoming set of patches to change the return type of put functions to make
them infallible, reduce the number of visible branches in debugging code.

This makes the Sprinter class more like a "Sink allocator", where the smell of
allocation failures does not propagate immediatly through the sinking water until
all the water has been through.

Differential Revision: https://phabricator.services.mozilla.com/D181496
2023-09-14 11:41:03 +00:00
Nicolas B. Pierron
7bb9625ab6 Bug 1839396 part 10 - Replace Sprinter::string by Sprinter::release. r=mgaudet
When using Sprinter::string, one assumes that out-of-memory errors have been
reported earlier. As the code is being converted to be infallible, the
out-of-memory is thus needed when the release function is called. This change
replaces all Sprinter::string by Sprinter::release and explicit the error
checking code path which would be relevant when the Sprinter::put function would
become infallible in follow-up patches.

Differential Revision: https://phabricator.services.mozilla.com/D181495
2023-09-14 11:41:03 +00:00
Nicolas B. Pierron
55241085a0 Bug 1839396 part 9 - Add Sprinter::releaseJS. r=mgaudet
Sprinter::releaseJS centralize a mechanism which used in many places across the
JS engine, and replaces it with a single function call as well as democratising
the proper handling of UTF8 which might be added to Sprinter allocated strings.

Differential Revision: https://phabricator.services.mozilla.com/D181494
2023-09-14 11:41:03 +00:00