Pavel Feldman
a96d6a7dbb
feat: allow to pick stable channel ( #5817 )
2021-03-13 14:02:39 -08:00
Pavel Feldman
c4578f19f2
chore: organize per-browser dependencies ( #5787 )
2021-03-11 20:22:50 -08:00
Oleg Lebedev
a185da9d14
chore: allow skipping host requirements validation ( #5806 )
2021-03-11 18:46:31 -08:00
Gilberto Saraiva
7fcb89269e
fix(firefox): ensure a exception catch when async send call to a dead object; ( #5805 )
2021-03-11 16:04:08 -08:00
Pavel Feldman
ad69b2af83
chore: unify recorder & tracer uis ( #5791 )
2021-03-11 11:22:59 -08:00
Yury Semikhatsky
ddfdf8a76a
fix: install chromium along with ffmpeg ( #5774 )
2021-03-10 14:01:35 -08:00
Pavel Feldman
fea6669473
feat(trace): highlight action target ( #5776 )
2021-03-10 11:43:26 -08:00
Pavel Feldman
1d6feb2ab8
fix(inspect): highlight on explore input change ( #5726 )
2021-03-09 07:44:10 -08:00
Max Schmitt
d311058245
fix(BrowserContext): race between continue and close ( #5729 )
2021-03-08 19:53:19 -08:00
Pavel Feldman
1a94ea5f6c
chore: refactor trace viewer to reuse snapshot storage ( #5756 )
2021-03-08 19:49:57 -08:00
Pavel Feldman
9e20566244
fix(postData): do not require content type when retrieving post data ( #5736 )
2021-03-05 21:25:14 -08:00
Dmitry Gozman
b3561e6c41
feat(chromium): bump to 857950 ( #5742 )
2021-03-05 18:09:38 -08:00
Yury Semikhatsky
976f35aaf7
fix: update codegen to produce set* instead of with* ( #5738 )
2021-03-05 14:05:48 -08:00
Yury Semikhatsky
26b7db964c
feat(cli): launch-server command ( #5713 )
2021-03-04 10:32:06 -08:00
Pavel Feldman
2af8b8ac74
chore: inspector snapshot nits ( #5676 )
2021-03-03 22:25:34 -08:00
Pavel Feldman
a9238ce2e1
feat(debug): introduce npx playwright debug ( #5679 )
2021-03-03 22:25:14 -08:00
Pavel Feldman
d3eff50386
feat(java): implement codegen ( #5692 )
2021-03-03 14:32:09 -08:00
Dmitry Gozman
d87522f2e6
fix(text selector): revert quoted match to match by text nodes only ( #5690 )
2021-03-03 10:51:10 -08:00
Dmitry Gozman
e4d33f56f4
fix(click): do not retarget from label to control when clicking ( #5683 )
...
And in other carefully considered cases.
2021-03-02 17:29:03 -08:00
Dmitry Gozman
ff243f1af5
fix(addInitScript): make it work on new pages without navigations ( #5675 )
2021-03-02 16:03:48 -08:00
Yury Semikhatsky
2cdb6b49cd
fix(inspector): inlcude sdkLang in the error ( #5682 )
2021-03-02 12:16:04 -08:00
Yury Semikhatsky
1a0ccc1383
feat(webkit): bump to 1443 ( #5665 )
2021-03-02 09:15:07 -08:00
Pavel Feldman
b253ee80c0
chore(snapshot): brush up, start adding tests ( #5646 )
2021-03-01 12:20:04 -08:00
Pavel Feldman
aeb2b2f605
feat(inspector): wire snapshots to inspector ( #5628 )
2021-02-26 14:16:32 -08:00
Andrey Lushnikov
c652794b5a
chore: bump webkit version ( #5637 )
...
Aligning with the latest Safari Technology Preview.
2021-02-26 12:15:15 -08:00
Yury Semikhatsky
4b541749ac
feat(webkit): bump to 1442 ( #5622 )
2021-02-25 23:39:48 -08:00
Pavel Feldman
992f808210
chore(snapshot): implement in-memory snapshot ( #5624 )
2021-02-25 13:09:26 -08:00
Dmitry Gozman
f7e5db4d6e
chore: remove ProgressController.abort ( #5620 )
...
It is used in a few places, but we can do a Promise.race.
This change will allow us to pass existing progress to
multi-step operations.
2021-02-25 10:00:54 -08:00
Pavel Feldman
2ff6d54f26
chore: extract snapshotter from trace viewer ( #5618 )
2021-02-25 09:33:32 -08:00
Pavel Feldman
af89ab7a6f
chore: make trace server generic ( #5616 )
2021-02-25 08:25:52 -08:00
Pavel Feldman
f72b098a04
chore: encapsulate parsed snapshot id in the trace viewer ( #5607 )
2021-02-24 19:29:16 -08:00
Dmitry Gozman
ca8998b11e
feat(log): prepend browser pid to browser logs ( #5569 )
...
To differentiate between multiple browsers.
2021-02-24 19:21:47 -08:00
Pavel Feldman
5ae2661134
chore: simplify overrides management in trace viewer ( #5606 )
2021-02-24 18:38:04 -08:00
Dmitry Gozman
0102e080f6
fix(text selector): make quoted selector match by text nodes ( #5603 )
...
This change turns quoted match to be case-sensitive (as before),
but not strictly full-string for the whole element's text.
This is a fix for a case where element contains text nodes and child elements:
```html
<div>text1<span>child node</span>text2</div>
```
We now match this div by `text="text1"` and `text="text2"`.
2021-02-24 16:32:38 -08:00
Pavel Feldman
8906ba332c
chore: spell overridden ( #5605 )
2021-02-24 15:11:34 -08:00
Pavel Feldman
c91159f3f7
chore: make stack filtering playwright dev-friendly ( #5604 )
2021-02-24 14:33:08 -08:00
Pavel Feldman
6bf3fe8432
chore: make trace model a class ( #5600 )
2021-02-24 14:22:34 -08:00
Pavel Feldman
f71bf9a42a
chore: move trace viewer into server ( #5597 )
2021-02-24 13:39:51 -08:00
Pavel Feldman
5fb77935ee
chore: move logic from sw to server ( #5582 )
2021-02-24 11:52:59 -08:00
Max Schmitt
070cfdcdb8
fix(inspector): skip stack trace playwright/src lines only under tests ( #5594 )
2021-02-24 11:34:48 -08:00
Max Schmitt
fefe37e96f
fix(inspector): stacktrace with browser specific NPM package ( #5589 )
2021-02-24 08:08:27 -08:00
Pavel Feldman
48c237b3cf
chore: move trace to server ( #5565 )
2021-02-23 22:08:14 -08:00
Joel Einbinder
8ef6cb731e
feat(codegen): use the name attribute for more elements ( #5376 )
2021-02-23 16:24:45 -08:00
Pavel Feldman
096ddab972
fix(inspector): hide drawer when recording ( #5548 )
2021-02-22 15:35:38 -08:00
Dmitry Gozman
b42c3690d3
fix(codegen): replace html lib with createElement ( #5531 )
...
We are not using html that much, since most of our UI moved
to the Recorder App. Getting rid of `innerHTML` assignment
fixes the TrustedTypes issue.
2021-02-22 11:38:49 -08:00
Andrey Lushnikov
eb9c8ce20c
feat(chromium): roll Chromium to Dev @ Feb 19, 2021 ( #5536 )
2021-02-22 11:17:55 -08:00
Pavel Feldman
6ec77dca9d
fix(inspector): fix the wait for event error rendering ( #5517 )
2021-02-20 14:36:19 -08:00
Yury Semikhatsky
1e327d4cb2
fix(bindings): unflake TestBrowserContextExposeFunction.shouldWork in java ( #5532 )
2021-02-19 18:58:32 -08:00
Pavel Feldman
600f731a67
feat(inspector): render api names from metainfo ( #5530 )
2021-02-19 18:12:33 -08:00
Pavel Feldman
f154a827c5
feat(inspector): send api names along with metainfo ( #5518 )
2021-02-19 16:21:39 -08:00
Dmitry Gozman
46c8c29f7a
fix(logs): restore pw:browser logs after launch has finished ( #5527 )
2021-02-19 16:09:38 -08:00
Yury Semikhatsky
5f9acfaccb
feat(webkit): bump to 1436 ( #5513 )
2021-02-19 13:47:47 -08:00
Zev Isert
cbcc609fa1
fix: return non-secure cookies with HTTPS URLs ( #5507 )
...
Cookies have a "Secure" attribute which tells the browsers
that a given cookie should only be sent via HTTPS. In it's
absense "Secure" is falsy and these cookies should be sent
with both HTTP and HTTPS requests. Playwright now returns
only the "Non-Secure" cookies for HTTP URLs, and both
"Secure" and "Non-Secure" cookies for HTTPS URLs.
Fixes #5504
2021-02-19 11:50:59 -08:00
Pavel Feldman
bb2b29631a
feat(inspector): pause on page/context close ( #5319 )
2021-02-19 09:33:24 -08:00
Dmitry Gozman
8a9048c2b5
feat(inspector): selector input ( #5502 )
2021-02-19 07:25:08 -08:00
Pavel Feldman
15833ee039
feat(inspector): render params and durations in log ( #5489 )
2021-02-17 22:10:13 -08:00
Dmitry Gozman
da135c2abb
fix(trace viewer): follow up with recent instrumentation changes ( #5488 )
...
- List all actions we are interested in
- Fix timeline hover flicker
- Extract tabbed pane component
- Preview snapshots without clicking on the action
2021-02-17 17:51:57 -08:00
Pavel Feldman
3248c2449c
feat(inspector): collapse completed items ( #5484 )
2021-02-17 17:28:02 -08:00
Dmitry Gozman
dc51536bca
feat(waitForResponse): print regex pattern when waiting for request/response ( #5485 )
2021-02-17 15:11:23 -08:00
Pavel Feldman
b2227c1bcf
feat(inspector): allow selecting file ( #5483 )
2021-02-17 14:05:41 -08:00
Naresh
cc749fe679
fix(android): added recent apps button ( #5331 )
2021-02-16 19:37:46 -08:00
Pavel Feldman
30e68f6d1f
chore: simplify code generation ( #5466 )
2021-02-16 18:13:26 -08:00
Andrey Lushnikov
b6bd7c0d6a
feat(chromium): roll Chromium to r851527 ( #5434 )
...
Fixes #5197
2021-02-16 14:21:47 -08:00
Andrey Lushnikov
f2b25fe6bd
fix: do not rely on $PATH when resolving executables ( #5475 )
...
Since CRON jobs reset $PATH to a very basic one, we should
use only direct paths to system executables.
Fixes #5469
2021-02-16 10:23:38 -08:00
Andrey Lushnikov
6b40d75d03
fix: allow setting input files for detached <input> elements ( #5467 )
...
Fixes #5403
2021-02-16 10:22:46 -08:00
Pavel Feldman
0c7da44465
test(inspector): add some tests ( #5461 )
2021-02-15 08:32:13 -08:00
Dmitry Gozman
1f3449c7da
fix(download): do not stall BrowserContext.close waiting for downloads ( #5424 )
...
We might not ever get the "download finished" event when closing the context:
- in Chromium, for any ongoing download;
- in all browsers, for failed downloads.
This should not prevent closing the context. Instead of waiting for the
download and then deleting it, we force delete it immediately and reject
any promises waiting for the download completion.
2021-02-14 16:46:26 -08:00
Pavel Feldman
8b9a2afd3d
feat(inspector): render errors ( #5459 )
2021-02-13 22:13:51 -08:00
Pavel Feldman
ae2ffb3fb9
feat(inspector): instrument wait for event ( #5457 )
2021-02-13 20:31:06 -08:00
Pavel Feldman
ecd15e6175
fix(inspector): restore point highlight ( #5455 )
2021-02-12 22:06:45 -08:00
Pavel Feldman
0782b25272
test: fix recorder downloads test ( #5454 )
2021-02-12 20:26:22 -08:00
Pavel Feldman
3c877374c7
feat: add replay log ( #5452 )
2021-02-12 18:53:46 -08:00
Dmitry Gozman
ac1599cc2c
fix(registry): handle relative registry path ( #5406 )
...
We get relative registry path when PLAYWRIGHT_BROWSERS_PATH or HOME is relative.
In this case, it would be good to resolve to the same absolute path
during installation and execution, and we can usually do that using INIT_CWD.
2021-02-12 11:12:06 -08:00
Pavel Feldman
aef052aecc
chore: pause on input in pwdebug mode ( #5427 )
2021-02-12 10:11:30 -08:00
Dmitry Gozman
3e7b8e3d74
test: add basic end-to-end driver test ( #5426 )
...
- Introduce internal "out of process" start()/stop() mode.
- This mode is used both in regular tests and installation tests.
- Emulate basic driver installation, browser download and running.
2021-02-12 09:05:32 -08:00
Pavel Feldman
449adfd3ae
chore(recorder): move recording output into the gui app ( #5425 )
2021-02-11 17:46:54 -08:00
Dmitry Gozman
99f8e1cf63
docs: document Android and friends ( #5415 )
...
These are experimental, currently available through `_android`.
2021-02-11 10:31:57 -08:00
Andrey Lushnikov
6113d4d50d
feat(chromium): roll Chromium to r846621 ( #5413 )
2021-02-11 07:43:43 -08:00
Joel Einbinder
d8f637c239
chore(typescript): enable esModuleInterop ( #5409 )
2021-02-11 06:36:15 -08:00
Pavel Feldman
6576bd8b31
chore: move before/after action instrumentation into dispatcher ( #5416 )
2021-02-10 21:55:46 -08:00
Pavel Feldman
6e6e36b565
chore: move progress log into the metadata ( #5411 )
2021-02-10 21:50:29 -08:00
Pavel Feldman
a164f2a810
chore: make instrumentation multiplexing proxy-based ( #5410 )
2021-02-10 21:44:22 -08:00
Pavel Feldman
a06cf70d28
chore: pass parsed stack in metainfo ( #5407 )
2021-02-10 18:52:28 -08:00
Joel Einbinder
dca70abbd3
feat(chromium): connect to a browser over cdp ( #5207 )
2021-02-10 14:00:02 -08:00
Yury Semikhatsky
a8ebe4d888
fix(screencast): support viewport with odd dimensions ( #5399 )
2021-02-10 13:37:27 -08:00
Dmitry Gozman
b4b14eab69
chore: refactor actionability checks ( #5368 )
2021-02-10 12:36:26 -08:00
Dmitry Gozman
38209c675c
fix(selector generator): correct nth-match, remove label treatment, performance ( #5388 )
...
- Remove label retargeting, as it does not play nicely with recorder.
- nth-match() is now correctly chained.
- Performance improvements around parent selectors and regex text matches.
2021-02-10 12:31:50 -08:00
Dmitry Gozman
78ab2955f3
fix(isVisible): do not wait for the selector to be resolved ( #5393 )
2021-02-10 07:12:43 -08:00
Dmitry Gozman
6a98241ac5
feat(selectors): speed up text selector ( #5387 )
...
- Do not check children when parent does not contain the text we look for.
- Minor caching improvements in evaluator.
This gives up to 5X performance boost on text-heavy pages.
2021-02-09 21:31:46 -08:00
Pavel Feldman
2e01fbdbec
chore: introduce instrumentation api ( #5385 )
2021-02-09 14:44:48 -08:00
Pavel Feldman
0652f3251f
chore: introduce sdk object base class ( #5370 )
2021-02-09 09:00:00 -08:00
Dmitry Gozman
0871a9cfd9
feat(codegen): improve selector generation ( #5364 )
...
- Snap to buttons, inputs, selects, etc.
- Try `<label>` selector in addition to the element.
- Use parent selectors when needed.
- Remove xpath fallback as it should be covered with css.
2021-02-08 21:53:17 -08:00
Dmitry Gozman
002d8ef5a7
chore: remove Progress.aborted ( #5363 )
...
Most places use Progress.cleanupWhenAborted instead.
2021-02-08 17:33:01 -08:00
Pavel Feldman
d49a1d8174
chore: kill electron process on ctrl+c ( #5366 )
2021-02-08 16:04:15 -08:00
Andrey Lushnikov
d499cf08d1
refactor: remove browserPaths in favor of Registry class ( #5318 )
...
This patch introduces a new Registry class that incapsulates
all logic regarding browsers and their paths.
Fixes #5278
2021-02-08 16:02:49 -08:00
Pavel Feldman
6680713e84
chore: don't reuse recorder app profile ( #5365 )
2021-02-08 16:02:23 -08:00
Dmitry Gozman
6d56a110ca
feat(proxy): throw when socks proxy is used with auth ( #5358 )
2021-02-08 12:07:45 -08:00
Yury Semikhatsky
bb0af314ba
fix(video): set default size to fit into 800x800 ( #5333 )
2021-02-08 10:59:48 -08:00
Max Schmitt
da4304a05c
chore: run recorder app in no sandbox ( #5345 )
2021-02-08 07:38:24 -08:00
Dmitry Gozman
983e04374a
chore: fix build/packaging for recorder and traceviewer ( #5338 )
2021-02-05 16:19:09 -08:00