Pavel Feldman
0b8c33ee75
fix(ECONRESET): fix it once and for all ( #4258 )
2020-10-27 11:09:41 -07:00
Pavel Feldman
c97af3ee91
fix(listeners): avoid "too many listeners" problem safely ( #4223 )
2020-10-23 10:38:26 -07:00
Pavel Feldman
c4fbc6436a
Revert "fix(listeners): avoid "too many listeners" problem ( #3931 )" ( #4222 )
...
This holds on to process / handlers forever.
2020-10-23 10:04:55 -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
ce7aa7a608
feat(firefox): migrate to the pipe channel ( #4068 )
2020-10-06 14:40:09 -07:00
Dmitry Gozman
18809b3902
fix(listeners): avoid "too many listeners" problem ( #3931 )
...
We currently spawn a process per page when recording
video in Chromium. This triggers "too many listeners" on the
process object once you have enough pages open.
2020-09-22 13:45:57 -07:00
Pavel Feldman
c83b2da54f
chore: revert isDevMode into isUnderTest ( #3785 )
2020-09-06 21:36:22 -07:00
Yury Semikhatsky
8ec55e1fb2
feat(screencast): use ffmpeg to produce webm in chromium ( #3668 )
2020-08-31 08:43:14 -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
cd220daa83
chore: move src files to server ( #3593 )
2020-08-24 06:51:51 -07:00
Dmitry Gozman
655013d025
chore: move shared utilities to src/utils ( #3575 )
2020-08-22 07:07:13 -07:00
Dmitry Gozman
9790ea5b5d
chore: align more server-side options with rpc protocol ( #3506 )
...
This touches:
- noDefaultViewport;
- ignoreAllDefaultArgs;
- env;
- validateXYZ logic that was copying objects - we do not need that anymore;
- shuffles some converters closer to their usage.
2020-08-18 09:37:40 -07:00
Dmitry Gozman
1e9c0eb705
chore: remove logger infrastructure from server side ( #3487 )
...
We do not implement LoggerSink on the server, so we can
use a simple debugLogger.
2020-08-17 14:12:31 -07:00
Dmitry Gozman
cefb1b9727
feat(rpc): run fixtures.jest.js with channel ( #3227 )
...
Also, introduce setupInProcess wrapper to be used for in-process rpc.
2020-07-30 10:22:28 -07:00
Dmitry Gozman
91e1a25f34
feat(rpc): gracefully close browsers in server process on disconnect ( #3005 )
2020-07-17 16:14:23 -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
Pavel Feldman
c220fc7f46
chore(logs): rework logs for simplicity ( #2592 )
2020-06-16 17:11:19 -07:00
Pavel Feldman
9aa9d6bc1d
feat(downloads): accept downloads in persistent, allow specifying the downloadsPath ( #2503 )
2020-06-08 21:45:35 -07:00
Dmitry Gozman
1d37a10558
chore: migrate navigations to Progress ( #2463 )
2020-06-04 16:43:48 -07:00
Dmitry Gozman
d980ed7e7e
chore: introduce Progress concept ( #2350 )
...
A progress roughly corresponds to an api call. It is used:
- to collect logs related to the call;
- to handle timeout;
- to provide "cancellation token" behavior so that cancelable process can either
early-exit with progress.throwIfCanceled() or race against it with progress.race();
- to ensure resources are disposed in the case of a failure
with progress.cleanupWhenCanceled();
- (possibly) to log api calls if needed;
- (in the future) to augment async stacks.
2020-05-29 14:39:34 -07:00
Dmitry Gozman
057ae14adc
feat: make browserServer.kill() wait for the process to exit ( #2375 )
...
This ensures we cleaned everything up.
2020-05-27 19:59:03 -07:00
Dmitry Gozman
27d30fe162
chore: encapsulate more launching logic in BrowserType ( #2339 )
2020-05-22 16:06:00 -07:00
Dmitry Gozman
55d47fd48f
chore: unify launching server between browser types ( #2338 )
2020-05-22 07:03:42 -07:00
Pavel Feldman
2ede4bce12
chore: further unify launching and connection ( #2320 )
2020-05-21 09:43:10 -07:00
Dmitry Gozman
48440f7ed7
test: unflake fixtures test ( #2313 )
...
Drive-by: ensure we call onkill before manually exiting the process.
2020-05-20 14:58:27 -07:00
Pavel Feldman
e558f0516b
chore: print the launch error message to console ( #2304 )
2020-05-20 00:10:10 -07:00
Pavel Feldman
9895cd0a31
chore: optionally create downloads folder ( #2188 )
2020-05-11 14:42:13 -07:00
Joel Einbinder
671cfa0a54
fix(types): support objects with typed keys and values ( #1752 )
...
There are a few places in the API where we use objects as maps. This patch adds them to docs and the types.
For `env`, we accept booleans and numbers as well because they are often used for their string values.
2020-04-23 14:45:57 -07:00
Pavel Feldman
5b085fdf03
feat(logger): introduce context-level logger ( #1896 )
2020-04-20 23:24:53 -07:00
Pavel Feldman
1f43ae692f
feat(logging): introduce logger sink api ( #1861 )
2020-04-20 07:52:26 -07:00
Pavel Feldman
75571e8eb8
feat(downloads): support downloads on cr and wk ( #1632 )
2020-04-02 17:56:14 -07:00
Joel Einbinder
3d6d9db44a
fix: wait for the process to close when closing the browser ( #1629 )
2020-04-02 16:57:12 -07:00
Pavel Feldman
e241c1bef8
chore: remove web mode ( #1625 )
2020-04-01 14:42:47 -07:00
Pavel Feldman
c0c9b7f137
test: make debugp collect IO (take 2) ( #1493 )
2020-03-23 15:08:02 -07:00
Pavel
1ddf05113b
Revert "test: make debugp collect IO ( #1485 )"
...
This reverts commit b1bebdad2e22daf2a49a24d2134905650d8e264c.
2020-03-23 13:48:22 -07:00
Pavel Feldman
b1bebdad2e
test: make debugp collect IO ( #1485 )
2020-03-23 13:42:51 -07:00
Pavel Feldman
e9c14770d3
fix(webkit): fix remaining tests on windows ( #905 )
2020-02-07 17:39:32 -08:00
Pavel Feldman
42c2cfc7cc
fix(pipe): sort out pipes on platforms ( #895 )
2020-02-07 11:48:55 -08:00
Dmitry Gozman
c04ad140f3
feat(launcher): gracefully close browser on sigint ( #650 )
2020-01-28 13:07:53 -08:00
Dmitry Gozman
be19ae5e67
feat(browserApp): kill and onclose ( #641 )
2020-01-24 15:58:04 -08:00
Dmitry Gozman
3269358ac8
feat(webkit): covert pipe to websocket when asked ( #570 )
2020-01-22 17:42:10 -08:00
Dmitry Gozman
9b46014493
fix(launcher): ensure that local browser launch waits for process exit ( #489 )
2020-01-16 09:32:58 -08:00
Dmitry Gozman
a1d1f26fb7
chore: more strict type checking ( #466 )
2020-01-13 13:33:25 -08:00
Dmitry Gozman
28bad69093
fix(server): tidy up BrowserServer.close methods ( #426 )
2020-01-08 13:55:38 -08:00
Dmitry Gozman
6318b1de75
chore: move server-side code to src/server ( #411 )
2020-01-07 15:27:45 -08:00