This is currently effectively just a helper around the existing
properties. Theoretically we could streamline things here in the future
by managing primary content entirely based on BrowsingContext rather
than docshell, but there's enough complexity there right now with other
properties like updating properties on content shells as they're
attached, that it's probably not worth trying to unify right now,
especially considering the low number of consumers.
Differential Revision: https://phabricator.services.mozilla.com/D146495
This patch won't actually build, because a few bits of code are used
for both nsIFactory::createInstance and static components, and static
components are not fixed until the next patch.
The first place is nsLoadGroupConstructor, which uses an nsIFactory
macro to create a static component constructor. (This could be worked
around by expanding the macro to the state before this patch.)
The other issue is that nsAppShellConstructor is used in an nsIFactory
on OSX, but as a static component on all other platforms. This could
be worked around by wrapping nsAppShellConstructor in an adaptor that
passes in the extra null argument to nsAppShellConstructor.
Differential Revision: https://phabricator.services.mozilla.com/D146456
For the innermost frame of debugger mode bailouts, the current approach effectively uses an allow-list to decide which stack slots need to be recovered. This is fragile to any future bytecode changes that keep values alive on the expression stack. It's also unnecessary: if we just recover slots that are included in the snapshot, and skip slots that don't have allocations, everything works out.
Differential Revision: https://phabricator.services.mozilla.com/D146525
This reverts the undesired change by bug 1765419 and uses he one by bug 1765981.
First party isolation (partioning) is only enabled in Nightly. Bug 1549587 is
the general bug tracking first party isolation.
Differential Revision: https://phabricator.services.mozilla.com/D146486
Instead of having a function dedicated to parsing eagerly every function, while
filling the stencil cache, we delegate to the code which would be used in
production to do so.
This is achieved by using instrumentation which creates DelazifyTasks for
scripts which have a delazification mode which implies populating the stencil
cache.
Differential Revision: https://phabricator.services.mozilla.com/D145995
This simplifies profiling since now we can see the results within a single build
based on the preference (though there is still a slight cost to copying the
bytecode).
Setting to (the default) 0 disables compression.
Differential Revision: https://phabricator.services.mozilla.com/D144737
This leaves the code in ScriptLoader and ScriptLoadHandler a lot more readable.
ScriptBytecodeCompressedDataLayout and ScriptBytecodeDataLayout simplify
locating data in the ScriptLoadRequest bytecode buffer when compressing and
decompressing it.
The interface is still error-prone. For example, these classes don't check
that the returned pointers are within the bounds of the buffer.
Differential Revision: https://phabricator.services.mozilla.com/D145011
The SRI hash at the beginning of ScriptLoadRequest::mScriptBytecode is left
uncompressed because ScriptLoader::OnIncrementalData() tries to decode it
as soon as enough data is read (instead of waiting until OnStreamComplete()).
ScriptLoader writes the length of the uncompressed bytecode to the buffer
to make it easy for ScriptLoadHandler to allocate an buffer of the right size
to decompress the bytecode.
These changes are based on the bytecode compression implemented for WASM in
dom/fetch/FetchUtil.cpp.
Differential Revision: https://phabricator.services.mozilla.com/D141524
Automatic update from web-platform-tests
Revert "[Cookie Expires/Max-Age Upper Limit] (3) Enable by default"
This reverts commit caff7911aeddc8d231dc335715d1dda404320f67.
Reason for revert: Failing multiple bots
Original change's description:
> [Cookie Expires/Max-Age Upper Limit] (3) Enable by default
>
> This won't be committed until after shipping is approved.
> For now, this is just for vetting.
>
> This CL is a part of a series:
> (1) Add new UMA
> (2) Implement limit behind flag
> (3) Enable by default
>
> Spec:
> https://github.com/httpwg/http-extensions/pull/1732
>
> Bug: 1264458
> Change-Id: Idc0469d260c4a5706a9c64feec9af5a0f490d311
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3561385
> Reviewed-by: Christian Dullweber <dullweber@chromium.org>
> Reviewed-by: Clark DuVall <cduvall@chromium.org>
> Auto-Submit: Ari Chivukula <arichiv@chromium.org>
> Reviewed-by: David Roger <droger@chromium.org>
> Reviewed-by: Steven Bingler <bingler@chromium.org>
> Commit-Queue: Ari Chivukula <arichiv@chromium.org>
> Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1003286}
Bug: 1264458, 1325493
Change-Id: Ia10ffe2f5b6b21a6de3f6bc3a3014510ac3a0e68
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3648321
Commit-Queue: Lijin Shen <lazzzis@google.com>
Owners-Override: Lijin Shen <lazzzis@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1003366}
--
wpt-commits: 730cef4a2fbf9bc1b70834ece165f02c7ed280e1
wpt-pr: 34063
Automatic update from web-platform-tests
Reland "Replace cached ::first-line style from getComputedStyle"
This is a reland of commit c5f66f4464a569b6735ce51a01d2cb6c57a8ec6c
Original change's description:
> Replace cached ::first-line style from getComputedStyle
>
> getComputedStyle may cache a ComputedStyle when requesting ::first-line
> compared to which style should be used when the line is laid out. Make
> sure we overwrite the cached one when the applied ::first-line style
> originates from a parent block.
>
> Bug: 1323201
> Change-Id: Ief4ab7d07c751d7de339bbef3e6b839a48b6fddf
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3629301
> Commit-Queue: Rune Lillesveen <futhark@chromium.org>
> Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1001462}
Bug: 1323201
Change-Id: I11a22bee5508d3afef23526bdc95a9474d67081e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3641866
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1003343}
--
wpt-commits: 330d741500a917a6840a036087fcc2a6ad95cf98
wpt-pr: 34031
Automatic update from web-platform-tests
[floats] Add logic to ensure we don't intersect floats.
Previously with certain values of margins - it was possible to create
a scenario to intersect a new-fc with a float.
As demonstrated by: floats-wrap-bfc-with-margin-003.tentative.html
This patch introduces logic to prevent this. Specifically after we have
calculated the BFC-offset for the new formatting context, we check
if it is outside the opportunity on each side, and if that side of the
opportunity has any floats.
Bug: 1323004, 1322774
Change-Id: I82e07e6568da92a3e73842f54347c4f07ec73f51
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3636486
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1003290}
--
wpt-commits: 84db71bbb7dfad9cdb6d68453395e2392003c200
wpt-pr: 34059
Automatic update from web-platform-tests
[Cookie Expires/Max-Age Upper Limit] (3) Enable by default
This won't be committed until after shipping is approved.
For now, this is just for vetting.
This CL is a part of a series:
(1) Add new UMA
(2) Implement limit behind flag
(3) Enable by default
Spec:
https://github.com/httpwg/http-extensions/pull/1732
Bug: 1264458
Change-Id: Idc0469d260c4a5706a9c64feec9af5a0f490d311
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3561385
Reviewed-by: Christian Dullweber <dullweber@chromium.org>
Reviewed-by: Clark DuVall <cduvall@chromium.org>
Auto-Submit: Ari Chivukula <arichiv@chromium.org>
Reviewed-by: David Roger <droger@chromium.org>
Reviewed-by: Steven Bingler <bingler@chromium.org>
Commit-Queue: Ari Chivukula <arichiv@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1003286}
--
wpt-commits: ebbd0188cfd7d3448542a757b523a2a5147b5ef1
wpt-pr: 33454
Automatic update from web-platform-tests
Revert "[Trusted Types] Get list of event handlers from WebIDL"
This reverts commit 20acdd57bc0c2900456a9717629834686cdb4890.
Reason for revert: Breaks Deterministic builders on debug builds, likely due to the Python build action.
Linux failure: https://ci.chromium.org/ui/p/chromium/builders/ci/Deterministic%20Linux%20(dbg)/25817/overview
Fuchsia failure: https://ci.chromium.org/ui/p/chromium/builders/ci/Deterministic%20Fuchsia%20(dbg)/12090/overview
Original change's description:
> [Trusted Types] Get list of event handlers from WebIDL
>
> This change retrieves the list of attributes declared as event handlers
> from WebIDL and uses that to check for TrustedScript, instead of using
> the string prefix "on".
>
> Bug: 993268, 1084587
> Change-Id: Ic15bc0994bcd19d9d7385cbef4af0f01af820ae1
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3616765
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
> Reviewed-by: Yifan Luo <lyf@chromium.org>
> Commit-Queue: Daniel Vogelheim <vogelheim@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1003034}
Bug: 993268, 1084587
Change-Id: I0ba65a80617dd027eb7903192843fa8700a4c56a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3648222
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Dale Curtis <dalecurtis@chromium.org>
Auto-Submit: David Song <wintermelons@google.com>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1003215}
--
wpt-commits: dbbf0e956fda3e10be80bac753f2fb7e8830f86a
wpt-pr: 34060