Commit Graph

3172 Commits

Author SHA1 Message Date
Dana Woodman
d6240a345d
docs(showcase): remove codex from users 2020-10-13 11:33:16 -07:00
Dmitry Gozman
331bb81820
docs: add note about videos saving on context closure (#4126) 2020-10-13 09:33:31 -07:00
Yury Semikhatsky
fdff5a1596
feat(webkit): bump to 1353 (#4119) 2020-10-13 08:59:36 -07:00
Andrey Lushnikov
58285f6155
browser(firefox): await browser initialization when closing browser (#4121)
We try to avoid closing firefox too early, fearing that this
might terminate clean shutdown sequence.

Usually we assume that `Browser.enable` is called before `Browser.close`
- however, this is not the case in certain tests. So we have to
ensure browser initialization in `Browser.close` as well.

In my local tests, this fixes the Firefox Pipe problem: it looks like
we were closing browser too quickly.
2020-10-12 22:34:04 -07:00
Arjun Attam
8ad340479d
fix(test): update path for screenshots on failure (#4120) 2020-10-12 21:51:17 -07:00
Andrey Lushnikov
58c53c1039
chore: cut v1.5.0-post version (#4115) 2020-10-12 18:20:54 -07:00
Yury Semikhatsky
b2f4fa914a
browser(webkit): pick process pool for service worker from correct context (#4116) 2020-10-12 15:39:49 -07:00
Pavel Feldman
3350db2d1d
chore: nit test fixes (#4114) 2020-10-12 14:27:12 -07:00
Pavel Feldman
c2adc98cb0
chore: roll folio to 0.3.8 (#4113) 2020-10-12 13:48:56 -07:00
Dmitry Gozman
46b14bc740
chore: roll folio to 0.3.6 (#4110) 2020-10-12 09:16:02 -07:00
Dmitry Gozman
80ed407033
test: add a failing test for the issue 4038 (#4111)
Chromium corrupts screenshots taller than 8192.
2020-10-10 21:50:37 -07:00
Yury Semikhatsky
5648eac063
browser(webkit): fix mac build after last roll (#4108) 2020-10-09 16:11:50 -07:00
Pavel Feldman
3f68713f1e
chore: locate binaries in case of cli deployment (#4107) 2020-10-09 15:56:03 -07:00
Yury Semikhatsky
db744e28ee
browser(webkit): roll to 10/08 (#4106) 2020-10-09 14:43:36 -07:00
Yury Semikhatsky
b85ba62291
browser(webkit): actually fix mac compilation (#4105) 2020-10-09 13:06:25 -07:00
Joel Einbinder
9801be6401
feat(chromium): roll to 815036 (#4099) 2020-10-09 11:45:45 -07:00
Andrey Lushnikov
80773fa96b
fix: disable chromium sandbox by default (#4090)
Certain environments, e.g. Azure Pipelines, override default user
inside container with a custom one, whereas fail to pass proper
seccomp profile for the docker image.

As a result, chromium sandboxing fails.

To ease life of devops deploying tests in various CI's, this patch
disables Chromium sandbox by default.

References #4084
2020-10-09 11:28:22 -07:00
Yury Semikhatsky
d6a198a9bb
browser(webkit): speculative build fix for Mac (#4104) 2020-10-09 11:13:02 -07:00
Yury Semikhatsky
8252eb7413
browser(webkit): roll to 09-27 (#4103) 2020-10-09 09:32:36 -07:00
Andrey Lushnikov
c078e98bf5
chore: update bin/PrintDeps.exe to r1002 (#4096) 2020-10-08 22:27:59 -07:00
Joel Einbinder
e2f77455dd
browser(chromium): roll to 815036 (#4098) 2020-10-08 22:03:39 -07:00
Andrey Lushnikov
ebb3563767 chore: update package-lock.json 2020-10-08 18:05:44 -07:00
Max Schmitt
e6a1a1c129
fix(docker): add again pwuser (#3899)
In version 1.4 we introduced a breaking change for the Docker behaviour since we removed the pwuser completely. In this PR I add this user again and create a symlink so that root uses the browser of the pwuser. This has also the benefit, that the users who wants to use the seccomp profile that they don't have to create this user.

Reference: https://playwright.slack.com/archives/CSUHZPVLM/p1600240776120400

Tested on root and on pwuser. Works.

References #4084
2020-10-08 11:53:07 -07:00
Andrey Lushnikov
b4ad6e79a4
devops: playwwright-core installation should not touch browser registry (#4089)
Currently, `playwright-core` installation would check browser registry
and remove any unused browsers. This, however, might be unexpected
since `playwright-core` shouldn't touch browser registry at all.

Fixes #4083
2020-10-08 11:42:56 -07:00
Darío Kondratiuk
ff295d10e6
fix(windows): fix dependencies check on windows (#4076) 2020-10-08 09:45:53 -07:00
Andrey Lushnikov
08024c82e8
feat(firefox): roll to r1188 (#4091)
This brings in a new Firefox 82 beta.

Fixes #3995
2020-10-07 17:46:10 -07:00
Andrey Lushnikov
6a7d24469a
devops: fix firefox build (#4088)
New firefox build requires a pre-created python virtual environment.
We should detect it and create if necessary.

References #3995
2020-10-07 14:34:58 -07:00
Andrey Lushnikov
1ccce09a02
browser(firefox): roll Firefox to beta Oct 7, 2020 (#4087)
References #3995
2020-10-07 14:12:19 -07:00
Yury Semikhatsky
09906949c2
docs(page): clarify page.close({runBeforeUnload: true}) behavior (#4086) 2020-10-07 13:27:23 -07:00
Andrey Lushnikov
6bb212ceed
feat(firefox): roll Firefox to r1186 (#4085)
This roll includes two important fixes:
- await search service startup when launching browser
- report `"load"` event differently to support `window.stop()` in future

References #3995
2020-10-07 13:24:58 -07:00
Max Schmitt
fd769ec911
chore: remove test dependency on pw itself (#4078) 2020-10-07 11:08:30 -07:00
Andrey Lushnikov
6beef551d9
browser(firefox): wait for search and addon manager initialization (#4081)
It looks like terminating browser when search service or addon manager is
not fully initialized results in a broken shutdown sequence. As of
today, this results in multiple errors in the browser STDERR. In future,
this might also result in browser stalling instead of terminating.

This starts awaiting search and addon manager termination.

References #3995
2020-10-07 10:24:16 -07:00
Andrey Lushnikov
3b4232864d
browser(firefox): a different way to emit 'load' event (#4080)
Using WebProgressListener events works in all cases. Currently
used `pageshow` event will stop being emitted in future when loading
was stopped with `window.stop()` api.

References #3995
2020-10-07 09:22:56 -07:00
Arjun Attam
aafe5dac0d
docs: add videos to verification doc (#4071)
* docs: add videos to verification doc

* review changes
2020-10-07 09:04:53 -07:00
Pavel Feldman
ad58e49201
Revert "feat(firefox): migrate to the pipe channel (#4068)" (#4073)
Mac sporadically hangs on browser close.
2020-10-06 21:16:50 -07:00
Pavel Feldman
1fe3c783b4
test: roll test runner 0.9.22 (#4072) 2020-10-06 15:51:18 -07:00
Pavel Feldman
ce7aa7a608
feat(firefox): migrate to the pipe channel (#4068) 2020-10-06 14:40:09 -07:00
Andrey Lushnikov
e6869edf98
browser(firefox): fix typo in dispatcher teardown (#4069) 2020-10-06 12:06:50 -07:00
Andrey Lushnikov
5d1291528f
feat(firefox): roll to r1182 (#4067)
This revision enables `documentchannel` feature by default.

References #3995
2020-10-06 03:03:33 -07:00
Andrey Lushnikov
4ab66a4fe5
browser(firefox): follow-up with assorted simplifications (#4066)
This patch:
- moves `SimpleChannel` to synchronously dispatch buffered commands
  instead of a `await Promise.resolve()` hack
- moves dialog & screencast handling from `PageHandler` to
  `TargetManager`. This leaves `PageHandler` to be concerned solely about
  protocol.
- removes `attach` and `detach` methods for worker channels: since
  channels are buffering messages until the namespace registers, there's
  no chance to loose any events.
- slightly simplifies `PageNetwork` class: it's lifetime is now
  identical to the lifetime of the associated `PageTarget`, so a lot can
  be simplified later on.

References #3995
2020-10-06 01:53:25 -07:00
Andrey Lushnikov
c8a64b88e1
browser(firefox): enable document channel (#4065)
In the current tip-of-tree Firefox, document channel is enabled by
default, so we have to enable it in order to roll further.

This patch:
1. Removes content disposition sniffing from content process since it
   crashes renderer with document channel.
2. Merges all page-related handlers in a single `PageHandler` and
   serializes network events wrt the `Page.frameAttached` event.

The serialization mentioned in (2) is necessary: frame attachment is
reported from the content process, and network events are reported from
the browsers process. This is an inherent race, that becomes exposed by
the document channel.

On a side note, (2) makes it possible to synchronously report all
buffered events in `SimpleChannel` (cc offline discussion with @dgozman
that highlighted an unsighty approach that we currently employ there: reporting
events in a subsequent microtask.)

References #3995
2020-10-06 00:15:24 -07:00
Dmitry Gozman
e403fd3912
test: update fixtures to new syntax (#4063)
- Some simplifications around defineParameter.
- overrideTestFixtures must be chained as well.
2020-10-05 21:40:56 -07:00
Pavel Feldman
0db09f8ed4
test: roll test runner to 0.9.20 (#4062) 2020-10-05 17:03:24 -07:00
Thomas Chaplin
2df6425254
chore(typo): resolve typo in src/progress.ts (#4041) 2020-10-05 15:21:35 -07:00
Pavel Feldman
857abcfc10
browser(firefox): make pipe work on Windows (#4058) 2020-10-05 10:58:56 -07:00
Dmitry Gozman
a7beaf657c
browser(chromium): roll to 813607 (#4052) 2020-10-05 04:23:35 -07:00
Dmitry Gozman
d31cbc21e5
fix(video): wait for videos when closing persistent context (#4040)
To achieve this, we close all the pages one by one, then wait
for the videos to finish processing, and then close the browser.
2020-10-04 18:18:05 -07:00
Yury Semikhatsky
fbe0fb2977
fix(api.json): do not copy documentation from base class members (#4048) 2020-10-02 19:19:19 -07:00
Dmitry Gozman
e214f795e0
feat(video): support videos in remote browser (#4042) 2020-10-02 17:27:56 -07:00
Dmitry Gozman
133de10a47
browser(firefox): start screencast in existing pages upon setScreencastOptions (#4045)
This makes it work in persistent context.

To achieve this, we have to move screencast logic into PageTarget and
make PageHandler listen to an event.
2020-10-02 17:16:49 -07:00