When firefox is automated + interacted with manually, input composition
might get stolen from Text Input Processor.
Re-requiring TIP every time seems to fix this.
References #5460
This moves default Firefox and WebKit checkouts to $HOME folder,
unless browser specific env variables are specified.
In other words:
- Firefox checkouts goes to `$HOME/firefox` unless there's a
`$FF_CHECKOUT_PATH` that specifies a custom location.
- WebKit checkout goes to `$HOME/webkit` unless there's a
`$WK_CHECKOUT_PATH` that specifies a custom location.
With this change, all build bots will now re-use checkouts
between builds, which should speed up compilation.
An investigation has shown, that:
- Official Firefox builds actually cross-compile from Linux to MacOS,
and for this reason use the old MacOS 10.12 SDK.
- We should be able to build with 11+ SDK just fine; read [primer on
MacOS SDKs] for details.
- A random `symbol '___darwin_check_fd_set_overflow' not supported`
error seems to be an [apple bug]. We can fix it using
`LDFLAGS="-Wl,-U,___darwin_check_fd_set_overflow"`
flag, similarly to [haskell compiler fix].
[primer on MacOS SDKs]: https://firefox-source-docs.mozilla.org/widget/cocoa/sdks.html
[apple bug]: https://openradar.appspot.com/FB7647406
[haskell compiler fix]: 7745638702
Apple M1 builders are now updated to the BigSur 11.6.
This patch:
- changes build assertions to validate 11.6 operating system
- changes build archive name to have major version only
- updates `//src/utils/registry.ts` to a new archive name for M1
This affects only M1 builds for Firefox, Firefox-Beta & WebKit.
We should roll these browsers at least once before 1.16 release.
Broken since https://github.com/microsoft/playwright/pull/8049
Previously when doing `build.sh --full` it was installing deps + building. Currently when passing `--full` it does not install the deps before, since it tries to compile before.
Instead of building firefox using `//browser_patches/buid.sh ff-beta`,
one can use `//browser_patches/repack-juggler.mjs ff-beta`.
The script will download the last Playwright build, and repack
Juggler and preferences there.
This way bash won't expand and post-process variable values in any way.
The changes are driven with
[`shellcheck`](https://github.com/koalaman/shellcheck)
Both `libyuv::I420Copy` and `libyuv::I420Scale` support image cropping
by offsetting coordinates inside planes, but offsets must be even
numbers.
References #7998
Notable changes:
- javaScriptEnabled moved to the browser side.
- enabling new UI since it no longer helps to fix screencast
Review branch: https://github.com/aslushnikov/juggler/tree/roll-to-91-0-b10
Note: this will have 2 screencast tests failing. Investigation is in a follow-up.
Browsers require particular xcode versions to be installed on the host
machine to produce successful build.
This patch starts using explicit xcode versions for all mac browser
builds.