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
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
Upgrades the webdriver crate dependency to 0.29.0, which contains some
backwards incompatible changes for RectResponse. This type has been
split in two, WindowRectResponse and ElementRectResponse.
The former type contains a new "state" field which is already implemented
by Marionette. Because geckodriver is used with a range of earlier
Firefoxen, it defaults to "normal" window state if the field is not
returned from Marionette. This is acceptable.
MozReview-Commit-ID: FRxppRVmiZl
--HG--
extra : rebase_source : 4a86659f337598bb4f5623c51f5df288c8a5dd69
The marionette.defaultPrefs.port and marionette.logging preferences were
removed in https://bugzil.la/1344748, which shipped in Firefox 54.
Because the next version of geckodriver (0.19.0) will only support
Firefox 55 and greater, it is safe to remove the fallbacks.
MozReview-Commit-ID: 4fhtoRasqyB
--HG--
extra : rebase_source : 0ac6dff0343efd66312a482f2be832e95013be48
browser.dom.window.dump.enabled causes the browser console messages to
reach stdout, often confusing geckodriver users.
We don’t recommend this preference in the Marionette server, although
it is set in geckoinstance.py. This seems appropriate to the Gecko
developer audience.
Use of the dump() statement will of course still be possible in chrome
level code.
MozReview-Commit-ID: 7s7WlV2COBQ
--HG--
extra : rebase_source : 146d81109dbc547bcd1aeafe1c13ff632e90b73f
This allows tests that use Geckodriver remotely to more easily install
addons. The base64 blob is written to a temporary file before being
passed on to Marionette.
MozReview-Commit-ID: DnaBqoXCj5
--HG--
extra : rebase_source : 0c3f37b65fcb47c5a1389348e34f19b98c8183d5
The canonical geckodriver source code no longer lives on GitHub, but
in mozilla-central's testing/geckodriver directory. Linking through
searchfox.org because it provides a better UI than hg.mozilla.org.
MozReview-Commit-ID: LmnviuC7Z9Y
--HG--
extra : rebase_source : 23f0e669bd719c595300d4e7ac38bc12f4937f57
Upgrades the mozrunner crate dependency by pinning it to 0.4.1. With `./mach vendor rust' I could not find any other way to force a new version to be downloaded because cargo, as far as I understand, does not yet support using crates.io as a fallback.
This patch also pins the mozprofile and mozversion dependencies exactly, although this is strictly not needed yet because they we have the latest versions vendored in-tree.
MozReview-Commit-ID: 8emDKbiYd0S
--HG--
extra : rebase_source : c153506f481255b2f9362e94da3254013ad522ab
Overhaul of geckodriver's README to include more detailed information
about picking up prepared profiles from the filesystem using the args
capability in moz:firefoxOptions. It also includes a short example
on running Firefox in headless mode, which is available on some modern
Firefoxen on certain systems.
Also updates build instructions now that geckodriver lives in-tree.
MozReview-Commit-ID: AoJtpULBctH
--HG--
extra : rebase_source : 3697262f7050778ee1bc81ff4c26d51bf2cf86d4
Removes .version file ignore from .gitignore and creates a
testing/geckodriver/.hgignore rule file for parity with git.
MozReview-Commit-ID: HXgbLxeleAl
--HG--
extra : rebase_source : 8c1f919a77351378a580ab161e9660c5868e881f
The GetNamedCookie command currently returns a JSON Array of one,
retained cookie, after it has removed the cookies that don't match by
name.
This is in violation of the WebDriver specification, which says it must
return the cookie serialisation directly.
MozReview-Commit-ID: 9yEiarEGBez
--HG--
extra : rebase_source : ec393eec712a6f957cee22d261bcd9ed13c6ec5b
The "timeouts" command could have been removed in Firefox 55, and
"quitApplication" can be removed with Firefox 56.
MozReview-Commit-ID: Fe7x8Yy0vSb
--HG--
extra : rebase_source : fc8b2c3c27f76a472cbdd8681efff06ca60e00f7
The GetNamedCookie command currently returns a JSON Array of one,
retained cookie, after it has removed the cookies that don't match by
name.
This is in violation of the WebDriver specification, which says it must
return the cookie serialisation directly.
MozReview-Commit-ID: 9yEiarEGBez
--HG--
extra : rebase_source : ad4acfb9510354a86a0b604cacf32cfd5c4f8e5d
Because we no longer can tag geckodriver releases in mozilla-central,
we need to include build information in the program itself. In the
version information message displayed when passing the --version flag,
we now include the current tip's SHA1 and build date following the
version number.
This patch could be made simpler by dumping this information correctly
formatted into a text file in the output directory, but it was requested
in https://bugzilla.mozilla.org/show_bug.cgi?id=1374977 to also include
the version information in the log output, which means we need to access
it differently and in different places.
MozReview-Commit-ID: CbFQn7IV8ew
--HG--
extra : rebase_source : dcc38ba7b5f209e9878755d5d75b611e22b5253d
This updates the vendored WebDriver crate to 0.27.0
MozReview-Commit-ID: HM6MIU9IDAq
--HG--
extra : rebase_source : 137941518076a8d99e5b8c40ac67ad60d9f205b9
Details of changes to WebDriver Crate can be found at
48e436df3f
MozReview-Commit-ID: 9rie1uA0JYO
--HG--
extra : rebase_source : 3f706585158f096f01a9580c46e5a84a7afad5a9
It removes the duplication between the various commands that return
a WindowRect response and places the validation in a single function.
MozReview-Commit-ID: IOMA5H23PFo
--HG--
extra : rebase_source : 748a96c0d291f0e7819139de85c153c3791bfeae
This updates the vendored WebDriver crate to 0.27.0
MozReview-Commit-ID: HM6MIU9IDAq
--HG--
extra : rebase_source : c3b6cb7d0e2b7f7423d7880a936df52d081cd867
Details of changes to WebDriver Crate can be found at
48e436df3f
MozReview-Commit-ID: 9rie1uA0JYO
--HG--
extra : rebase_source : b7e945410e5fa55e3bbfd5e3c8658f09255a57a3
It removes the duplication between the various commands that return
a WindowRect response and places the validation in a single function.
MozReview-Commit-ID: IOMA5H23PFo
--HG--
extra : rebase_source : 9e1845b06926940b851717c4cba9d0e82fb5306b
This updates the vendored WebDriver crate to 0.27.0
MozReview-Commit-ID: HM6MIU9IDAq
--HG--
extra : rebase_source : 080e3a35972079b86b03b731e83e5171c5918da4
Details of changes to WebDriver Crate can be found at
48e436df3f
MozReview-Commit-ID: 9rie1uA0JYO
--HG--
extra : rebase_source : 5457741bd94dc013a12c1bdd5446dfe988b65938
It removes the duplication between the various commands that return
a WindowRect response and places the validation in a single function.
MozReview-Commit-ID: IOMA5H23PFo
--HG--
extra : rebase_source : 9e1845b06926940b851717c4cba9d0e82fb5306b
It is not clear exactly why, but Travis will complain that gcc and
gcc-multilib packages cannot be installed because they are virtual. The
working theory is that the virtual packages do not correctly resolve to
the concrete gcc-4.8 and gcc-4.8-multilib packages.
This patch fixes compilation of geckodriver on Travis, which we at the
moment use for releasing geckodriver.
DONTBUILD
MozReview-Commit-ID: H1zsUgDi7wO
--HG--
extra : rebase_source : 191f0d0719cbc23f92899f5ec342ed64dca79c66
This implements the geckodriver support for the Fullscreen Window command.
The API was introduced in the webdriver crate in
https://github.com/mozilla/webdriver-rust/pull/100
MozReview-Commit-ID: 3eIuLmGWl2x
--HG--
extra : rebase_source : 55b38b1ff2850d44b79270194874e7418d34a907
Increasing the length of the network.http.phishy-userpass-length
preference will cause Firefox to not prompt when navigating to a website
with a username or password in the URL.
MozReview-Commit-ID: 4D20YXjl7LH
--HG--
extra : rebase_source : 6fab6cfbda948527241a3f85dc4f0dee01dc5c0f
Update dependencies for mozrunner (0.4) and mozprofile (0.3) to
stop setting default preferences by mozrunner. This will also allow
to overwrite all preferences now via the moz:firefoxOptions capability.
MozReview-Commit-ID: IU0oKzRnnfG
--HG--
extra : rebase_source : 7f8946f7e22af9beebaddc52c78d549ddc898c87
Using the canonicalized path to start Firefox breaks the
browser on Windows because the "\\?\" prefix is not supported
yet. As result all components which rely on XCurProcD for
file handling are throwing JS errors, and do not initialize
correctly.
MozReview-Commit-ID: 5MWhDf1HCWf
--HG--
extra : rebase_source : da97482894eda970b6e6610e7462b927b57fb3a1
This updates geckodriver's cargo lockfile,
testing/geckodriver/Cargo.lock, with the exact crate versions available
under third_party/rust. This will ensure geckodriver is built using the
correct in-tree crate dependencies.
MozReview-Commit-ID: HtPohwW6uN0
--HG--
extra : rebase_source : cdafc425e572494550ce81d6d8c612496fcaab82
geckodriver is the Mozilla implementation of the WebDriver remote
control interface for Gecko, and provides an HTTPD proxy that
translates the WebDriver protocol to Marionette.
Building this as part of the Firefox build will allow us to run
WPT WebDriver tests to verify our implementation of Marionette and
geckodriver. It also makes it less painful to make changes across
projects.
This change will cause the geckodriver program to be built as part
of regular Firefox builds, except on macOS and Android, and when artifact
builds are enabled.
RUST_PROGRAMS in cross-compile environments cause the wrong linker to
be used. When this bug is fixed, we should be able to enable building
of geckodriver on macOS. This work is tracked in:
https://bugzilla.mozilla.org/show_bug.cgi?id=1329737
On Android, we may one to build a binary for the host system to use
(x86_64), instead of an ARM binary for the emulator.
MozReview-Commit-ID: FG5tmPv4iut
--HG--
extra : rebase_source : 091728fd2582458325689fc6e3d8b317428802d8
* marionette: make trace logs safe for windows prompt
The symbols "←" and "→" are encodeed as "?" in the Windows command
prompt. To make the logs from this system useful, use ASCII versions
of the arrows.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 60e7a430dc38a9e1921928c0cd996bb5fc00198b
committer: jgraham <james@hoppipolla.co.uk>
IGNORE BAD COMMIT MESSAGES
--HG--
extra : rebase_source : 261d9d9d73b8e2139dc20bec0985352f2897fabe
extra : amend_source : 4f838fad090337c2a49a3987c3a12d3289e4c7d0
Added before_install to handle packages that solve the current 32-bit Linux optimized release issues.
This addition also ensures future changes in dependencies won't cause similar errors.
Defining OS for the i686 target is no longer needed and will break the build if defined.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: c8508c092fd4428a1caa6d8a46a656e940a3ebd1
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : be082b3c0e15f003a33646aa40f03cd348fe43ad
In some circumstances mozversion's attempt to read the Firefox version
from ini files can fail. This can be, for example, when the "binary"
is actaully a shell script that launches the real Firefox. In that
case it isn't necessarily possible to locate the ini files without
making the user explicitly provide a path. Instead fall back on
running `firefox -version` in this case and extracting the binary from
the returned string.
Fixes: https://github.com/SeleniumHQ/selenium/issues/3884
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 6d1c7f28da90910c05426bbda8a70c42676033fa
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : 6d058c8c863022280e3b077b5facb2adf23c02b0
geckodriver currently assumes the response from the CloseWindow command
is empty and unmarshals it to Ok(Void).
Starting with Firefox 52, Marionette returns a window handle array to
indicate whether the last window was closed. If this array is empty,
the delete_session field is set to true and the session is ended.
Fixes: https://github.com/mozilla/geckodriver/issues/613
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: b579b41838918460a63b59a4bb7933ecf485b7f5
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 1adac09285338702ae82c6108d7fc233d45c9cf1
Prevent confusion amongst users as towards whether v0.16.0 is out.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: dccea97b6cc709b4bd93146ea12c7d9b0b356688
--HG--
extra : rebase_source : 19985f1ae4f75089c1ee26e5d896292d82a82b0c
The log messages of what geckodriver sends and receives from the
Marionette server will now be logged at trace level. This brings parity
to the way protocol chatter is logged in the Marionette server.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 15345b6780dc3ab55b8b69f88e7634d80c912b72
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : dca9860c8e23b94c560afc3d90effa2ae3603830
This effectively filters out all log entries from modules that do not
begin with either "geckodriver" or "webdriver". This is a big hack,
but works well enough for the time being.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: baf5451f402be11df5a41df1fc7893ea8e85cb45
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 9056ddebabb690aa69fb57f7b7918b729a8920f9
https://github.com/jgraham/rust_mozrunner/pull/7 was recently submitted
to make mozrunner not imply starting the Marionette server by passing the
--marionette flag. This patch appends -marionette, with a single dash,
so that it will be accepted on Windows systems.
More discussion around this in
2e0054b90e.
Fixes: https://github.com/mozilla/geckodriver/issues/640
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 7c577c04176c1cc7b5bd45928b3a36bd1818c5ae
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 44dda1287b2da1c8199bce149367ee5483f456e7
Travis at some point changed the default compiler in their images to be
clang. Cross-compiling Rust code with clang is not possible quite yet,
so we force gcc to be used.
Fixes: https://github.com/mozilla/geckodriver/issues/495
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 043806820230f720c253d3d305dc15747d994b05
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 5b3a96f126a2b657e7659450489a99451ea4103b
Add documentation that explains where the fresh profiles are created
and how you can get its path from the returned capabilities object.
Fixes: https://github.com/mozilla/geckodriver/issues/605
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 0ad52a1e8f7a7da44a6cd6ec828af6acf3f6631d
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 6bdb014f2a1ab6f31e7f7bc65c685db026e23b52
* readme: expand usage instructions
Expands the usage instructions section of the README to contain actual,
useful information on how to use geckodriver with Selenium and as a
standalone WebDriver server.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: d322bcfb14e92b805adb05826051b2462f89e32c
committer: David Burns <david.burns@theautomatedtester.co.uk>
--HG--
extra : rebase_source : 9d5ebe506f6321712898d519e5ba2c34e91c743b
Following https://bugzilla.mozilla.org/show_bug.cgi?id=1348782
and https://bugzilla.mozilla.org/show_bug.cgi?id=1354323, the
sendKeysToElement and sendKeysToDialog commands in Marionette accept
only a string `text' field as input.
These patches to Firefox has since been uplifted all the way to Firefox
53. In order to make geckodriver work with newer Firefox versions again,
we need to pass the `text' field. But in order to support older Firefoxen
without the `text' field requirement, we also want to continue to send
`value' as a string array.
Clients must unfortunately send a string `text' field, but it is believed
it is easier to upgrade to the latest Selenium release than to pin the
exact versions of geckodriver and Firefox.
Fixes: https://github.com/mozilla/geckodriver/issues/594
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 41f89d878c805e0d66a15f8b6151dda78173ccff
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 1574a632e591dc121cba77fc58c8026435fbef2b
marionette.logging has been renamed marionette.log.level, but we keep
the former around for backwards compatibility with earlier Firefoxen.
This is similar to change made in 8f19dc4dac63da4153584a2a6974c26be9453ecc
for marionette.port.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 46518d9d8ae20eea00dd1c7fdaa1287f8c036c7e
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : fe4aad6bb2dc74789ba1665463084cf873f30a78
Remove one layer of wrapping inside the `capabilities' field when
geckodriver sends the capabilities to Marionette.
Prior to this patch, geckodriver would send the following JSON Object
to Marionette's newSession command:
{capabilities: {foo: 1, {desiredCapabilities: {foo: 1}}}}
Following this patch, it sends:
{foo: 1, {capabilities: {desiredCapabilities: {foo: 1}}}}
In the future, the idea is to remove the capabilities object altogether
and just send
{foo: 1}
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: c6cf7b9e2bc2d01bb20f9fb995ee29a892644d15
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : efafe8e0f0ad4fe9cb853baade31be58e9a50e52
The marionette.defaultPrefs.port preference
has been renamed to marionette.port as part of
https://bugzilla.mozilla.org/show_bug.cgi?id=1344748.
We keep the fallback preference around until Firefox 54 becomes stable
for backwards compatibility reasons.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 8f19dc4dac63da4153584a2a6974c26be9453ecc
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : c47f609e17ce7310c48f801bd85c9291dfb4b88a
When a user provides a profile that wnats to override browser.warnOnQuit,
browser.tabs.warnOnClose, or browser.showQuitWarning, we should
allow users to do stupid things. We should not prevent the profile's
preferences from being applied.
dom.ipc.cpows.forbid-unsafe-from-browser is being removed because all
targetted Firefoxen are not using any unsafe CPOWs in Marionette code.
marionette.defaultPrefs.enabled is superfluous for as long as the
--marionette flag is being passed to the Firefox binary.
Remaining relevant prefs from prefs::REQUIRED have been merged into
prefs::DEFAULT.
This is a follow-up to the discussion around
https://github.com/mozilla/geckodriver/pull/423.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 2e0054b90ecf1acbe8b442af54441e3cc746933f
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 0d5230475735d09d5e7220b8d8b7b91308074900
Merges prefs::Default prefs into custom profile unless the custom
profile explicitly sets that preference.
Sets the marionette.defaultPrefs.port preference last so users cannot
accidentally overwrite its value by providing it in capabilities.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 95ef3b49bc3fbeac231be22c19f06b7d14f6959b
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : 2785f3dffdc222b9c8002e7f0e81f438b249683e
This change makes the tests compile and makes use of the public typedef
webdriver::capabilities::Capabilities, which reduces the need for type
declarations of BTreeMap.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 68ca3639937721a5d8ab4c13b6de57fce669ecc9
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 5239f9bfc26c808a5f11f5a8fe741213b73fa443
In the interests of avoiding the
Aborting on channel error.: file c:/builds/moz2_slave/m-rel-w32-00000000000000000000/build/src/ipc/glue/MessageChannel.cpp, line 2056
error we have seen frequently reported on geckodriver, this change forces
the Flash plugin to be disabled by default. The Firefox homepage triggers
the plugin container to start, which is causing problems when quitting
Firefox through geckodriver.
Since Flash cannot be interacted with through WebDriver and it is soon
going away from the web, I don't think this is a big sacrifice.
Fixes: https://github.com/mozilla/geckodriver/issues/225
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 6ec30ca4a37ca04b0bfab6faa87fbdb926710a8d
committer: GitHub <noreply@github.com>
--HG--
extra : rebase_source : e104ed9d48d03a3e33da0226f3472eb3ee307e16
Support the alwaysMatch/firstMatch new session command. Move the
capabilities handling into geckodriver as far as possible so that
marionette itself should not be rejecting sessions (as this is
expensive and can only happen after gecko starts). Use mozversion to
provide (currently somewhat hacky) version number matching for the
browserVersion capability.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 6f1e3c192463342a0a49f5f3f0af914ad0e1ae7a
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : eec91abc5dcab0f35cd758ad1900a5d15988bd0d
This is a trivial copy-and-paste error from a few lines above.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 1144fee2461186e9f270e4f4135f166df2c58da1
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : 807c62892e6dea61b6365c220a2ddef45f2a3bc3
Asynchronous logging through slog has the downside that its buffer does
not flush on flushing the system's stderr.
Using synchronous logging should not have any notable performance
downsides for geckodriver.
Fixes#401.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: fdc2804ef05e450cd93d0939809c9e2b46645547
committer: David Burns <david.burns@theautomatedtester.co.uk>
--HG--
extra : rebase_source : d810813995fb0b8bf9842b4bfc7e0ed74cc023df
Windows XP support will be dropped with Firefox 53 and as
https://github.com/mozilla/geckodriver/issues/392 made clear, the
ktmw32.dll (Kernel Transaction Management system) which geckodriver
relies on is only available in Windows Vista onwards.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 61284e0df7b7309530118cd09d3a57fa26c04d1a
--HG--
extra : rebase_source : b9077b408b1384a5b0fd2c5428883ea8357d1d03
* Add Contributing documentation
When Pull requests and issues are opened, Github automatically links to
the contributing file so that people are aware of it. This hopefully
means that contributors will follow some of the rules.
* fixup! Add Contributing documentation
* fixup! fixup! Add Contributing documentation
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: bbdca678e17671ad3d5a49b7b3f869f536731e22
committer: GitHub <noreply@github.com>
--HG--
extra : rebase_source : e0ca0c9001286e4f27259023eee64d904caca06e
clap 2.14 introduced aliased arguments, which means we can remove the
workaround using a hidden argument.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 5e93a93224ee00a6624f8c3cb32bb17546da9b56
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 028e314aba6e67db1343467b0b348c356412718f
Template asking for OS, browser version and expected results. Also
added a warning that if information is missing that we will close
the issue until it has been added.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: c447ca025fd635df97d3ef1bdef61dd70b546360
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : d6689fa33c9bc108361ec8909c03e25998073500
WebDriver doesn't distinguish between the geckodriver and Marionette
implementations when making a call to New Session. When failing to
start a session, we should return session not created errors.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: a9e496a15d79a21e054bbc8d861bf2a8d608051f
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 120fdb7c8306a213c051f3df6b327f49154d9153
This change removes the newline character in error messages related to
setting preferences and starting the browser process as these tend to
make error messages in language bindings look more interesting than they
should be.
It also avoids calling `Error::description()` as this is implied through
the display trait implementation of `Error`.
For `PathBuf` we must apparently call `display()` to invoke its
`fmt::Display`` trait implementation.
The remaining code in `start_browser` is linted with rustfmt.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 7d49dbb8c85ecadb669b2fbeb72b2ff366849085
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : 3b177cae58c67837fc5196311167c398af273452
This is not yet supported in marionette so return unsupported operation for now.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 8172389770710a956ab8e66b4009686d7cfda221
committer: Andreas Tolfsen <ato@mozilla.com>
--HG--
extra : rebase_source : a474e27c39dffb30a8d4ef851d740773b67413ee
This is already available in Marionette. This allows us to call Marionette
from Selenium to take screenshots of elements.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: cb67c0aa66e3d50223de8e79eb4e1333bfb09401
committer: jgraham <james@hoppipolla.co.uk>
--HG--
extra : rebase_source : b73deed5b7ea1b4de94a402453b5427f96510204
This simplifies the what we recieve from the local end and then how
we should process it.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 1da47fc9b050f8243e28f55bdd2200b43fee8f32
--HG--
extra : rebase_source : 20db54e31642dd703c4a1058745059ecd0d063ef
By setting up our own container we can share the build.sh file (almost)
fully between containerised- and bare metal builds. The apt dependencies
needed are listed in i686-trusty/Dockerfile.
We build i686-pc-windows-gnu in a custom container because the Ubuntu
trusty VM provided by Travis does not have a sufficiently modern gcc
compiler.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: b2274b8054ac9b7eb829267a61fa4e6b138aabc2
--HG--
extra : rebase_source : a1d510b4f0a6e4e6d859b50a97617f1595d23903
gcc-mingw-w64 is implied by gcc-mingw-w64-x86-64.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 5b29f6532c2f36b6badda4680b26212491f947f3
--HG--
extra : rebase_source : 2c6d5df06cc5ef271d1943d65f13abde0f556160
As of 2016-09-21 Travis started serving Ubuntu precise containers when
trusty was requested. This caused the x86_64-pc-windows-gnu build to
break, but we only noticed when building on custom Travis branches
because the geckodriver master branch used a cached Rust installation.
This change reverts the 64-bit Windows builds to run outside of the
container infrastructure, in which we can guarantee we are served Ubuntu
trusty with a sufficiently modern gcc to cross-compile.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: c7b88abfec083f2ec434d887cc35ee9a39b8b439
--HG--
extra : rebase_source : 6eaa43cc16b5d5067b7ec981b3da12edf61f159c
We were using Rust beta as some features we were relying on were only
available there, most notably cross-compilation. Now that beta has been
rolled into stable, we are able to rely on the stable channel for most
of our targets.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 3b80417e064e8725d5509e0d259dfec37b29f2ce
--HG--
extra : rebase_source : 45220dbe82940a9cd0737e3d83c496579c580532
This change makes it possible to set the TOOLCHAIN output variable which
will override the default toolchain defined in build.sh. If TOOLCHAIN
is not defined it picks the default, which is currently `beta`.
The change should not affect the current build configuration.
Source-Repo: https://github.com/mozilla/geckodriver
Source-Revision: 6687441892f1dd9ef85f91e5da112cbc3e0c9281
--HG--
extra : rebase_source : 80695c0340b8fee1b335ee739bad851af5f7c1b5