Commit Graph

2391 Commits

Author SHA1 Message Date
Dmitry Gozman 4a00e5c4ea
test: remove flaky test for binding on error pages (#2952)
I wasn't able to make it consistently pass...
2020-07-14 21:20:14 -07:00
Dmitry Gozman 2d5c0328cd
feat(rpc): return objects for every protocol command (#2950)
For future extensibility, returning objects with fields instead
of plain strings or channels.
2020-07-14 18:26:50 -07:00
Yury Semikhatsky 46a625dc28
feat(firefox): bump to 1127 (#2951) 2020-07-14 16:51:08 -07:00
Dmitry Gozman 1b84ec9023
fix(binding): dispatch binding after the page has been initialized (#2938)
... but not after it was closed.
2020-07-14 13:34:49 -07:00
Yury Semikhatsky 89ca2db36c
browser(firefox): kick off new build after last commit (#2948) 2020-07-14 12:49:04 -07:00
Yury Semikhatsky de40329126
browser(firefox): add new files for headless screencast (#2947) 2020-07-14 12:25:41 -07:00
Yury Semikhatsky bf6f22d812
browser(firefox): basic screencast for headless (#2931) 2020-07-14 11:20:36 -07:00
Pavel Feldman d5bd459986
chore(rpc): remove some paths from the channel (#2934) 2020-07-14 10:51:37 -07:00
Dmitry Gozman cc8fe5a763
feat(rpc): support electron (#2933) 2020-07-13 21:46:59 -07:00
Dmitry Gozman 9fdb3e23c3
feat(rpc): support selectors (#2936) 2020-07-13 17:47:15 -07:00
Andrey Lushnikov 6c75cbe5f5 docs: fix link to github workflow in releasing doc 2020-07-13 17:24:25 -07:00
Andrey Lushnikov a06ba1c770
devops: add utility to count compressed docker image size (#2920)
This adds a new script to calculate docker image size with
all parent layers.

Note: take this metrics with a grain of salt, since in reality
docker compresses and reuses layers.

Some historic stats obtained with this script:
- **`208MB`** (-33MB) chore(docker): skip "recommended" dependencies (#2917) (1cebf8757c)
- **`241MB`** (-29MB) chore(docker): trim some of the gstreamer dependencies (#2897) (bce4b1aea9)
- **`272MB`** (-1MB) devops: do cache busting for APT (#2656) (bb34418095)
- **`273MB`** (+49MB) fix(webkit): update Docker file to include gstreamer (#2636) (5c6c65915c)
- **`224MB`** (+0MB) chore: fix emojis for CR and FF in Dockerfile (#2522) (24316ad261)
- **`224MB`** (-1MB) fix: Dockerfile for Firefox (#1937) (b516ac4fb2)
- **`225MB`** (+49MB) devops(docker): Install ffmpeg dependency, adding codecs necessary for video playback in Firefox (#1627) (222d01caaa)
-  **`176MB`** (+32MB) chore(docs): optionally install XVFB in docker(ec3ee66043)
-  **`144MB`** (+144MB)  feat: add a playwright-ready docker image (#1161)(1781ae7006)
2020-07-13 17:16:19 -07:00
Andrey Lushnikov d58a57c4b2
devops: fix docker publishing (#2939)
- Repository name has to start with `public/` to be exported to dockerhub.
- Remove `DOCKER_USERNAME` to avoid unnecessary masking in our logs.
- Publish dev versions of Docker image only when changes to docker file
happen. (this is why NPM publishing and Docker publishing for dev
releases are now separate).
- Release publishing in two separate jobs to make them independent.

References #2926
2020-07-13 17:15:10 -07:00
Andrey Lushnikov b7d68d1cdb
devops: automate Docker image publishing (#2937)
This starts publishing our Docker images using Github Actions:
- on every commit, a new image will be pushed, tagged with a SHA of the
  commit, e.g.
  `mcr.microsoft.com/playwright:sha-fe997eca88d6de48378b05133dadfe032bd8b0ea`
- on every release, a new image will be pushed, tagged with the release
  version, e.g. `mcr.microsoft.com/playwright:v1.2.1`

**Note:** today we don't version our images and instead push them all as
`bionic`. This patch retains the tag - along with `latest`. Both
`bionic` and `latest` tags will point to the latest release.
2020-07-13 16:18:51 -07:00
Dmitry Gozman 65d45c18c3
feat(rpc): introduce Waiter for various waitFor implementations (#2935)
Use it for waitForEvent and waitForLoadState.
2020-07-13 16:03:24 -07:00
Arjun Attam b2d820a185
docs(emulation): separate section for dark mode (#2915) 2020-07-13 15:47:13 -07:00
Dmitry Gozman 9fd30e58e2
feat(rpc): ensure feature-detection works as before (#2898)
For this, some tests are migrated from skip() to feature detection,
like our users would do.
2020-07-13 15:26:09 -07:00
Dmitry Gozman 2151757621
feat(rpc): run rpc tests in-process and out-of-process (#2929) 2020-07-13 15:00:20 -07:00
Andrey Lushnikov 0346c3a1dc
chore: update release notes draft gen (#2932) 2020-07-13 14:48:29 -07:00
Dmitry Gozman 6d94c92053
feat(rpc): support no-serialization mode, run hook tests (#2925)
Added rpc_json_linux bots to excercise serialization - these
do not run hook tests.
2020-07-13 08:31:20 -07:00
Dmitry Gozman 6674458496
feat(rpc): log api calls into LoggerSink (#2904) 2020-07-10 18:00:10 -07:00
Dmitry Gozman c63b706aac
fix(events): avoid firing events after close/detach (#2919) 2020-07-10 16:38:01 -07:00
Dmitry Gozman fc6861410b
feat(rpc): merge DispatcherScope and Dispatcher (#2918) 2020-07-10 16:24:11 -07:00
Pavel Feldman ebb4c3320f
test: mark 2 chromium not important win tests as failed (#2914) 2020-07-10 16:15:12 -07:00
Pavel Feldman 982e5e3550
devops: collect artifacts from browser locations (#2913) 2020-07-10 16:15:00 -07:00
Andrey Lushnikov 21807bcd35
feat(webkit): roll WebKit to r1306 (#2899)
r1306 was built with the new slim JHBUILD procedure. If this passes
our CI bots, it'll be good to go.
2020-07-10 16:05:43 -07:00
Andrey Lushnikov a403d4beff
fix(firefox): fix launching firefox without dependencies (#2900)
We always have to reject promises with some error. Otherwise,
our error-rewriting logic in try-catch miserably fails.

With this patch, attempt to launch Firefox when it's missing
dependencies will actually result in a thrown exception with
pretty logs. Without this patch, Playwright throws internal error.
2020-07-10 16:04:19 -07:00
Yury Semikhatsky 1cebf8757c
chore(docker): skip "recommended" dependencies (#2917) 2020-07-10 16:01:30 -07:00
Yury Semikhatsky bce4b1aea9
chore(docker): trim some of the gstreamer dependencies (#2897) 2020-07-10 15:56:52 -07:00
Pavel Feldman 631f76df75
chore(rpc): remove union types from page and handles (#2912) 2020-07-10 15:39:11 -07:00
Dmitry Gozman b6fd4dc56c
feat(rpc): merge ChannelOwner and ConnectionScope (#2911) 2020-07-10 15:11:47 -07:00
Dmitry Gozman 54f9a0dd7b
test: update headfull chromium expectations after a recent roll (#2908) 2020-07-10 14:26:49 -07:00
Pavel Feldman d561465214
devops: use matrix in GHA, add non-linux rpc (#2907) 2020-07-10 13:15:57 -07:00
Pavel Feldman c89c30e333
fix(popup): do not report frameless pages (#2910) 2020-07-10 13:15:39 -07:00
Yury Semikhatsky c21b637358
feat(webkit): bump to 1305 (#2893) 2020-07-09 15:36:48 -07:00
Dmitry Gozman a91ec9a15d
feat(rpc): pass more tests (#2896)
Includes coverage, tracing and misc close() tests.
2020-07-09 15:33:01 -07:00
Dmitry Gozman 7039409397
test: skip devtools test with USES_HOOKS (#2895) 2020-07-09 13:45:28 -07:00
Carlos Alberto Lopez Perez cb8b1bca97
browser(webkit): Reduce binary size of WebKit Linux build bundles (GTK and WPE) (#2880)
This patch changes the build system to use the JHBuild minimal dependency
system introduced in WebKit r264092 <https://trac.webkit.org/r264092>

The build has been tested with Ubuntu-18.04

The binary size of the zip bundles is now: 37M (WPE) and 40M (GTK).
Previously it was 54M and 59M (respectively)
2020-07-09 11:37:13 -07:00
Joel Einbinder e90ba26250
fix(context): fire close event for persistent contexts (#2891) 2020-07-09 08:34:07 -07:00
Dmitry Gozman 8fe29feb21
feat(rpc): support more chromium-specific apis (#2883)
This includes page CDPSession, backgroundPages() and serviceWorkers().

This has also revealed an issue with closing order between the context
and the service worker.
2020-07-08 21:36:03 -07:00
Pavel Feldman b3ca4afd40
chore: misc test fixes (#2857) 2020-07-08 18:42:31 -07:00
Pavel Feldman 6209d14f87
chore: misc test fixes (#2888) 2020-07-08 18:42:04 -07:00
Andrey Lushnikov c3ac0371e6
test: add test to validate user-agent sanity (#2887) 2020-07-08 17:45:45 -07:00
Yury Semikhatsky b93e0994bc
browser(webkit, firefox): bump versions (#2866) 2020-07-08 17:10:33 -07:00
Andrey Lushnikov 458aaa508f
feat(chromium): roll Chromium to r786218 (#2879)
This roll includes:
- https://crrev.com/786119 - mac: close context menu when destroying RenderViewContextMenuMacCocoa

Fixes #2700
2020-07-08 17:09:42 -07:00
Paul 71713c9580
fix(webkit): Fix default User-Agent (#2886)
Co-authored-by: pspaul <pspaul@pspaul.de>
2020-07-08 16:15:31 -07:00
Yury Semikhatsky f5911de93d
browser(webkit): release GTK app only if it has been referenced (#2885) 2020-07-08 16:13:58 -07:00
Yury Semikhatsky 83bba08cc4
browser(webkit): fix touch events on mac after last roll (#2884) 2020-07-08 14:32:39 -07:00
Joel Einbinder 040c6a6a41
chore(jest): run tests with jest (#2754)
Experimentally run `npx jest` to run our tests with jest.
2020-07-08 11:13:18 -07:00
Arjun Attam 6a1bd3ae6e
docs: add debugging docs page (#2865) 2020-07-08 08:59:58 -07:00