Commit Graph

807 Commits

Author SHA1 Message Date
Andrey Lushnikov 3536e81d77
chore: update browser patches as of May 26, 2023 (#23556) (#24079)
Internal commit reference:

2e6d52519c
2023-07-06 12:22:45 -07:00
Patrick Shaw 6e78dcb7dc
fix: Allow portable bash paths for systems including NixOS (#23889)
Although very common, bash is not guaranteed to be located at
`/bin/bash`. NixOS is an example of this.

More commonly, `/bin/bash` can be quite out of date. An example of this
is MacOS's version of `bash`. This realistically won't affect Playwright
but it's worth noting. You can technically update MacOS's system version
of bash but you need elevated permissions to do so.

By using `/usr/bin/env bash` instead of `/bin/bash` we can execute
Playwright's bash scripts in like NixOS and generally improve the
selection behaviour for bash in other systems too.

Some discussion of why it's worth favouring `/usr/bin/env bash` over
`/bin/bash`:
- Discusses `/bin/bash` missing in NixOS:
https://discourse.nixos.org/t/add-bin-bash-to-avoid-unnecessary-pain/5673
- Some general commentary on why `/usr/bin/env bash` is favoured:
https://askubuntu.com/a/1402721
- Points out how old bash is in MacOS:
https://itnext.io/upgrading-bash-on-macos-7138bd1066ba

Improves situation at #5501
2023-07-03 06:27:06 -07:00
Andrey Lushnikov f9c3e1915b
chore: update browser patches as of Apr 26, 2023 (#23556)
Internal commit reference:

b71297a4b9
2023-06-06 15:08:23 -07:00
Andrey Lushnikov f3a1058b38
chore: update browser patches as of Apr 5, 2023 (#23112)
Internal commit reference:
f7e6794188
2023-05-17 17:50:43 -07:00
Andrey Lushnikov 0c4bed191f
chore: update browser patches as of Mar 14, 2023 (#22603)
Internal commit reference:
e994525a6d
2023-04-24 14:28:08 -07:00
Andrey Lushnikov a6468b73b2
chore: update browser patches as of Feb 7, 2023 (#21824)
Internal SHA: 50b497cbfbdb567ecfaeb80f30942689b08db7c4
2023-03-20 18:23:12 -07:00
Andrey Lushnikov 1cf1f53076
chore: update browser patches as of Jan 11, 2023 (#21068) 2023-02-21 11:46:10 -08:00
Andrey Lushnikov 6c5317bd31
chore: update browser patches as of Dec 13, 2022 (#20297) 2023-01-23 11:29:48 -08:00
Andrey Lushnikov 4f6a94b563
devops: move to a new infra (#16845) 2022-08-25 12:29:15 -07:00
Diego Pino fb88b32926
browser(webkit): rebase to 08/25/22 (253769@main) (#16835) 2022-08-25 08:27:04 -07:00
Diego Pino d99b93c38a
browser(webkit): rebase to 08/23/22 (253672@main) (#16753) 2022-08-23 09:17:31 -07:00
Yury Semikhatsky e6b6be8fde
browser(webkit): instrument policy check during redirected reload (#16656)
It may happen that reload leads to a cross-origin redirect. This PR adds instrumentation to the policy check that triggers new web process creation and allows the client side properly track the navigation progress after reload.

Pretty-diff: 753967002c
References: #16147
2022-08-18 18:44:31 -07:00
Max Schmitt 39ef87e48b
browser(webkit): add forcedColors media query override (#16653) 2022-08-19 01:05:48 +02:00
Andrey Lushnikov d2a950c8d6
devops: bundle libstdc++ from gcc-9 for Ubuntu 18.04 webkit builds (#16643)
References #16633
2022-08-18 10:48:49 -07:00
Yury Semikhatsky 3ce51e6f98
browser(webkit): fix crash in mouse drag on mac (#16624) 2022-08-17 15:16:31 -07:00
Diego Pino 6dd74265ac
browser(webkit): rebase to 08/16/2022 (253462@main) (#16575)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-08-17 00:23:00 +02:00
Yury Semikhatsky 5dca7491a9
browser(webkit): always fire frameAttached before domcontentloaded (#16591) 2022-08-16 12:01:36 -07:00
Andrey Lushnikov 1bc6669467
chore: kick off new browser builds to test docker env (#16521) 2022-08-13 04:48:53 -07:00
Yury Semikhatsky d9e8e1e92d
chore: use existing is_linux function (#16509) 2022-08-12 12:38:19 -07:00
Diego Pino dc07a60f14
browser(webkit): rebase to 08/11/22 (253363@main) (#16490) 2022-08-12 09:38:22 -07:00
Andrey Lushnikov acc9b528ea
devops: remove universal WebKit build (#16468)
We experimented with it and are not ready to commit.
2022-08-11 10:12:45 -07:00
Yury Semikhatsky 7f9937bd67
browser(webkit): fix libpas and bmalloc link errors (#16361)
Patch by @dpino 
Fixes the following error on Ubuntu 18:
```
[716/8153] Linking CXX shared library lib/libmbmalloc.so
FAILED: lib/libmbmalloc.so 
: && <CXX> -fPIC -fdiagnostics-color=always -Wextra -Wall -pipe -Wno-odr -Wno-stringop-overflow -Wno-nonnull -Wno-array-bounds -Wno-expansion-to-defined -Wno-noexcept-type -Wno-psabi -Wno-misleading-indentation -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-ari>
/usr/bin/ld: Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_deallocate.c.o: relocation R_X86_64_PC32 against symbol `pas_segregated_page_deallocation_did_fail' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
```

Pretty-diff: a479046919
2022-08-08 12:32:19 -07:00
Diego Pino cd1413ecab
browser(webkit): Revert downstream change introduced in last roll (#16287)
browser(webkit): Revert downstream change introduced in #1697
2022-08-05 06:26:16 +02:00
Diego Pino 250d5f8b9a
browser(webkit): rebase to 08/03/22 (253090@main) (#16249) 2022-08-04 11:23:45 -07:00
Diego Pino d4c63b21e7
browser(webkit): restore default a11y settings (#15844) 2022-08-02 10:31:38 -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
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
Yury Semikhatsky e07eb664a5
browser(webkit): export _vpx_codec_destroy from libwebrtc (#16054) 2022-07-29 08:55:08 -07:00
Yury Semikhatsky 4b7da07b0f
browser(webkit): do not leak vpx codecs (#16032) 2022-07-28 13:16:20 -07:00
Yury Semikhatsky f067d1ddd6
browser(webkit): disabled threded scrolling on WPE (#15964) 2022-07-26 17:57:55 -07:00
Andrey Lushnikov 67cea1882c
chore: trigger new browser builds that use new infrastructure (#15955) 2022-07-26 07:44:31 -07: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
Diego Pino a0418b970e
browser(webkit): rebase to 07/20/22 (252681@main) (#15827) 2022-07-21 12:46:37 +02:00
Diego Pino 35a7be24a3
browser(webkit): follow up #1684 (#15807) 2022-07-20 13:11:53 +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
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
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
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
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
Diego Pino 16c9c8a06d
browser(webkit): rebase to 06/30/22 (252021@main) (#15297) 2022-07-01 13:32:42 -07:00