The poll() call in SystemResourceMonitor.stop might fail even though
there is something to read from the pipe, in some corner cases, and
python won't let us know about it. In that case, an exception is thrown,
leaving the SystemResourceMonitor (and its callers) in a weird state. In
practice, this leads BuildMonitor.__exit__ to recall stop, which then
fails.
So when poll() throws an exception, we pretend there's still something
to read, and we try to read anyways. If there is something to read,
recv() will return it, otherwise, it will throw an exception of its own,
which we catch, pretending we're done.
Furthermore, when there is nothing to read from the pipe, poll() simply
returns False, and our loop never sets `done` to True, and we then hit
an assert, which doesn't have its place here, so we remove it.
Finally, the other end of the pipe might have died at any time, making
sending over the pipe fail, so we also protect against that.
With all these changes, it feels like the reason to backout bug 1239939
in bug 1272782 should have been dealt with, and we can drop the timeout
again.
--HG--
extra : rebase_source : ac72dd5b2602cf3ffddfb429f95e02380f939893
The poll() call in SystemResourceMonitor.stop might fail even though
there is something to read from the pipe, in some corner cases, and
python won't let us know about it. In that case, an exception is thrown,
leaving the SystemResourceMonitor (and its callers) in a weird state. In
practice, this leads BuildMonitor.__exit__ to recall stop, which then
fails.
So when poll() throws an exception, we pretend there's still something
to read, and we try to read anyways. If there is something to read,
recv() will return it, otherwise, it will throw an exception of its own,
which we catch, pretending we're done.
Furthermore, when there is nothing to read from the pipe, poll() simply
returns False, and our loop never sets `done` to True, and we then hit
an assert, which doesn't have its place here, so we remove it.
Finally, the other end of the pipe might have died at any time, making
sending over the pipe fail, so we also protect against that.
With all these changes, it feels like the reason to backout bug 1239939
in bug 1272782 should have been dealt with, and we can drop the timeout
again.
--HG--
extra : rebase_source : fededf989fe9021654b67d5a070f7e49aa717f3c
In case the NewSession command fails due to errors returned
by Marionette, the browser has to be killed. This is necessary
because DeleteSession always requires an existent session, and
would fail in closing the browser. So the process would continue
to be alive.
MozReview-Commit-ID: 1llX4lPNYjN
--HG--
extra : rebase_source : 0da6529e2c09358c83760fc66c997db09665e304
In addition to readability improvements, it fixes a few small errors
where the "x" and "y" field are being mixed up.
MozReview-Commit-ID: LP8uAaELadY
--HG--
extra : rebase_source : 855c8a7b84396a57df63e315a78b5f1e389eda16
Now that geckodriver has support for window state in the window rect
object, we can enable the test_set_window_rect_window_minimized test
from testing/web-platform/tests/webdriver/tests/set_window_rect.py.
MozReview-Commit-ID: FY6EZTxMUbE
--HG--
extra : rebase_source : 0614f35e35ef4274e13ccc35d12093e7bdc18afa
This will change all build symbols to 'Ba' and set the USE_ARTIFACTS=1 environment variable.
Mozharness will detect this env to decide whether to perform an artifact build or not.
MozReview-Commit-ID: J8HVZzOt4mX
--HG--
extra : rebase_source : 453028d9be5cb2ad07e9a2a8b769cb6aac9893fe
A missing break statement caused a double execution of the code in
"profile-after-change", which leads to two instantiations of the
Marionette server colliding due to the same port.
MozReview-Commit-ID: Dp6fncj463j
--HG--
extra : rebase_source : dd4301c2fb797da228c0011e6bd90afa9171fb54
The webdriver spec declares the "proxyType" as required, and of
type string.
MozReview-Commit-ID: FXUhdYfOwWI
--HG--
extra : rebase_source : dc069a4de1e014951ed430bf5448ca0e3ac2545e
There are no other meta files that the preference values which were dropped in
this patch are set explicitly.
MozReview-Commit-ID: 6FXjj8gVPER
--HG--
extra : rebase_source : 1e1af50230201bf6aeccbc4ded5401f90a0b0d6c
In the spec [1], computed value for column-gap is defined as
'as specified, with <length>s made absolute'.
[1] https://drafts.csswg.org/css-multicol-1/#column-gap
MozReview-Commit-ID: IO22V33z8pz
--HG--
extra : rebase_source : 63167965a0e89fd298df3a22a7c5e41ed34dd1e9
This adds test verification support to the xpcshell test harness. With --verify,
the specified test(s) are run 20 times, then another 20 times in chaos mode.
Tests are run sequentially. I have some interest in running in parallel also,
but this may not be practical: 1. Under normal circumstances, a test does not
run in parallel with itself, so it is arguably an unrealistic mode of operation;
2. Logging fails if it sees a test start after a test with the same name has completed.
New function updateMozinfo() is broken out of runTests() and the remainder of runTests()
is split into two parts: runTests() prepares tests, then calls new function runTestList() to
actually run them. All changes are structural and no change in behavior is expected.
The complexity of the xpcshell test harness has grown over time. I am reluctant
to make it more complex without first trying to simplify it. Here I consolidate
some of the argument passing between functions in an attempt to simplify some
important interfaces. Changes are strictly structural and should result in no
change in behavior.
The webdriver spec has been updated a while ago and renamed the proxyType
for not using a proxy from "noProxy" to "direct".
MozReview-Commit-ID: FjDIK8XCba8
--HG--
extra : rebase_source : 423149d3f82cf1b7e28d29a775359ac66e7a6f90
To allow geckodriver to create file objects in child processes, this
preference has to be set to true. As such it needs to be recommended
in Marionette and set as default preference for geckodriver.
MozReview-Commit-ID: 8bdbi5jH6Vc
--HG--
extra : rebase_source : cc8963d2b15357b6d1607854e978aa764fcbd42f
The webdriver spec has been updated a while ago and renamed the proxyType
for not using a proxy from "noProxy" to "direct".
MozReview-Commit-ID: FjDIK8XCba8
--HG--
extra : rebase_source : ab41d737c9ba06c8883bfd36839807e6c3316c92