Commit Graph

1219 Commits

Author SHA1 Message Date
Pavel Feldman
ee835fba6c
fix(webkit): fix screencast compilation on win (#6412) 2021-05-04 18:19:17 -07:00
Andrey Lushnikov
77c1020193
devops: re-use firefox checkout for firefox-stable (#6410)
Every patch to Firefox should also go to firefox-stable. This patch
starts re-using Firefox-beta checkout for firefox-stable, making
possible to easily rebaseline work atop of firefox-stable.

With this patch, working on a patch in Firefox is a 2-step
process:
1. work on a patch against Firefox-Beta
2. rebaseline your work atop of Firefox-Stable

Working on Firefox-Beta is as usual:
- setup an up-to-date firefox checkout:
  ```sh
  $ ./browser_patches/prepare_checkout.sh firefox
  ```
- create a new branch for your firefox work off `playwright-build`:
  ```sh
  $ cd ./browser_patches/firefox/checkout
  $ git checkout -b my-feature
  ```
- once work is done, export your branch:
  ```sh
  $ ./browser_patches/export.sh firefox
  ```

Rebaselining your work for Firefox-Stable takes advantage of a single
checkout:
- prepare a firefox-stable checkout:
  ```sh
  $ ./browser_patches/prepare_checkout.sh ff-stable
  ```
- rebaseline your feature branch atop of stable:
  ```sh
  $ cd ./browser_patches/firefox/checkout
  $ git checkout my-feature
  $ git rebase -i playwright-build
  ```
- make sure firefox-stable compiles:
  ```sh
  $ ./browser_patches/firefox-stable/build.sh
  ```
- export firefox-stable:
  ```sh
  $ ./browser_patches/export.sh ff-stable
  ```
2021-05-04 17:46:24 -07:00
Dmitry Gozman
5c5196104e
browser(firefox-stable): cherry pick recent changes from browser_patches/firefox (#6409) 2021-05-04 17:01:48 -07:00
Pavel Feldman
fc9454eb76
browser(webkit): implement screencast (#6404) 2021-05-04 12:57:03 -07:00
Andrey Lushnikov
5326f39021
browser(chromium): build 878941 that reverts shader changes (#6407) 2021-05-04 11:51:45 -07:00
Joel Einbinder
1a58281394
browser(firefox): don't record video outside the viewport (#6361) 2021-05-04 05:33:32 -07:00
Andrey Lushnikov
4e0e13cf05
browser(firefox-beta): roll Firefox to beta 89.0b8 - May 2, 2021 (#6397) 2021-05-04 00:45:07 -07:00
Andrey Lushnikov
fd4253991f
devops: fix swiftshader on Chromium Windows (#6391)
References #6390
2021-05-03 11:25:01 -07:00
Andrey Lushnikov
6c04b82256
browser(firefox-beta): roll @ beta Apr 29, 2021 - v89.0b6 (#6368) 2021-04-29 16:37:45 -07:00
Yury Semikhatsky
0abcaf02c8
browser(webkit): roll to safari-612.1.12-branch (#6367) 2021-04-29 15:46:22 -07:00
Yury Semikhatsky
b0fae0f831
browser(firefox): merge FrameData into Frame (#6365) 2021-04-29 15:09:10 -07:00
Yury Semikhatsky
3b1bfdff48
devops(chromium): build a new Chromium 876873 (#6349) 2021-04-28 10:19:07 -07:00
Yury Semikhatsky
0039b313b8
browser(webkit): support downloads larger than 16Kb on Windows (#6343) 2021-04-27 16:21:23 -07:00
Yury Semikhatsky
83480850d3
browser(webkit): preserve color scheme override after navigation (#6333) 2021-04-26 16:23:07 -07:00
Andrey Lushnikov
f4b8c3a848
browser(firefox): disable proton UI for now (#6327)
The new Proton UI breaks certain screencast tests. Disable
this for now.
2021-04-26 10:59:12 -07:00
Dmitry Gozman
10c76ff56f
browser(firefox): fix race between idleTasksFinishedPromise and window closure (#6308) 2021-04-23 16:05:37 -07:00
Andrey Lushnikov
83758fa48c
devops: add swiftshader DLL to chromium archive (#6305) 2021-04-23 14:36:45 -07:00
Andrey Lushnikov
531bf4dc19
browser(chromium): roll Chromium to new Dev (#6283) 2021-04-22 17:38:53 -07:00
Joel Einbinder
f9478b124f
browser(webkit): fix compilation for drag drop and duplicated macro (#6278) 2021-04-22 17:05:17 -07:00
Yury Semikhatsky
2755d5e37d
browser(webkit): fix timezone override on Windows (#6277) 2021-04-22 16:10:12 -07:00
Andrey Lushnikov
111e55992e
devops: roll Chromium to r871980 (#6275)
NOTE: this is a non-dev revision. We roll to it to make sure
that swiftshader issues are fixed now.

See https://crbug.com/1200964
2021-04-22 15:03:48 -07:00
Andrey Lushnikov
59d1d2df2f
devops: add swiftshader file to Chromium builds (#6274)
See https://chromium-review.googlesource.com/c/chromium/src/+/2845811
2021-04-22 14:55:53 -07:00
Yury Semikhatsky
34e03fc77d
browser(webkit): roll to 04-21 (#6257) 2021-04-21 13:00:36 -07:00
Andrey Lushnikov
faf39a23ac
devops: fix firefox-stable roll build (#6255) 2021-04-20 16:55:35 -07:00
Andrey Lushnikov
4dd8a1c8f1
browser(firefox-stable): roll to Firefox 88.0 (#6249) 2021-04-20 13:46:46 -07:00
Andrey Lushnikov
09c35adbd5
browser(firefox): roll firefox-beta to Apr 20, 2021 - version 89.0b2 (#6247) 2021-04-20 13:27:57 -07:00
Joel Einbinder
ce0098d9eb
devops(chromium): build a new Chromium Dev 870763 (#6203) 2021-04-15 11:58:09 -07:00
Yury Semikhatsky
96cee43861
browser(webkit): roll to safari-612.1.11-branch (#6185) 2021-04-12 12:38:11 -07:00
Andrey Lushnikov
82e8c7226d
devops: fix firefox-stable build script (#6175)
The old mach used `--no-interactive` flag at a different place.
2021-04-09 22:36:24 -07:00
Andrey Lushnikov
17c6406e6c
devops: add firefox-stable channel browser (#6173)
This adds a firefox-stable application to build on our bots.
This is basically a rebaselined version of 66541552d0

The firefox base revision is bb9bf7e886
Which is taken from `about://buildconfig` of a stable Firefox version
on Mac as of Apr 9, 2021.

References #5993
2021-04-09 22:13:19 -07:00
Ross Wollman
957abc49e9
devops(chromium): build a new Chromium Dev 869727 (#6149) 2021-04-09 11:54:14 -07:00
Yury Semikhatsky
5fe3ee13f0
browser(webkit): fix assertion unsafe to ref/deref from different threads (#6163) 2021-04-09 11:36:01 -07:00
Yury Semikhatsky
bd0043b8cb
browser(webkit): keep browser process running when all windows closed (#6131) 2021-04-07 19:13:20 -07:00
Yury Semikhatsky
d6c415749a
browser(webkit): fix curl compilation (#6115) 2021-04-06 22:24:14 -07:00
Andrey Lushnikov
4bec81b111
browser(firefox): roll Firefox to beta @ Apr 6, 2021 (#6111) 2021-04-06 17:25:18 -07:00
Yury Semikhatsky
fb7c703157
browser(webkit): roll to 06-04-21 (#6106) 2021-04-06 14:56:03 -07:00
Andrey Lushnikov
2c6c816a41
devops: add firefox-ubuntu-20.04 as expected build (#6063) 2021-04-02 21:37:12 -07:00
Andrey Lushnikov
5a1974ccad
devops(chromium): build a new Chromium Dev 867878 (#6061) 2021-04-02 16:08:17 -07:00
Andrey Lushnikov
46949cd2df
devops: start doing separate builds for Firefox @ Ubuntu 20.04 (#6058)
This will fix webgl issues with headful firefox on Ubuntu 20.04

See
https://github.com/microsoft/playwright/pull/5951#issuecomment-8125735670
2021-04-02 14:16:25 -07:00
Joel Einbinder
2357f0b562
browser(firefox): fix bootstrap on bots with --no-interactive (#6047)
The command --no-interactive moved and broke our build. See https://bugzilla.mozilla.org/show_bug.cgi?id=1695272
2021-04-02 07:52:42 -07:00
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
Dmitry Gozman
9b2e4ebf73
browser(webkit): make dpr emulation optional, take screenshots at 1x (#5557)
- deviceScaleFactor is now optional, so we can use host machine's dpr.
- Screenshots are not scaled up by dpr.
2021-03-31 21:37:54 -07:00
Pavel Feldman
2f5bf04f51 browser(webkit): fix double deref 2021-03-31 00:12:11 -07:00
Pavel Feldman
3455c3265f browser(webkit): restore occlusion detection disabled 2021-03-30 23:52:11 -07:00
Yury Semikhatsky
93d532b5e1
browser(webkit): fix windows compilation (#6011) 2021-03-30 14:42:23 -07:00
Yury Semikhatsky
97955247a2
browser(webkit): roll to safari-612.1.9-branch (#6002) 2021-03-30 11:29:37 -07:00
Yury Semikhatsky
94252231f0
fix(devops): include libANGLE-shared.dylib into mac archive (#6004) 2021-03-30 11:29:03 -07:00
Yury Semikhatsky
0d3d27d3ee
browser(webkit): trigger new build after updating cleanup script (#5997) 2021-03-29 23:55:07 -07:00
Yury Semikhatsky
9473f39b0b
fix(devops): cleanup now removes entire webkit build dir on mac (#5996) 2021-03-29 23:48:34 -07:00
Ross Wollman
6d6f802e5a
fix: favicon with color pref crashes firefox (#5977) (#5979) 2021-03-29 14:53:18 -07:00
Pavel Feldman
4cf0568ad7
browser(webkit): support safe area insets (#5987) 2021-03-29 11:38:26 -07:00
Yury Semikhatsky
2cce8850b7
browser(webkit): roll to safari-612.1.8-branch (#5965) 2021-03-26 11:54:55 -07:00
Pavel Feldman
6c1d3f65b5
browser(webkit): refresh embedder UI on macOS (#5957) 2021-03-26 09:44:31 -07:00
Yury Semikhatsky
5872d0407a
browser(chromium): build current dev chromium (865012) (#5950) 2021-03-25 09:31:41 -07:00
Yury Semikhatsky
7d7e5ede84
browser(webkit): roll back to safari-612.1.7-branch first commit (#5920) 2021-03-23 13:45:42 -07:00
Andrey Lushnikov
172de4082a
browser(chromium): build current dev chromium (#5911) 2021-03-22 17:38:28 -07:00
Yury Semikhatsky
b74af2269f
browser(webkit): fix mac compilation after latest roll (#5909) 2021-03-22 14:34:58 -07:00
Yury Semikhatsky
6dd4d756dc
browser(webkit): roll to 03-22-21 (#5903) 2021-03-22 11:22:56 -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
e64f66685a
devops: fork webkit into a separate browser (#5834)
Official WebKit no longer supports Mac 10.14. However, since
this system is still very much in use, we want to be able to
keep it running for a while.

This patch adds a new browser that we would compile and maintain
specifically for Mac 10.14: `deprecated-webkit-mac-10.14`. This
browser is a clone of Webkit r1443 that is the last known revision
to compile on Mac 10.14.

As we move on, we're free to modify this browser however we want,
backporting important patches.

References #5833
2021-03-16 01:08:21 -07:00
Andrey Lushnikov
8565e72e63
chore: consolidate browser cheatsheets (#5832) 2021-03-15 17:54:25 -07:00
Yury Semikhatsky
5835c7e537
browser(webkit): fix linux builds, install liblcms2-dev (#5831) 2021-03-15 17:01:51 -07:00
Yury Semikhatsky
226bee01f0
browser(webkit): roll to 03-15-21 (#5828) 2021-03-15 15:33:24 -07:00
Yury Semikhatsky
bc3a0fb9bd
browser(webkit): roll to 03-08-21 (#5754) 2021-03-08 11:04:18 -08:00
Joel Einbinder
e56f56c11e
browser(firefox): pass null for the data transfer (#5723) 2021-03-04 17:20:45 -08:00
Dmitry Gozman
5903e771da
browser(chromium): roll to 857950 (#5709) 2021-03-03 13:19:57 -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
Dmitry Gozman
f2a3d21a75
browser(chromium): roll to 858453 (#5670) 2021-03-01 16:33:19 -08:00
Yury Semikhatsky
01abeac43e
browser(webkit): roll to 03/2 (#5656) 2021-03-01 09:59:55 -08:00
Pavel Feldman
8906ba332c
chore: spell overridden (#5605) 2021-02-24 15:11:34 -08:00
Yury Semikhatsky
11d3eb6bfe
browser(webkit): fix mac compilation take 2 (#5567) 2021-02-23 16:03:33 -08:00
Joel Einbinder
e677e7ba4e
browser(firefox): pass drag action test (#5560) 2021-02-23 15:21:29 -08:00
Yury Semikhatsky
df4b98464f
browser(webkit): fix mac compilation (#5564) 2021-02-23 14:49:28 -08:00
Yury Semikhatsky
4ae4c3cb01
browser(webkit): fix response.requestHeaders instrumentation in libsoup after latest roll (#5549) 2021-02-22 14:26:08 -08:00
Yury Semikhatsky
8316f41030
browser(webkit): roll to 02-22 (#5547) 2021-02-22 12:47:55 -08:00
Andrey Lushnikov
a891becfba
chore: remove //browser_patches/buildbots folder (#5535)
Since we migrated all our builders/testers to the GitHub self-hosted
runners, we no longer need scripts to operate our own bots.
2021-02-22 09:09:19 -08:00
Andrey Lushnikov
eb3efb3089
fix: do not ship broken symlinks in webkit for mac (#5512)
Since we don't ship things like WebKitPluginAgent, we can
safely remove all the symlinks that point to the missing targets.

Fixes #5472
2021-02-19 21:31:33 -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
f10d0a8a58
devops: do not create non-removable folders on windows (#5533)
This fixes a bug where the script was creating a folder with a new line
symbol in its name. As a result, Windows was failing to remove  this
folder, and Chromium Windows BuildBot was failing to even initialize
checkout.
2021-02-19 20:18:23 -08:00
Dmitry Gozman
d6ac3e6883
browser(webkit): honor Set-Cookie header from intercepted requests (mac) (#5529) 2021-02-19 16:28:54 -08:00
Andrey Lushnikov
e2a935b3d6
devops: fix nits in browser compilation infrastructure (#5526)
This patch:
- makes sure that failed runs actually show as failed in GHA
- attempts to use MINGW's `du` and `awk` to get upload size
2021-02-19 14:43:27 -08:00
Andrey Lushnikov
c57f1fc390
devops(chromium): missing depot tools in prepare_checkout.sh script (#5525)
Make sure `prepare_checkout.sh` has depot_tools in its PATH.

Drive-by: enable goma compiler proxy auto-restart.
2021-02-19 14:23:09 -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
7ed1d88567
browser(chromium): build Chromium Dev revision (#5522) 2021-02-19 13:10:50 -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
Joel Einbinder
846fd71121
browser(webkit): fix scrolling in mobile viewports (#5497) 2021-02-18 13:29:17 -08:00
Andrey Lushnikov
8c18b90038
devops: refactor chromium automation scripts (#5486)
Split preparing checkout, archiving and compiling into separate
scripts similarly how we do it with other browsers.
2021-02-17 14:43:19 -08:00
Andrey Lushnikov
4f1d84d6b9
browser(webkit): respect download attribute (#5474)
References #5396
2021-02-16 10:22:19 -08:00
Andrey Lushnikov
027f2ba9e1 devops: enable goma.sh debugging info 2021-02-16 09:34:26 -07:00
Dmitry Gozman
822f7cb1eb
browser(firefox): respect Set-Cookie header from fulfilled request (#5456) 2021-02-15 22:49:57 -08:00
Andrey Lushnikov
2a40d8ec8e
devops: fix goma startup and shutdown (#5447)
Turns out goma scripts have to be called from goma directory.
2021-02-12 11:01:49 -08:00
Andrey Lushnikov
8500592326
devops: fix post-checkout cleanup on windows (#5438)
Turns out empty trailing space in array in bash results in a file
in windows that it fails to remove while during cleanup.
2021-02-12 01:48:11 -08:00
Andrey Lushnikov
539942c803 devops: empty commit to test internal tests 2021-02-12 02:21:39 -07:00
Andrey Lushnikov
2ac93f0a8b devops: another attempt to trigger internal tests (empty commit) 2021-02-12 02:07:22 -07:00
Andrey Lushnikov
17b792bcf5 devops: attempt to trigger internal tests (empty commit) 2021-02-12 02:05:45 -07:00
Andrey Lushnikov
f2a31ad8c5
browser(chromium): build Chromium Dev revision as of Feb 12 (#5435) 2021-02-12 00:32: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
44ff8b518b
devops: fix win archiving logic (#5420)
One can't use "for-of" iteration over bash arrays if values
contain strings :(
2021-02-11 08:18:05 -08:00
Andrey Lushnikov
206432cefd devops: fix goma startup on windows 2021-02-09 11:00:53 -07:00
Andrey Lushnikov
db633c4491 devops: fix args.gn syntax with goma 2021-02-09 10:11:03 -07:00
Andrey Lushnikov
32d62a5c2d
devops: fix goma path on windows (#5381)
Convert unix path to win path when running GOMA on windows.
2021-02-09 09:06:50 -08:00
Andrey Lushnikov
909544907c
devops: rename env variable (#5379)
goma searches for all `GOMA_*` env variables and fails if it doesn't
understand any.

To avoid this, rename our `GOMA_LOGIN_COOKIE` env variable into a
`PLAYWRIGHT_GOMA_LOGIN_COOKIE`.
2021-02-09 08:56:29 -08:00
Andrey Lushnikov
d5a51a25b0
devops: fix chromium-win build (#5378)
- add missing build targets
- do not copy *.pdb files in folders
2021-02-09 08:49:59 -08:00
Andrey Lushnikov
ad557dc6da
devops: introduce goma infrastructure for Chromium builds (#5377)
This patch adds `//browser_patches/chromium/goma.sh` script that
manages goma to build chromium.
2021-02-09 08:33:39 -08:00
Andrey Lushnikov
21c24c2357
devops: do not check for logs existance when building browsers (#5367)
In our *old world*, browser buildbots were polling repo and were
trying to rebuild browsers every 5 minutes. They relied on the presence
of either build or build log on the CDN to avoid continiously
re-building.

In the new world, we trigger builds only when we change the
`BUILD_NUMBER` files, so there's no polling any more.

This patch removes the check for log presence so that those builds that
were failing due to misconfiguration (e.g. Visual Studio license
required updated) could be restarted just from the GitHub UI.
2021-02-08 16:19:37 -08:00
Yury Semikhatsky
551338e953
browser(webkit): roll to 02-08 (#5356) 2021-02-08 11:00:05 -08:00
Andrey Lushnikov
3c657cbae6
browser(chromium): roll to r851527 (#5348) 2021-02-08 01:03:30 -08:00
Andrey Lushnikov
f3a5bba2c4
devops: infra to automate chromium builds (#5347) 2021-02-07 23:54:10 -08:00
Joel Einbinder
d1aad632ee
browser(webkit): fix scrolling a second time on linux (#5173) 2021-02-04 12:12:04 -08:00
Andrey Lushnikov
d851bcead7
devops: bundle ffmpeg license file with our archives (#5301)
References #5278
2021-02-03 19:36:10 -08:00
Yury Semikhatsky
509c3e91b4
browser(webkit): fix ubuntu 18 compilation (#5294) 2021-02-03 15:54:54 -08:00
Andrey Lushnikov
bbfbb1b2f7
browser(firefox): fix build on Windows (#5275) 2021-02-03 09:50:35 -08:00
Yury Semikhatsky
9d72d6b625
browser(webkit): roll to 02-03-21 (#5277) 2021-02-03 09:17:21 -08:00
Andrey Lushnikov
985dd5666f devops(chromium): fix chromium linux build 2021-02-03 07:35:29 -07: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
Yury Semikhatsky
1ffd654d63
browser(webkit): roll to 02-02-21 (#5263) 2021-02-02 15:20:35 -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
7b5363198b
devops: fix chromium build on Intel MacBook (#5242) 2021-02-01 09:30:04 -08:00
Joel Einbinder
fc405ee8b2
browser(webkit): mac drag and drop (#4994) 2021-02-01 03:30:31 -08:00
Andrey Lushnikov
01bddcd171 devops(chromium): account for terminated / interrupted jobs 2021-01-28 13:15:23 +03:00
Andrey Lushnikov
c9fae65400 devops: fix chromium checkout 2021-01-28 12:56:45 +03:00
Andrey Lushnikov
75a0d7a76b
devops(chromium): install depot_tools if missing (#5204) 2021-01-28 01:43:54 -08:00
Andrey Lushnikov
a7eea9ffdc
browser(chromium): roll Chromium to r846621 (#5203)
This roll should test Chromium compilation for Mac x86_64 and Linux.
2021-01-28 01:19:00 -08:00
Andrey Lushnikov
51d90c593b
devops: support Chromium mac compilation (#5202) 2021-01-28 01:14:44 -08:00
Andrey Lushnikov
b323018881
devops: fetch chromium checkout if it has not been before (#5169)
Checkouts should reside outside of gihtub action working directory
so will be reused between builds.
2021-01-28 00:20:19 -08:00
Andrey Lushnikov
90bc837e55
devops: start compiling Chromium on Linux (#5166) 2021-01-27 08:42:35 -08:00
Dmitry Gozman
77b5f05ef7
browser(webkit): fix scrollIntoViewIfNeeded (#5146)
Last change mistakenly used alignCenterIfNotVisible,
while we should use alignCenterIfNeeded to ensure scrolling
into view when partially visible.
2021-01-25 14:02:16 -08:00
Yury Semikhatsky
7d2293c6ed
browser(webkit): roll to 01-25 (#5141) 2021-01-25 11:27:08 -08:00
Yury Semikhatsky
680689d075
browser(webkit): try to fix Ubuntu 18 build (#5119) 2021-01-22 16:10:01 -08:00
Andrey Lushnikov
b88afe5877
devops: fix chromium for arm build (#5117) 2021-01-23 02:23:59 +03:00
Andrey Lushnikov
546454095e
devops: attempt to fix chromium-mac-arm64 build (#5107)
It looks like gn generation should use correct xcode version as well.
2021-01-22 15:47:24 +03:00
Andrey Lushnikov
2f29c6b066
browser(firefox): roll Firefox to beta Jan, 18 2021 (#5106) 2021-01-22 12:41:12 +03:00
Andrey Lushnikov
2096f4248a
devops: fix chromium compilation step (#5102) 2021-01-22 11:31:26 +03:00
Andrey Lushnikov
ff75073cc8
devops: automation to compile chromium for mac arm64 (#5101)
References #5067
2021-01-22 11:27:40 +03:00
Dmitry Gozman
a7d33b2fec
browser(chromium): roll to 845618 (#5094) 2021-01-21 17:23:19 -08:00
Dmitry Gozman
05568f7420
browser(webkit): change scrollIntoView to only scroll if needed (#5079) 2021-01-20 21:06:29 -08:00
Yury Semikhatsky
449bcdcbf9
browser(webkit): roll to 01-19 (#5064) 2021-01-19 23:18:05 -08:00
Dmitry Gozman
d05c091768
chore: roll chromium to 844399 (#5043) 2021-01-17 12:25:39 -08:00
Yury Semikhatsky
fdfea2b765
browser(webkit): add another missing include to fix mac after roll to 01-15 (#5037) 2021-01-15 18:56:24 -08:00
Yury Semikhatsky
940cf35d84
browser(webkit): add missing include on mac after roll to 01-15 (#5033) 2021-01-15 14:43:48 -08:00
Yury Semikhatsky
0ab6a53212
browser(webkit): roll to 01-15 (#5032) 2021-01-15 12:53:05 -08:00
Pavel Feldman
19b58d47b1
chore: bump chromium to r843427 (#5022) 2021-01-14 15:37:09 -08:00
Andrey Lushnikov
7665a6ec7f
devops: support apple silicon builds of Firefox (#4979) 2021-01-12 03:57:59 +03:00
Joel Einbinder
36650b1e19
browser(webkit): fix compile on mac (#4977) 2021-01-11 14:30:06 -08:00
Yury Semikhatsky
56f012043b
browser(webkit): fix mac compilation after roll to 01-11 (#4972) 2021-01-11 11:30:54 -08:00
Yury Semikhatsky
62c52e8628
browser(webkit): roll to 01-11 (#4971) 2021-01-11 11:00:07 -08:00
Yury Semikhatsky
5854cadd0b
browser(webkit): fix typo in macro name (#4970) 2021-01-11 10:03:45 -08:00
Joel Einbinder
cc1a79eceb
browser(webkit): drag and drop on windows (#4889) 2021-01-06 09:46:35 -08:00
Yury Semikhatsky
2908568f9a
browser(webkit): install new dependency required for openxr on linux (#4906) 2021-01-05 16:05:21 -08:00
Andrey Lushnikov
6b94f5f1b9
browser(firefox): roll Firefox to beta @ Jan 5, 2021 (#4904) 2021-01-06 02:49:28 +03:00
Yury Semikhatsky
5df1c6e560
browser(webkit): roll to 01-05 to pick up upstream Win fix (#4894) 2021-01-05 13:08:52 -08:00
Yury Semikhatsky
849a5b3795
browser(webkit): roll to 01-04 (#4882) 2021-01-05 09:13:13 -08:00
Yury Semikhatsky
3ff81fe172
browser(webkit): do run win build again if first attempt failed (#4881) 2021-01-04 13:40:56 -08:00
Yury Semikhatsky
b0b1561c92
browser(webkit): kick off next build (#4878) 2021-01-04 11:01:43 -08:00
Yury Semikhatsky
736ef4e879
browser(webkit): call build.sh twice on Windows (#4875) 2021-01-04 10:49:46 -08:00
Joel Einbinder
75198f044d
browser(chromium): bump to r839741 (#4857)
References #4851
2020-12-30 09:36:14 -08:00
Dmitry Gozman
ded2bc2396
browser(webkit): postpone creation of the first page (#4769)
When we create the first page in the default context in headless mode on mac,
it gets NSWindow that is "not visible". Although we call [window setIsVisible:YES],
later on window.isVisible still returns NO.

We create our offscreen "headless" NSWindow directly from applicationDidFinishLaunching:.
Experiments show that delaying this by 100ms makes everything work. As a symptom,
we get applicationDidUnhide: notification that does not happen when we create the window
immediately.

Perhaps, we create the window too early, and there is some essential initialization
that happens after applicationDidFinishLaunching:. However, if we call
[NSApp activateIgnoringOtherApps:YES] like we do in headful mode, everything works.

The only solution that worked so far is creating the first page after a timeout.
2020-12-29 13:49:39 -08:00
Joel Einbinder
e7ee426202
yury comments (#4639) 2020-12-23 08:04:59 -08:00
Yury Semikhatsky
73edf13ad6
browser(webkit): roll to 12-21 (#4794) 2020-12-21 16:07:45 -08: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
b56dd7deb1
devops: kick ffmpeg build (#4757)
Try building ffmpeg on github self-hosted runner
2020-12-17 18:30:04 -08:00
Yury Semikhatsky
e4658ea9c0
browser(webkit): base64 encode request.postData (#4743) 2020-12-16 14:35:05 -08:00
Yury Semikhatsky
94f5002ae4
browser(webkit): install patchelf (required by generate-bundle) (#4741) 2020-12-16 12:53:28 -08:00
Yury Semikhatsky
b014fa1855
browser(webkit): roll to 12-16 (#4739) 2020-12-16 09:19:27 -08:00
Yury Semikhatsky
50b0b47993
browser(webkit): mac build fix after roll to 12-15 (#4733) 2020-12-15 23:07:34 -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
Yury Semikhatsky
eecb798356
browser(webkit): roll to 12-15 (#4727) 2020-12-15 13:00:49 -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
b486e840ad
devops: revert ability to skip architecture enforcement (#4667) 2020-12-10 08:43:42 -08:00
Andrey Lushnikov
add7ce7ffc devops: fix buildbot mac m1 name 2020-12-08 23:51:22 -06:00
Andrey Lushnikov
c36af734f5
devops: add old-fashioned scripts to run Mac M1 buildbot (#4649)
Even though we're undergoing migration to GitHub self-hosted runners,
they don't currently support running natively under Arm. The resulting build ends up to be
x86_64.

See https://github.com/actions/runner/issues/805
2020-12-08 20:15:37 -08:00
Andrey Lushnikov
93c362de1b
devops: fix architecture enforcement (#4645) 2020-12-08 18:45:45 -08:00
Andrey Lushnikov
6d3278f1eb
devops: add ability to skip architecture enforcement (#4644)
Github self-hosted runners currently run under rosetta:
https://github.com/actions/runner/issues/805

This patch is an attempt to build arm webkit from-inside rosetta
shell on arm hardware.
2020-12-08 18:31:58 -08:00
Andrey Lushnikov
dd9c312b77
devops: start producing WebKit builds for Apple Silicon (#4643)
\m/
2020-12-08 17:15:44 -08:00
Andrey Lushnikov
64a2940a0d
devops: fix webkit archiving (#4642)
Protocol concatenation script did not account for `WK_CHECKOUT_PATH`.
2020-12-08 16:32:45 -08:00
Andrey Lushnikov
17f1b20f39
devops: trigger all builds with new windows buildbot (#4638) 2020-12-08 11:03:11 -08:00
Andrey Lushnikov
c1dcef39a3
devops(windows): fix vswhere location (#4636)
%PROGRAMFILES% locations depends on shell bitness; we're migrating from
mingw32 to mingw64.
2020-12-08 10:27:05 -08:00
Dmitry Gozman
99b98d62a6
browser(webkit): do not spam stderr with screencast debug logs (#4635) 2020-12-08 09:59:57 -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
73982834e7
devops: absolute paths for webkit libraries and output directory (#4627) 2020-12-07 14:30:06 -08:00
Dmitry Gozman
e8dcd8767f
browser(chromium): build 833159 (#4623) 2020-12-07 10:58:07 -08:00
Andrey Lushnikov
e75ebc1752
browser(firefox): roll Firefox to Dec, 7 2020 (#4622) 2020-12-07 10:27:50 -08:00
Yury Semikhatsky
4be41f2571
browser(webkit): build fix, switch to the new download API (#4621) 2020-12-07 10:10:32 -08:00
Andrey Lushnikov
d8520f0695
devops: fix webkit building on windows (#4618) 2020-12-07 09:21:36 -08:00
Andrey Lushnikov
13e2ef1d10
devops: suppport WK_CHECKOUT_PATH variable (#4617)
`WK_CHECKOUT_PATH` defines location of webkit checkout on the
file system. All browser-related scripts, like `prepare_checkout.sh` and
`export.sh` respect this environment variable on all platforms.
2020-12-07 08:42:20 -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
Yury Semikhatsky
b6eb8e0a90
browser(webkit): fix mac build (#4605) 2020-12-04 17:45:18 -08:00
Yury Semikhatsky
cdbc96ac3a
browser(webkit): roll to 12-04 (#4601) 2020-12-04 16:11:08 -08:00
Andrey Lushnikov
7dc386fa1a
browser(webkit): produce xcode 12.2 build on Mac 10.15 (#4599) 2020-12-04 11:49:07 -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
Yury Semikhatsky
512516c956
browser(webkit): retore changes from #4539 (#4544) 2020-11-30 10:49:27 -08:00
Yury Semikhatsky
8f70c95d6c
browser(webkit): roll to 11-30 (#4541) 2020-11-30 10:17:36 -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
d96330bbec
browser(webkit): override availWidth with screen width (#4539) 2020-11-30 10:04:28 -08:00
Andrey Lushnikov
51865fe584
chore: bump WebKit build number to test self-hosted runners (#4525) 2020-11-25 08:38:23 -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
Pavel Feldman
95aab3b29d
browser(chromium): prepare r828656 (#4499) 2020-11-19 12:44:05 -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
Dmitry Gozman
1169c5ab50
browser(webkit): close on pipe disconnect (#4484) 2020-11-18 19:34:33 -08:00
Yury Semikhatsky
a11be3e9ef
browser(webkit): roll to 11-18 (#4481) 2020-11-18 13:03:42 -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
Andrey Lushnikov
8860d6d11d
chore: try building webkit on github selfhosted runner (#4476) 2020-11-17 21:03:51 -08:00
Pavel Feldman
fc0388813e
browser(chromium): pick 827102 for roll (#4460) 2020-11-16 16:43:37 -08:00
Pavel Feldman
79c592ed7d
browser(webkit): do not create unique page groups for pages (#4456) 2020-11-16 14:31:50 -08:00
Yury Semikhatsky
5509e98ba5
browser(webkit): fix mac build after latest roll (#4455) 2020-11-16 14:25:58 -08:00
Yury Semikhatsky
39fcf1bc54
browser(firefox): do not leak reponses (#4453) 2020-11-16 13:16:20 -08:00
Yury Semikhatsky
bd76e9ddbf
browser(webkit): roll to 11-16 (#4451) 2020-11-16 13:02:55 -08:00
Dmitry Gozman
2f73a45e63
browser(chromium): roll to 827767 (#4452) 2020-11-16 12:43:56 -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
Dmitry Gozman
9e1b26f9f9
browser(webkit): close on pipe disconnect (#4421) 2020-11-13 10:02:37 -08:00
Yury Semikhatsky
8f7286175e
browser(webkit): roll to 11-12 (#4417) 2020-11-12 11:10:42 -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
Pavel Feldman
d3135871e5
browser(chromium): fetch r825625 (#4406) 2020-11-11 12:45:01 -08:00
Yury Semikhatsky
508be0d78f
browser(webkit): fix big sur crashes after latest roll (#4391) 2020-11-09 22:29:52 -08:00
Yury Semikhatsky
bd75fb1c55
browser(webkit): roll to 11-09 (#4384) 2020-11-09 11:30:12 -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
Dmitry Gozman
06c8881dad
browser(firefox): fix videoSessionId (#4374)
PRIx8 produced "%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx%hx",
so video session ids were clashing between pages, and popup videos
did not work.
2020-11-06 15:08:03 -08:00
Joel Einbinder
d4fb159154
browser(webkit): fix webcontent startup crash on macos 11 (#4370)
reverts #4357 and provides the real fix. Apple accidentally landed some code that will crash the web process if it is not signed by them. I'm sure they will figure it out once they get test bots for macos 11. But until then, we can just revert.

https://bugs.webkit.org/show_bug.cgi?id=218342
2020-11-06 11:11:19 -08:00
Andrey Lushnikov
c522a0dfba
browser(firefox): force always active docshell (#4363)
This forces active docshell for all content processes.

References #4208
2020-11-05 17:53:22 -08:00
Yury Semikhatsky
49e4d9a347
browser(webkit): force rebuild with new redistributable dlls (#4364) 2020-11-05 17:51:28 -08:00
Yury Semikhatsky
040f9b04ca
browser(webkit): copy MS VC++ redistributable libs from VS installation (#4360) 2020-11-05 16:51:42 -08:00
Yury Semikhatsky
aafcf932bc
browser(firefox): bundle VS C++ redistributable dlls (#4359) 2020-11-05 13:56:15 -08:00
Andrey Lushnikov
bc20bfd4cc
browser(webkit): disable cache compiled sandbox (#4357)
This seems to be broken on BigSur.
2020-11-05 09:25:36 -08:00
Andrey Lushnikov
b94a7c0e60
devops: speedup initial browser checkout (#4352)
Instead of checking out the whole repository, we now do a shallow
clone.

We then gradually "unshallow" the clone, looking for the `BASE_REVISION`.

This should fix experimental mac-11 builder.
2020-11-05 02:04:06 -08:00
Andrey Lushnikov
4d8ef423ba
devops: add instructions to build mac on BigSur (#4350) 2020-11-05 00:49:05 -08:00
Yury Semikhatsky
283bc2c7d0
devops: ensure that embedder directory does not exist (#4340)
Otherwise `cp -r from to` will copy content of `from` to a subdirectory in `to`
2020-11-04 11:20:47 -08:00
Andrey Lushnikov
5dc632b82e
chore: mirror Chromium 823944 to our cdn (#4339)
References #4021
2020-11-04 09:44:30 -08:00
Yury Semikhatsky
890add98fe
browser(webkit): do not hang on close when there is a dialog (#4332) 2020-11-03 18:58:57 -08:00
Yury Semikhatsky
031f0bf539
browser(webkit): fix mac build failure caused by touch events (#4330) 2020-11-03 16:21:42 -08:00
Yury Semikhatsky
c6b4263e54
browser(webkit): fix timezone overrides after last roll (#4329) 2020-11-03 14:54:28 -08:00
Andrey Lushnikov
799604c085
browser(firefox): roll Firefox to beta @ Nov, 3 (#4327) 2020-11-03 14:51:37 -08:00
Pavel Feldman
eae3d93a20
browser(webkit): fix proxy ignore pattern set on context level (#4328) 2020-11-03 14:28:04 -08:00
Yury Semikhatsky
0a9fdc4751
browser(webkit): roll to 11-03 (#4325) 2020-11-03 13:17:03 -08:00
Andrey Lushnikov
e3b12b0a0d
browser(firefox): fix closing browser contexts with beforeunload (#4314)
References #4021
2020-11-02 17:29:54 -08:00
Andrey Lushnikov
2b495c9750
browser(firefox): fix SimpleChannel to await initialization (#4311)
As Joel noticed recently, MessageManager in firefox doesn't guarantee
message delivery if the opposite end hasn't been initialized yet. In
this case, message will be silently dropped on the ground.

To fix this, we establish a handshake in SimpleChannel to make sure that
both ends are initialized, end buffer outgoing messages until this
happens.

Drive-by: serialize dialog events to only deliver *after* the
`Page.ready` protocol event. Otherwise, we deliver dialog events to the
unreported page.
2020-11-02 16:21:34 -08:00