Commit Graph

291 Commits

Author SHA1 Message Date
Andrey Lushnikov
d662eba86a
browser(firefox): roll Firefox to beta @ Apr 1, 2021 (#6041)
Merging conflicts:
038f367c30

After this roll, we no longer require our custom `onFrameLocationChanged` instrumentation
since gecko now fixed the `NOTIFY_LOCATION` behavior so that it works
for same-document navigations inside iframes.
2021-04-01 16:49:01 -07:00
Dmitry Gozman
66541552d0
browser(firefox): make dpr emulation optional, take screenshots at 1x (#5555)
- deviceScaleFactor is now optional, so we can use host machine's dpr.
- Screenshots are not scaled up by dpr.
- Removed unused methods.
2021-04-01 14:51:02 -07:00
Joel Einbinder
d71c147af7
browser(firefox): fix some missing mac edit commands (#6034) 2021-04-01 11:27:44 -07:00
Andrey Lushnikov
cb15603ccb
browser(firefox): do not report console messages twice. (#6031)
References #6001
2021-04-01 09:29:33 -07:00
Ross Wollman
6d6f802e5a
fix: favicon with color pref crashes firefox (#5977) (#5979) 2021-03-29 14:53:18 -07:00
Andrey Lushnikov
1fab84577a
browser(firefox): roll Firefox to beta @ Mar 16, 2021 (#5852) 2021-03-17 00:46:02 -07:00
Andrey Lushnikov
8dc740570a
devops: refactor check_cdn.sh script (#5835)
Introduce `EXPECTED_BUILDS` list in each application folder and use
these lists when determining if all builds are ready.
2021-03-16 01:14:45 -07:00
Andrey Lushnikov
8565e72e63
chore: consolidate browser cheatsheets (#5832) 2021-03-15 17:54:25 -07:00
Joel Einbinder
e56f56c11e
browser(firefox): pass null for the data transfer (#5723) 2021-03-04 17:20:45 -08:00
Andrey Lushnikov
28d9f244df
browser(firefox): roll Firefox to Beta @ Feb 28, 2021 (#5659)
Diff merges:
498eaa7a87

Additional changes:
8404fbe1ad
2021-03-02 18:52:19 -08:00
Pavel Feldman
8906ba332c
chore: spell overridden (#5605) 2021-02-24 15:11:34 -08:00
Joel Einbinder
e677e7ba4e
browser(firefox): pass drag action test (#5560) 2021-02-23 15:21:29 -08:00
Andrey Lushnikov
496aeeba79
browser(firefox): follow-up with crash reporter disabling (#5534)
Since we now disable crash reporter compilation and don't ship it
with Firefox anymore, we should not attempt to disable it
with preferences.
2021-02-19 21:30:50 -08:00
Andrey Lushnikov
bba9fabfe3
browser(firefox): roll Firefox to beta @ Feb 19, 2021 (#5521) 2021-02-19 13:11:05 -08:00
Andrey Lushnikov
18ce95632f
devops: fix firefox build (#5516) 2021-02-19 10:52:12 -08:00
Andrey Lushnikov
b2d9af5e15
browser(firefox): properly initialize debugging pipe on windows (#5514)
browser(firefox): properly initialize debugging pipe on windows

Firefox on Windows has 2 launch modes:
- default: a special "launcher process" is used to start browser as a
  sub-process
- non-default: browser process starts right away

Firefox has a logic to detect how successful was the use of the
launcher process to do self-recovery when things go wrong. Namely:
- when attempting to use launcher process, firefox records a timestamp
  of the attempt beginning
- once the launcher process successfully launches browser sub-process,
  firefox records another timestamp of the completion

On a new launch, firefox checks what timestamps are present. If there's
a timestamp that signifies start of launcher process, but no successful
timestamp, it decides that last "launcher process" use was not
successful and falls back to launching browser right away.

When launching 2 firefox processes right away, the first process
uses attempts to use launcher process and records the first timestamp.

At the same time, the second instance sees the first timestamp and
doesn't see the second timestamp, and falls back to launching browser
right away. Our debugging pipe code, however, does not support
non-launcher-process code path.

This patch adds support for remote debugging pipe in case of
non-launcher-process startup.

Drive-by:
- disable crashreporter altogether
- remove stray dcheck that breaks firefox debug compilation
- disable compilation of firefox update agent
- do not use WIN32_DISTRIB flag unless doing full builds since
  it kills incremental compilation


References #4660
2021-02-19 10:32:47 -08:00
Dmitry Gozman
822f7cb1eb
browser(firefox): respect Set-Cookie header from fulfilled request (#5456) 2021-02-15 22:49:57 -08:00
Andrey Lushnikov
a42c46b986
browser(firefox): roll Firefox to beta @ Feb 11, 2021 (#5421) 2021-02-11 14:15:26 -08:00
Andrey Lushnikov
bbfbb1b2f7
browser(firefox): fix build on Windows (#5275) 2021-02-03 09:50:35 -08:00
Andrey Lushnikov
8d4dc600f8 devops(firefox): properly cleanup old node.js artifact 2021-02-02 23:59:33 -07:00
Andrey Lushnikov
986bddaecc devops(firefox): fix arm build dependency management 2021-02-02 23:03:54 -07:00
Andrey Lushnikov
11f570be61
devops(firefox): fix Firefox on Apple Silicon (#5272)
As per guide at https://docs.google.com/document/d/1N5yfEVEISofMmjAxfj3xXONGwyQYBSilsfXqux_M6TM/edit
2021-02-02 21:53:23 -08:00
Andrey Lushnikov
b392c57a53
devops: attempt to install Firefox build deps on buildbots (#5271) 2021-02-02 21:35:12 -08:00
Andrey Lushnikov
e53c9c35db
browser(firefox): roll Firefox to beta @ Feb, 1 2021 (#5248) 2021-02-01 15:50:11 -08:00
Andrey Lushnikov
2f29c6b066
browser(firefox): roll Firefox to beta Jan, 18 2021 (#5106) 2021-01-22 12:41:12 +03:00
Andrey Lushnikov
7665a6ec7f
devops: support apple silicon builds of Firefox (#4979) 2021-01-12 03:57:59 +03:00
Andrey Lushnikov
6b94f5f1b9
browser(firefox): roll Firefox to beta @ Jan 5, 2021 (#4904) 2021-01-06 02:49:28 +03:00
Yury Semikhatsky
b3e7838582
browser(firefox): clear AuthCache when setting context proxy (#4793) 2020-12-21 15:54:15 -08:00
Andrey Lushnikov
761bd78879
browser(firefox): fix build on MacOS (#4758) 2020-12-17 21:02:01 -08:00
Andrey Lushnikov
0af34a4f0b
devops: firefox build now requires newer MacOS SDK to build against (#4732) 2020-12-15 16:27:34 -08:00
Andrey Lushnikov
5f6ccee742
browser(firefox): roll Firefox to beta Dec 14, 2020 (#4716)
Merge conflicts: 57ba98733f
2020-12-14 15:28:48 -08:00
Andrey Lushnikov
17f1b20f39
devops: trigger all builds with new windows buildbot (#4638) 2020-12-08 11:03:11 -08:00
Dmitry Gozman
e1e000d264
browser(firefox): do not spam stderr with screencast logs (#4630) 2020-12-08 09:30:34 -08:00
Andrey Lushnikov
e75ebc1752
browser(firefox): roll Firefox to Dec, 7 2020 (#4622) 2020-12-07 10:27:50 -08:00
Andrey Lushnikov
6fe7d9c19f
devops: support FF_CHECKOUT_PATH to customize browser checkout (#4607)
**Preamble**

1. We're trying to setup a windows-based github self-hosted runner in the
  playwright-internal repo.
1. Commands on Windows are mandated to have total arguments length
  less then 32767 characters.
1. On windows, github self-hosted runner framework puts repository
checkout at `c:\w\playwright-internal\playwright-internal`
1. Our scripts create a checkout at
`c:\w\playwright-internal\playwright-internal\browser_patches\firefox\checkout`
1. One of the scripts in Firefox buildsystem tries to execute a command,
passing lots of absolute paths to various webidl's
1. The command fails due to restriction in (2)

**Problem**

Firefox build fails since checkout is deeply nested and hits max arg
size on windows.

**Solution**

This patch introduces a new variable `FF_CHECKOUT_PATH` that is
respected by all browser-related scripts. This way we'll be able
to checkout firefox to `c:\firefox` and avoid hitting long arguments
limit.
2020-12-04 18:46:20 -08:00
Andrey Lushnikov
8551fff43b
browser(firefox): disable cross-process navigation (#4594)
This disable cross-process navigation until we properly support it.

References #4297
2020-12-04 10:13:50 -08:00
Andrey Lushnikov
31e22dee50
devops(win): fix paths to vswhere.exe in 64-bit shells (#4577)
The `$PROGRAMFILES` variable is defined per the bitness of the
application: 32-bit shells get `C:\Program Files (x86)`, whereas
64-bit shells get `C:\Program Files`.

Visual Studio, however, has only 32-bit build and is always located in
the `C:\Program Files (x86)` folder.

This patch fixes `//browser_patches/firefox/build.sh` on 64-bit windows
shell.
2020-12-03 08:09:05 -08:00
Dmitry Gozman
e8419f85b6
browser(firefox): support alertCheck and confirmCheck dialogs (#4553)
These are shown with "prevent this page from showing more dialogs" checkbox.
2020-11-30 20:05:15 -08:00
Andrey Lushnikov
730f6f87a2
browser(firefox): roll Firefox to beta Nov 30, 2020 (#4542) 2020-11-30 10:17:03 -08:00
Joel Einbinder
d06afadb8b
browser(firefox): send dragend after drop and survive navigations (#4506) 2020-11-25 03:47:34 -08:00
Andrey Lushnikov
17bec4f6f8
browser(firefox): rebaseline atop of Nov, 23 2020 (#4516) 2020-11-23 16:21:07 -08:00
Dmitry Gozman
14a96ca21f
browser(firefox): ensure detachedFromTarget is always sent (#4505)
browser(firefox): ensure detachedFromTarget is always sent

LinkedBrowser can throw when removing listeners in PageTarget.dispose,
and that prevents BrowserHandler from sending Browser.detachedFromTarget.

Using a try-catch seems good enough.
2020-11-20 10:48:06 -08:00
Andrey Lushnikov
6bc45d9247
browser(firefox): browser.version() to return full version (#4491)
Currently, browser.version() returns `83.0`, whereas launching firefox
with `--version` flag returns `83.0b3`. This patch alings protocol's
`Browser.version()` with flag output.
2020-11-19 08:24:17 -08:00
Andrey Lushnikov
cb1f2a38f3
browser(firefox): roll Firefox to Nov 17,2020 (#4477)
Changes accomodate touchEventsOverride that has moved to the
browser side.
2020-11-18 08:19:09 -08:00
Yury Semikhatsky
39fcf1bc54
browser(firefox): do not leak reponses (#4453) 2020-11-16 13:16:20 -08:00
Joel Einbinder
e91140e88c
browser(firefox): force a layout before dispatching a tap (#4428) 2020-11-16 11:07:06 -08:00
Yury Semikhatsky
0167f8c182
browser(firefox): allow to override request url (#4436) 2020-11-13 14:56:27 -08:00
Dmitry Gozman
2e65f78874
browser(firefox): close browser when pipe disconnects (#4437) 2020-11-13 14:51:40 -08:00
Yury Semikhatsky
8488c296f9
browser(firefox): allow to override content-type along with post data (#4416) 2020-11-12 10:41:49 -08:00
Dmitry Gozman
ae738c1fac
browser(firefox): ignore WebProgress events coming from workers (#4380)
Somehow, we get WebProgress state changes when worker is loaded
with a blob url. This messes up frame navigation detection.

Luckily, it's easy to filter out non-document state changes.
2020-11-09 09:29:34 -08:00