To enable Win32k lockdown, calls involving native theme will need to be
removed.
Currently these calls are scattered around several files. This class creates
a proxy for the Win32 calls. Whitelisting this class in awcw32ks makes it much
easier to track Win32k removal with themes removed.
As an added benefit, once non-native theming is done it will be easy to verify
by asserting that this class is never created in Content.
Differential Revision: https://phabricator.services.mozilla.com/D75946
Changes:
- stop using runtime information for the chunking process of web-platform-tests
- remove the wpt_group_translation workaround as it is no longer necessary
- simplify chunking process to iterate and assign test paths to chunks in order
Simply assigning test paths (stand-in for manifests in other suites) is now possible because other patches in the stack now prevent the web-platform-tests harness (when an external process handles the grouping) from loading all tests in a given path.
Differential Revision: https://phabricator.services.mozilla.com/D78321
Changes:
- if MOZHARNESS_TEST_PATHS is defined, write the contents of that directory to a JSON file.
- append `--run-by-dir` only if `--test-groups` flag is not set.
Differential Revision: https://phabricator.services.mozilla.com/D78820
Changes:
- add new environment variable `TESTS_BY_MANIFEST_URL` referencing the tests-by-manfiest.json.gz artifact generated by decision task.
- add new method `download_manifest` in mozharness/web_platform_tests.py to download the artifact, then remove non-web-platform-test manifests.
- the processed artifact is then saved as JSON file containing only web-platform-tests for downstream harnesses to use.
Differential Revision: https://phabricator.services.mozilla.com/D78318
Changes:
- when generating the `groups` in TestResolver for web-platform-tests, use the paths to the test files up to a maximum depth of 3 by default.
Differential Revision: https://phabricator.services.mozilla.com/D79355
This adds a --test-groups command line argument which points at a JSON file containing lists of tests divided into explicit groups like:
{"/dom": ["/dom/historical.html", ...],
"/dom/events/": [...]}
This is for situations where the division of tests into groups is
performed by an external process (in the case of gecko: by the
decision task).
Group names must be a path prefix, as this metadata is reused as the
test "scope" which is passed down into the output and can be used by
automatic metadata update for per-group properties like the LSAN allow
list.
--test-groups is incompatible with --run-by-dir but composes with
passing an explicit include list by running the intersection of the
supplied tests.
Differential Revision: https://phabricator.services.mozilla.com/D75175
There are various binaries that are included in test archives that are
necessary for artifact builds to be repackaged. Don't generate artifact build
variants of tasks without them.
Differential Revision: https://phabricator.services.mozilla.com/D79575
This deliberately excludes builds that are implemented using the artifact build machinery,
but are not primarly intended to short-circuit build time. In particular the Windows aarch64
builds are not marked this way.
Differential Revision: https://phabricator.services.mozilla.com/D79549
Similar to previous patch, this info is not set on functions with lazy
enclosing functions. Also, inline FunctionBox::setTypeForExposedFunctions
into its only caller.
Differential Revision: https://phabricator.services.mozilla.com/D79283
FieldInitializers is only defined for functions that have a compiled
enclosing script. We should avoid setting the value when it is not defined.
Update initFromLazyFunction so that fieldInitializers are only read for the
function being delazified. Fix XDR to not track fieldInitializers for lazy
functions with lazy parent functions by checking for exisitance of an
enclosingScope.
Also ensure fieldInitializers are set correctly when cloning scripts. In
practice, we delazify entire script tree before cloning but this is a footgun
none the less.
Differential Revision: https://phabricator.services.mozilla.com/D79282
This brings the `android-build` image very close to other build
images, paving the way for it to be folded in completely. It also
makes us more resilient in the face of upstream service interruptions.
Differential Revision: https://phabricator.services.mozilla.com/D78945
Changes:
- stop using runtime information for the chunking process of web-platform-tests
- remove the wpt_group_translation workaround as it is no longer necessary
- simplify chunking process to iterate and assign test paths to chunks in order
Simply assigning test paths (stand-in for manifests in other suites) is now possible because other patches in the stack now prevent the web-platform-tests harness (when an external process handles the grouping) from loading all tests in a given path.
Differential Revision: https://phabricator.services.mozilla.com/D78321
Changes:
- if MOZHARNESS_TEST_PATHS is defined, write the contents of that directory to a JSON file.
- append `--run-by-dir` only if `--test-groups` flag is not set.
Differential Revision: https://phabricator.services.mozilla.com/D78820
Changes:
- add new environment variable `TESTS_BY_MANIFEST_URL` referencing the tests-by-manfiest.json.gz artifact generated by decision task.
- add new method `download_manifest` in mozharness/web_platform_tests.py to download the artifact, then remove non-web-platform-test manifests.
- the processed artifact is then saved as JSON file containing only web-platform-tests for downstream harnesses to use.
Differential Revision: https://phabricator.services.mozilla.com/D78318
Changes:
- when generating the `groups` in TestResolver for web-platform-tests, use the paths to the test files up to a maximum depth of 3 by default.
Differential Revision: https://phabricator.services.mozilla.com/D79355
This adds a --test-groups command line argument which points at a JSON
file containing lists of tests divided into explicit groups like:
{"/dom": ["/dom/historical.html", ...],
"/dom/events/": [...]}
This is for situations where the division of tests into groups is
performed by an external process (in the case of gecko: by the
decision task).
Group names must be a path prefix, as this metadata is reused as the
test "scope" which is passed down into the output and can be used by
automatic metadata update for per-group properties like the LSAN allow
list.
--test-groups is incompatible with --run-by-dir but composes with
passing an explicit include list by running the intersection of the
supplied tests.
Differential Revision: https://phabricator.services.mozilla.com/D75175
> /builds/worker/checkouts/gecko/gfx/gl/SharedSurface.cpp:141:1: error: control reaches end of non-void function [-Werror=return-type]
Old compilers don't realize the switch being exhaustive means the
function always returns, which we workaround here.
Differential Revision: https://phabricator.services.mozilla.com/D78837
- Do not apply mIsCanvasDirty bailout when presenting from a opaque FBO
back buffer.
- Create a separate WebGLContext::PresentInto with more specific XR
validations and logic.
- Use the Opaque FBO backbuffer as source when calling
BlitBackbufferToCurDriverFB
- Always invalidate OpaqueFBO regardless of the WebGL context's
preserveDrawingBuffer value.
Differential Revision: https://phabricator.services.mozilla.com/D78301
* Majorly simplity CanvasRenderer
* Replace GLScreenBuffer with trivial GLSwapChain
* Use descriptor structs so that future SharedSurface changes aren't so painful
to propagate
* Mortgage/strip out more OffscreenCanvas code for now
Differential Revision: https://phabricator.services.mozilla.com/D75055