Commit graph

1703 commits

Author SHA1 Message Date
Andrey Lushnikov b7b572c27c
devops: fix arm64 webkit and firefox builds (#16115) 2022-08-01 13:30:49 -07:00
Yury Semikhatsky 76dc5d8a0f
browser(webkit): disable iframe loading=lazy (#16106)
It was recently enabled by default upstream 461deb6c6d
We have this feature disabled in Chromium as we want the iframes to be eagerly loaded to avoid clients' confusion. This PR disables it back in WebKit too.

Pretty-diff: 7aad962e5d
2022-08-01 11:29:28 -07:00
Andrey Lushnikov 52c5578b2d
devops: fix firefox expected platform for native arm64 linux build (#16105) 2022-08-01 11:05:53 -07:00
Andrey Lushnikov ecf55b01c6
devops: do not bundle libstdc++ with Firefox builds (#16103)
Turns out we were bundling x86_64 `libstdc++` with aarch64
builds on Ubuntu, which was useless and implies that this
library might not be needed at all.
2022-08-01 09:28:19 -07:00
Andrey Lushnikov 505197bfac
devops: install Python 3.8 on Ubuntu 18.04 (#16101)
Ubuntu 18.04 ships Python 3.6 by default on Ubuntu18.04; this python,
however, fails to run Firefox build system, so we have to install
Python 3.8 and default it to `python3`.
2022-08-01 09:14:16 -07:00
Andrey Lushnikov 887176ccd5
devops: compile Firefox natively on Ubuntu aarch64 (#16098)
We used to cross-compile Firefox for aarch64, but this no longer
works.

This patch switches to native build inside Ubuntu aarch.
2022-08-01 07:57:45 -07:00
Andrey Lushnikov a8799c5e19
devops: drastically speedup full firefox build on CI (#16096)
Do not checkout full history of a master branch to
bootstrap dependencies.
2022-08-01 07:16:22 -07:00
Diego Pino 4112eb815e
browser(webkit): rebase to 29/07/22 (252944@main) (#16053)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-01 11:48:23 +02:00
Max Schmitt e85228fe91
devops: use pip3 to install azure-cli instead of pip (#16085) 2022-08-01 11:44:35 +02:00
Yury Semikhatsky d33455dcca
browser(firefox): dispatch console messages even if there are workers (#16068) 2022-07-29 16:56:17 -07:00
Yury Semikhatsky e07eb664a5
browser(webkit): export _vpx_codec_destroy from libwebrtc (#16054) 2022-07-29 08:55:08 -07:00
Andrey Lushnikov 265d00e3f9
devops: attempt to fix Firefox build (#16050) 2022-07-29 07:12:38 -07:00
Andrey Lushnikov 60ab16377a
browser(firefox): roll Firefox stable to 103 (#16047) 2022-07-29 05:47:00 -07:00
Yury Semikhatsky b479869ddc
browser(firefox): do not leak vpx codec (#16034) 2022-07-28 13:39:34 -07:00
Yury Semikhatsky 4b7da07b0f
browser(webkit): do not leak vpx codecs (#16032) 2022-07-28 13:16:20 -07:00
Andrey Lushnikov 792aa6a080
devops: fix FF build on MacOS (#16023)
It looks like FF on MacOS requires the `--enable-bootstrap`
flag instead of the original dance with the master branch.
2022-07-28 10:49:34 -07:00
Andrey Lushnikov 96574e49eb
devops: fix Firefox build on Linux (#16022)
Prebuilt WASI sysroot is not availabe any more, so this patch
disables sandboxing via WASI for now in our builds.

I tried compiling WASI manually, but it didn't work out for me
for some reason.
2022-07-28 08:04:44 -07:00
Andrey Lushnikov abf951ebec
devops: proper fix for git directory permissions (#16020) 2022-07-28 06:30:04 -07:00
Andrey Lushnikov 2733924d1d
devops: add safe directory (#16018) 2022-07-28 05:21:57 -07:00
github-actions[bot] 637a935de6
browser(chromium): roll to 2022-Jul-28 (#16014)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-28 12:06:56 +02:00
github-actions[bot] 93173e8d7e
browser(chromium-tip-of-tree): roll to 2022-Jul-28 (#16013)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-28 12:06:44 +02:00
Andrey Lushnikov 14bf293594
devops: fix quotes in docker_build.sh script (#15989) 2022-07-27 05:07:33 -07:00
Max Schmitt c22d9b6b09
devops: remove pin azure-cli to a more recent version (#15988) 2022-07-27 14:03:50 +02:00
Andrey Lushnikov f82ce805da
devops: fix docker builds (#15987)
* install AZ CLI from pip since it's not available in APT on aarch64
* install rust for firefox as `pwuser`
2022-07-27 04:59:53 -07:00
Yury Semikhatsky f067d1ddd6
browser(webkit): disabled threded scrolling on WPE (#15964) 2022-07-26 17:57:55 -07:00
Andrey Lushnikov 4478bf8ead
devops: fix WebKit Linux arm64 build (#15976) 2022-07-26 17:36:39 -07:00
Andrey Lushnikov 0b72f7ec99
devops: another fix for Docker build script (#15966)
* git configuration should be system wide to propagate to all
  users
* rust should be installed under the `pwuser`
2022-07-26 10:49:43 -07:00
Andrey Lushnikov b3b10674f4
devops: fix build-in-docker script (#15963) 2022-07-26 10:20:15 -07:00
Andrey Lushnikov 67cea1882c
chore: trigger new browser builds that use new infrastructure (#15955) 2022-07-26 07:44:31 -07:00
Andrey Lushnikov f9b6ca2c5a
devops: add a universal script to build browsers inside docker (#15954)
This script takes care of all the dependencies necessary to compile
WebKit and Firefox inside supported Linux distributions.
2022-07-26 07:16:54 -07:00
github-actions[bot] 3e28acc4c2
browser(chromium-tip-of-tree): roll to 2022-Jul-26 (#15947)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-26 13:38:32 +02:00
Yury Semikhatsky 1528e56438
browser(webkit): skip gpu availability check on mac (#15938) 2022-07-25 17:58:24 -07:00
Dmitry Gozman 15ecc254cb
browser(webkit): make DOM.scrollIntoViewIfNeeded and DOM.getContentQuads work for display:contents (#15739) 2022-07-25 17:38:07 -07:00
Diego Pino 69bfa7d33f
browser(webkit): rebase to 07/25/22 (252781@main) (#15918) 2022-07-25 13:22:20 +02:00
Andrey Lushnikov 618941fc68
devops: make --debug as a CLI argument for FF build scripts (#15833) 2022-07-21 16:20:09 -07:00
Diego Pino a0418b970e
browser(webkit): rebase to 07/20/22 (252681@main) (#15827) 2022-07-21 12:46:37 +02:00
github-actions[bot] d126f4463c
browser(chromium): roll to 2022-Jul-21 (#15830)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-21 12:19:32 +02:00
github-actions[bot] 2d507403a1
browser(chromium-tip-of-tree): roll to 2022-Jul-21 (#15829)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-21 12:19:23 +02:00
Max Schmitt 9b3bd92071
devops: send Telegram messages via Node.js (#15804) 2022-07-20 15:45:26 -07:00
Diego Pino 35a7be24a3
browser(webkit): follow up #1684 (#15807) 2022-07-20 13:11:53 +02:00
github-actions[bot] c619e1b2b9
browser(chromium-tip-of-tree): roll to 2022-Jul-19 (#15780)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-19 12:08:19 +02:00
q66 184b6baa7a
browser(webkit): rebase to 07/15/22 (#15714) 2022-07-19 08:16:15 +02:00
Andrey Lushnikov 1d415312fe
browser(webkit): fix JHBuild on Ubuntu 20.04 (#15683)
Turns out Ubuntu 20.04 has both `libenchant` and `libenchant-2`.
To keep compiling against `libenchant` everywhere it exists,
we change the `aptIfElse` helper method to pick one or another.
2022-07-14 16:43:36 -07:00
Andrey Lushnikov 80bcfe70ec
browser(webkit): fix JHBuild on Debian 11 (#15653)
This patch:
* fixes bash script bug: at least in bash 5, assignment to a **local**
  variable overwrites the `$?` code, so the following condition is never true.
* adds the `libenchant-2-dev` library

Pretty diff: ff6e976044
2022-07-14 06:04:03 -07:00
Andrey Lushnikov c39df3695a
devops: add WebKit debian 11 build configuration (#15652) 2022-07-14 05:19:27 -07:00
github-actions[bot] f87d2d7c5b
browser(chromium-tip-of-tree): roll to 2022-Jul-14 (#15645)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-14 12:05:10 +02:00
github-actions[bot] da58281e16
browser(chromium): roll to 2022-Jul-14 (#15646)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-14 12:04:59 +02:00
Andrey Lushnikov f76fb3e08a
devops: add firefox debian build (#15568) 2022-07-12 05:12:51 -07:00
Andrey Lushnikov 38f8c92a28
devops: do not dedupe webkit archives (#15565)
The 2e331715ff introduced
universal webkit build and tried re-using archive deduping technique
across all our regular JHBuild-based builds.

However, this turns out to be too aggressive and doesn't work. At least
on Ubuntu 18.04:
- `minibrowser-gtk/minibrowser` is identical to
  `minibrowser-wpe/minibrowser`
- WPE gets symlinked into GTK
- Thus we now always start headed
2022-07-12 04:15:27 -07:00
github-actions[bot] 01a5bfa45c
browser(chromium-tip-of-tree): roll to 2022-Jul-12 (#15561)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-12 12:07:01 +02:00
Andrey Lushnikov d93abcbe42
devops: fix webkit builds (#15546)
This patch:
* removes "deterministic" argument from `rdfind` on Ubuntu 18.04.
  `rdfind` is a new addition, but it's nice to have since it saves 10%
  of the archive size.
* drops `stdc++fs` from dependencies. This doesn't seem to be necessary
  for JHBuild but breaks universal build.

Pretty diff: 256392e8c4
2022-07-11 14:40:23 -07:00
Andrey Lushnikov 67a2f948fd
chore: add missing webkit-mac-11 expected build (#15535) 2022-07-11 07:12:14 -07:00
Andrey Lushnikov fd1fae97b1
browser(webkit): fix build on Ubuntu 18.04 (#15529)
Turns out default GnuTLS on Ubuntu 18.04 is 3.5.18, so we should
use OpenSSL.

The glib-networking backend selector condition is thus incorrectly
compares version triplets.
2022-07-11 06:01:34 -07:00
Andrey Lushnikov 2e331715ff
devops: support universal webkit builds (#15496) 2022-07-08 16:27:53 -07:00
Yury Semikhatsky 4b4f23fdb8
browser(webkit): replace wpe pasteboard with a hashmap (#15506) 2022-07-08 15:07:39 -07:00
github-actions[bot] 6d030e666e
browser(chromium): roll to 2022-Jul-08 (#15488)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-08 12:05:17 +02:00
Yury Semikhatsky be4f27d685
browser(webkit): introduce Runtime.addBinding/bindingCalled (#15468)
References #14745
Pretty-diff: yury-s/WebKit@25c42a1
2022-07-07 12:58:22 -07:00
Max Schmitt bc4463c472
browser(webkit): disable WebKit PDF viewer (#15462) 2022-07-07 20:13:48 +02:00
github-actions[bot] 592e22a1a4
browser(chromium-tip-of-tree): roll to 2022-Jul-07 (#15441)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-07 13:46:52 +02:00
Andrey Lushnikov e9d66535ba
browser(firefox): move screenshots to browser-side (#15230)
* `clip` option is always passed from the client code
* with this change, we can no longer capture screenshot of a blinking
  caret; the browser-side API doesn't have this capability.
2022-07-06 15:02:48 -07:00
Andrey Lushnikov 3b269d0ed7
browser(ff-beta): roll Firefox-Beta to 103.0b5 (#15394) 2022-07-05 15:47:35 -07:00
Andrey Lushnikov 530867e8ab
browser(firefox): report unhandled rejections for Firefox (#15391)
References #14165
2022-07-05 15:46:28 -07:00
Yury Semikhatsky cc45ac91f5
browser(webkit): grant pasteboard read access for input edit commands (#15390)
This is what WebPageProxy::executeEditCommand does via WebPageProxy::willPerformPasteCommand.

Refs: #8114, #12000
Pretty-diff: yury-s/WebKit@4213f02
2022-07-05 14:14:28 -07:00
Andrey Lushnikov 8a8bdec87d
browser(firefox): roll Firefox Stable to 102 (#15321)
This roll:
- NetworkObserver now uses the `remote's` ChannelEventSink layer to
  subscribe to redirects.
- Wheel events now must be dispatched from browser process.
- There's a new API for console messages
- The old methods to wait for search service and addon manager no longer
  work; speculatively remove them since neither `remote` nor
  `marionette` have anything like this.

Native manual merge: 9e6fcfd868
2022-07-05 08:20:01 -07:00
github-actions[bot] f87fe1fbca
browser(chromium-tip-of-tree): roll to 2022-Jul-05 (#15372)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-05 12:14:41 +02:00
Diego Pino 16c9c8a06d
browser(webkit): rebase to 06/30/22 (252021@main) (#15297) 2022-07-01 13:32:42 -07:00
github-actions[bot] abe5cd542c
browser(chromium-tip-of-tree): roll to 2022-Jul-01 (#15306)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-01 16:43:42 +02:00
github-actions[bot] 8da474a760
browser(chromium): roll to 2022-Jul-01 (#15296)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-01 12:13:17 +02:00
Dmitry Gozman 268bfec4b9
browser(firefox): disable cross-process navigations for about:blank (#15283) 2022-06-30 14:49:11 -07:00
Andrey Lushnikov 458c9b2207
browser(firefox): fix racy browser.newPage() method (#15251)
It looks like the tabopen callback is async, so we must
make sure it is called when opening new pages.
2022-06-30 11:07:38 -07:00
Andrey Lushnikov 35720e2fcd
devops: adapt repack-juggler script to work with win (#15254)
This patch:
- Uses some folder in `CWD` instead of `/tmp` on win32 to store
  builds
- Drops usage of `find`, `zip` and `unzip` posix tools. Instead, rely
  on `adm-zip` package.
2022-06-30 11:04:59 -07:00
github-actions[bot] 5062d69d83
browser(chromium-tip-of-tree): roll to 2022-Jun-30 (#15270)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-30 12:32:41 +02:00
Yury Semikhatsky a5ddf560e9
browser(webkit): restore old process cache logic (#15249)
Revert https://github.com/microsoft/playwright/pull/15021. Apparently there is another leak of WPEWebProcess even with the upstream fix as [the tests failed ](https://github.com/microsoft/playwright/runs/7120162355?check_suite_focus=true)on the bots on attempt to roll to wk 1669.

Pretty-diff: 2b480bc4d0
2022-06-29 16:33:51 -07:00
Andrey Lushnikov 074ae99dc5
browser(firefox): fix browser.newPage crasher (#15247)
`mWindow` might not be initialized.
2022-06-29 13:47:45 -07:00
Andrey Lushnikov 29c1ccd690
devops: fix checkout re-use for multiple different base branches (#15231) 2022-06-29 08:30:39 -07:00
Andrey Lushnikov f95b3a40e8
browser(firefox): roll Firefox stable to 101 (#15225) 2022-06-29 04:46:49 -07:00
Yury Semikhatsky 2a01d0c83c
browser(webkit): build Playwright.app in workspace mode (#15161)
WebKit switched to workspace builds by default upstream in c67ee46115 and Playwright.app project (forked from MiniBrowser.app xcode project) was not a part of the workspace. This PR:

* Adds Tools/Playwright project to the WebKit workspace;
* Adds WebKit.framework to the list of dependencies of Playwright.app (I managed to successfully build without this modification but decided to added to be on the safe side as that was done upstream too);
* Removes `--no-use-workspace` in order to use workspace build mode which is the default upstream.

Pretty-diff: 75f1e79447
2022-06-28 12:30:01 -07:00
Andrey Lushnikov 571b642670
devops: fix firefox-beta build on Ubuntu 20.04 & 22.04 (#15175)
devops: fix firefox-beta build

References #15174
2022-06-28 05:40:58 -07:00
github-actions[bot] 527c5b619a
browser(chromium-tip-of-tree): roll to 2022-Jun-28 (#15170)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-28 12:12:30 +02:00
Diego Pino d152f7957a
browser(webkit): rebase to 06/27/22 (251866@main) (#15150) 2022-06-27 11:17:11 -07:00
github-actions[bot] 609dd2531a
browser(chromium): roll to 2022-Jun-23 (#15095)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-23 17:02:02 -07:00
Diego Pino e5cf11cb68
browser(webkit): rebase to 06/23/22 (r295757) (#15058) 2022-06-23 09:12:37 -07:00
github-actions[bot] 3dfecff2d5
browser(chromium-tip-of-tree): roll to 2022-Jun-23 (#15072)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-23 12:07:50 +02:00
Dmitry Gozman 141093a1cd
browser(firefox): a11y haspopup is a string, not a boolean (#15056) 2022-06-22 17:01:13 -07:00
Yury Semikhatsky c8e4e737a7
browser(webkit): unfork web process cache (#15021)
Web process leak was fixed upstream by WebKit/WebKit@364ed4f and our workaround is no longer needed.

Pretty-diff: yury-s/WebKit@a1a66a5
2022-06-21 13:47:29 -07:00
Andrey Lushnikov b648f08821
browser(webkit): fix Ubuntu arm64 build (#15004)
pretty diff: f5183cc210
2022-06-21 03:12:50 -07:00
github-actions[bot] 15bdbe2d84
browser(chromium-tip-of-tree): roll to 2022-Jun-21 (#15005)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-21 12:07:32 +02:00
Diego Pino 2f31e6373a
devops: build WebKit for Mac using --no-use-workspace flag (#14952)
Currently, Mac WebKit builds are failing in CI. It seems this is a regression in upstream WebKit as I'm able to reproduce it in my local environment. 

The error is the following:

``` 
usr/bin/codesign --force --sign - --timestamp\=none --preserve-metadata\=identifier,entitlements,flags --generate-entitlement-der /Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework
/Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework: replacing existing signature
/Users/playwright/webkit/WebKitBuild/Release/InjectedBundleTestWebKitAPI.bundle/Contents/Resources/WebKit.framework: unsealed contents present in the root directory of an embedded framework
Command CodeSign failed with a nonzero exit code
```

Bisecting the regression it seems the build started failing on [r295496](https://trac.webkit.org/changeset/295496/webkit)

This changeset also introduced a new flag, _--no-use-workspace__, which allows to build not using WebKit.xcworkspace (I understand this is how builds were done before this changeset). Building with  _--no-use-workspace_ fixes builds for Mac.
2022-06-17 08:40:58 -07:00
github-actions[bot] 6fa5532ce1
browser(chromium): roll to 2022-Jun-17 (#14947)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-17 12:06:14 +02:00
github-actions[bot] 5b9ab653fe
browser(chromium-tip-of-tree): roll to 2022-Jun-16 (#14907)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-16 12:13:40 +02:00
Diego Pino f91b3bb340
browser(webkit) rebase to 06/15/22 (r295573) (#14900) 2022-06-15 17:56:09 -07:00
Diego Pino 6a78500f4d
browser(webkit): rebase to 06/12/22 (r295478) (#14815)
I skipped the Windows specific files this time. I added an extra commit to fix dependencies update in Ubuntu 18.04.

All changes in this PR:

chore(webkit): bootstrap build #1665
[GLIB] Fix build error after r295446
[JHBuild] Fix error use OpenSSL backend when gnutls available in the …
2022-06-13 18:58:23 -07:00
Yury Semikhatsky dae017c386
browser(webkit): scale down image only if it is larger than screencast frame (#14848)
It fixes should produce screencast frames fit test on macOS in headed mode.

Pretty-diff: yury-s/WebKit@4b7a793
2022-06-13 15:41:33 -07:00
github-actions[bot] 88ca513834
browser(chromium-tip-of-tree): roll to 2022-Jun-13 (#14831)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-13 17:23:49 +02:00
github-actions[bot] e750d6e2e7
browser(chromium): roll to 2022-Jun-10 (#14781)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-10 12:20:48 +02:00
Andrey Lushnikov e866267917
browser(webkit): fix Ubuntu arm64 build of WebKit (#14753)
Pretty diff: 91e063b839

Credits go to @dpino!

Fixes #14236
2022-06-10 02:08:26 -07:00
Yury Semikhatsky 951ef118c7
browser(webkit): fix mac build - remove unused variable (#14762) 2022-06-09 12:20:28 -07:00
Yury Semikhatsky 686331e5c8
browser(webkit): fix mac build after roll (#14761) 2022-06-09 12:12:37 -07:00
Yury Semikhatsky 6452ac86ff
browser(webkit): roll to 06/09/22 (#14756)
Switched to HTTPCookieStore as the WebCookieManagerProxy was removed in r295365

Pretty-diff: 28eaed1711
2022-06-09 09:38:21 -07:00
Andrey Lushnikov 2b33f76825
browser(webkit): support larger-than-screen window in headed WebKit (#14578) 2022-06-09 06:51:33 -07:00