16 Commits

Author SHA1 Message Date
Max Schmitt
c4eb2d4b1e
chore: move sdkLanguage over to the protocol init call (#8329) 2021-08-20 21:32:21 +02:00
Max Schmitt
ddcdb6d413
chore(protocol): do client hello instead of server hello (#8019) 2021-08-19 17:31:14 +02:00
Max Schmitt
d21a72e7d5
chore: create new Playwright instance when launching server (#6820) 2021-06-01 21:21:24 +02:00
Dmitry Gozman
fff1f3d45c
chore: simplify remote connection protocol (#6164)
This changes the root object from RemoteBrowser to Playwright,
similar to local driver connection. This way, any remote connection
gets a Playwright object.

This also starts reusing PlaywrightServer class, and introduces
`cli run-server` hidden command that runs ws server on the
specified port.

Previous structure:
```
RemoteBrowser
  - browser (using ConnectedBrowser for remote-specific behavior)
  - selectors (special instance for this remote connection)
```

New structure:
```
Playwright
  - ...
  - selectors (special instance for this remote connection)
  - preLaunchedBrowser (using ConnectedBrowser for remote-specific behavior)
```
2021-04-12 11:14:54 -07:00
Pavel Feldman
975519150e
chore: centralize playwright creation, bind context listeners to instance (#5217) 2021-01-29 16:00:56 -08:00
Pavel Feldman
464fdc1800
chore: make recorder a supplement (#5131) 2021-01-24 19:21:19 -08:00
Pavel Feldman
be9bef513e
chore: move recorder to server side (#5128) 2021-01-24 08:44:11 -08:00
Dmitry Gozman
d47fb6a780
feat(cli): build driver and upload to cdn (#4841) 2021-01-05 14:04:47 -08:00
Dmitry Gozman
d40afa2fbf
feat(cli): first few cli commands (#4773)
This sets up cli capabilities and brings in a few commands from playwright-cli.
2020-12-22 14:54:13 -08:00
Pavel Feldman
7fc4b797eb
feat(har): allow saving har for context (#4214) 2020-10-26 14:32:07 -07:00
Dmitry Gozman
0ade6af689
api(trace): introduce artifacts options (#3914)
api(trace): introduce artifacts options

This introduces launch({ artifactsPath }) and newContext({ relativeArtifactsPath, recordTrace }) options.
- artifactsPath option controls the directory where all artifacts go. If not passed, artifacts are not collected.
- relativeArtifactsPath can be used to put context-specific artifacts into a subfolder. If not passed, shared artifactsPath is used.
- recordTrace controls trace recording.

We also expose trace types under playwright/types/trace.d.ts.

In the follow up:
- videos will be put into artifactsPath;
- downloads will be put into artifactsPath, or keep using existing downloadsPath when artifactsPath is not specified.
2020-09-18 11:54:00 -07:00
Dmitry Gozman
01a4060665
chore: move action instrumentation per-context (#3908)
This allows tracing to expose plugin-like api.

This also remove Progress -> ActionMetadata dependency, leaving
Progress a low-level utility.
2020-09-17 09:32:54 -07:00
Pavel Feldman
c83b2da54f
chore: revert isDevMode into isUnderTest (#3785) 2020-09-06 21:36:22 -07:00
Dmitry Gozman
675ce00432
chore: introduce "instrumentation" that is used for debug and trace (#3775) 2020-09-04 16:31:52 -07:00
Dmitry Gozman
5c0f93301d
test: always setUnderTest in index.js, rename to setDevMode (#3662)
Root index.js is only used for local development, so
assuming dev mode there is fine. This way we do not have
to worry about calling setUnderTest early enough.
2020-08-27 21:08:33 -07:00
Dmitry Gozman
a099e941d6
chore: move last rpc files to their place (#3604)
Also update check-deps to be more user-friendly.
2020-08-24 14:48:03 -07:00