Sometimes we get errors that result in invalid json in the logs.
There's nothing reasonable to do about this during metadata updates
so just skip it
MozReview-Commit-ID: 4QuM7M3lXGv
--HG--
extra : rebase_source : 7e828a32c0a05338ff050f16ab6a91761e58d9b0
Raw log files have the big disadvantage that they are large and we
therefore spend a lot of time just downloading the log files and
parsing json. wptreport.json files are much smaller and so reduce
these issues.
In order to support both formats, we first try parsing the log as
json. If that succeeds, and we have the expected keys, we parse it as
a wptreport file by reconstructing the events we would have got in a
raw log.
If that doesn't work we fall back to the standard raw log processing.
MozReview-Commit-ID: 7rjTJJUPhpz
--HG--
extra : rebase_source : 6d0a834811cb1b5c7d92e350a5eaa9d75a35a576
The previous strategy for wpt metadata updates was to read add the
existing expected files, annotate them with the new results, compute
the resulting expectation file, and reserialize everything. This was
quite straighforward, but it has a number of disadvantages:
* Slow, since all expectation files need to be read and written, even
when there were no changes affecting those files.
* Memory intensive, since we have to load all the results and the
metadata at the same time, and little optimisation had been
done. This could lead to OOM for large updates on some machines.
* Confusing, since parsing and reserializing files leads to changes in
"unrelated" metadata
Instead we take the approach that we should only update the metadata
in cases where there are actually changes. Inteads of loading all the
expectation files, we do the following:
* Load all the results data into a large nested dictionary, keeping
track of which results files had an update that requires
regenerating metadata.
* Load/serialize metadata only in the cases it changed, and one at a
time.
Loading all the data upfront is still necessary because we effectively
need to traspose the input data in cases where we have multiple
configurations running the same test (i.e. we get the data per run
and want the data for all runs per test). This approach also has the
disadvantage that it's more likely to miss a necessary update. However
the tradeoffs for better performance are still worthwhile.
MozReview-Commit-ID: 1jevEmRsJxc
--HG--
extra : rebase_source : f1a3ed9c1a49eb347306029e8f164fcac0b2da10
This adds a top level key lsan_leaks iff there are any leaks detected in the run.
The data is equivalent to that in the underlying structured logger.
MozReview-Commit-ID: I3ex7Yamhoh
--HG--
extra : rebase_source : ded7c0ef92170f12874359a5b5a20701ab93dbdf
This adds some overhead and can be annoying since it requries explicitly aborting failed jobs.
The state storage isn't very useful for just udpating metadata (the typical gecko usecase), but
is useful for performing syncs (a typical servo usecase). Therefore add a --no-store-state option
and set it by default in the gecko mach frontend.
MozReview-Commit-ID: LhEcMkyuRHD
--HG--
extra : rebase_source : 0f5c22b2a1337f7ca370cae31514792528d234a3
These files are duplicates of each other, so for simplicity we may as well use the
upstream copies to avoid falling out of sync.
MozReview-Commit-ID: JpG3joT8NNJ
--HG--
extra : rebase_source : d06c8969a9f8871b078c22e72947f7cd7584fb00
- Access nsISSLStatus directly as a member of nsITransportSecurityInfo
and nsISecureBrowserUI. This is part of a larger effort to consolidate
nsISSLStatus and nsITransportSecurityInfo.
- The TabParent implementation of GetSecInfo will always return null.
- Removed unnecessary QueryInterface calls
- Style adherence updates
MozReview-Commit-ID: Dzy6t2zYljL
--HG--
extra : rebase_source : b15f75e39d04c8485b4eb63416fd1f1e4175fafe
In particular the animation-003 test needs it but we may as well turn it on for
all tests since we'll possibly add more tests like this in the future.
--HG--
extra : histedit_source : 3e16067a59780c195b54fae7ad420138e1f18209
Automatic update from web-platform-tests[css-layout-api] Don't use LayoutNG for custom layout children.
Custom layout children may not establish new formatting contexts, and
since the custom container itself is laid out by the legacy engine, we
need to force its children to be laid out by legacy as well.
Added a margin collapsing test that used to fail in NG because of this.
Change-Id: Id320f60fb76b0ed6563fb2b88f6936ac37efc1fd
Reviewed-on: https://chromium-review.googlesource.com/1131179
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Commit-Queue: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573864}
--
wpt-commits: b47e2cd91cfe1b2246655b6612c407898939588c
wpt-pr: 11887
Automatic update from web-platform-testsAdd tests for (module dedicated|classic shared) worker's URLs
This CL adds WPT tests for
- WorkerLocation (wpt/workers/interfaces/WorkerGlobalScope/location/),
- referrer (wpt/xhr/), and
- API base URL (wpt/workers/baseurl/)
that should reflect worker global scope's URL, for
- classic shared workers and
- module classic workers.
Some tests are half-migrated to fetch_tests_from_worker()-style
to test shared workers easily, while the tests for
module workers uses the existing non-fetch_tests_from_worker()-style
tests, because testharness.js can't be used from module scripts.
Bug: 861564
Change-Id: I62fa415647da47e00bf7cbf4d7648f5d64377c04
Reviewed-on: https://chromium-review.googlesource.com/1128517
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573840}
--
wpt-commits: 1eefa00af8eb0137b4812d0947a38fb5b76cd04e
wpt-pr: 11846
--HG--
rename : testing/web-platform/tests/workers/baseurl/alpha/sharedworker.html => testing/web-platform/tests/workers/baseurl/alpha/sharedworker-in-worker.html
rename : testing/web-platform/tests/workers/baseurl/alpha/worker.html => testing/web-platform/tests/workers/baseurl/alpha/worker-in-worker.html
Automatic update from web-platform-testsMove [SecureContext] to NavigatorBluetooth
This change moves the [SecureContext] extended attribute from the
individual attributes on the Bluetooth interface to the entire partial
Navigator interface for Web Bluetooth.
This has the practical effect of making the entire navigator.bluetooth
attribute undefined in in-secure contexts rather than only
navigator.bluetooth.requestDevice.
Web Platform Tests are also updated to test access to this attribute
from both secure and in-secure contexts.
Bug: 860798
Change-Id: Ife32dcfe9d035613c41399d7189e087cdb9f54d6
Reviewed-on: https://chromium-review.googlesource.com/1128248
Commit-Queue: Reilly Grant <reillyg@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Reviewed-by: Jeffrey Yasskin <jyasskin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573780}
--
wpt-commits: 0dcad092b51b7e71890565a7df114a1955a84b78
wpt-pr: 11839
--HG--
rename : testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.html => testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.https.html
rename : testing/web-platform/tests/bluetooth/idl/idlharness.tentative.window.js => testing/web-platform/tests/bluetooth/idl/idlharness.tentative.https.window.js
Automatic update from web-platform-tests[testharness.js] Report error for worker errors (#11400)
Ensure that uncaught exceptions in typical worker tests cause the
harness to report an ERROR status, and update the corresponding test
accordingly. Add a test to verify that the harness reports an OK status
in response to uncaught exceptions which originate from "single-page
test" workers.
--
wpt-commits: 98848dff9fe765e3719484392fa27458f5a21c54
wpt-pr: 11400
Automatic update from web-platform-testsVerify that invalid selectors throw for empty elements
--
wpt-commits: 553778eb487e687efc08ef81b77206c7b91dd930
wpt-pr: 11848
Automatic update from web-platform-testsDisallow font-relative units when resolving var() for font-size.
For a registered custom property --foo, the following is no longer
allowed:
--foo: 10em;
font-size: var(--foo);
The same applies to ex and ch, as well as rem on the root element.
This is because --foo depends on font-size via the 'em' unit, and
font-size depends on --foo via the var() reference. This creates a
circular dependency that must be resolved somehow. The agreed-upon way
to resolve that, has been by treating the whole var() reference as
invalid.
This patch implements that cycle detection by adding flags to disallow
resolution of any var() references that contain font-relative units.
These flags are set in ResolveVariableReferences based on the
CSSPropertyID/StyleResolverState.
When a custom property itself contains var() references, it needs to
"inherit" the font-unit-ness from the resolved variables (similar to
is_animation_tainted). This is why flags have also been added to Result.
Bug: 848698
Change-Id: Ife0570949d996c5fc26dc10b1d7ca15bd27343b1
Reviewed-on: https://chromium-review.googlesource.com/1120334
Commit-Queue: Anders Ruud <andruud@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573712}
--
wpt-commits: a8bd7948236886b2dbce7456beb0406e7d2207a1
wpt-pr: 11748