17 Commits

Author SHA1 Message Date
Dmitry Gozman
1d37a10558
chore: migrate navigations to Progress (#2463) 2020-06-04 16:43:48 -07:00
Dmitry Gozman
d5c992e1db
chore: unify evaluations across browsers even more (#2459)
This moves all the logic around UtilityScript to javascript.ts.
Also uncovers a bug in WebKit where we cannot returnByValue after navigation.
2020-06-03 17:50:16 -07:00
Dmitry Gozman
8e6375f532
chore: reduce the number of evaluate methods, improve types (#2454)
Types can now handle non-trivial tuples with handles inside.
2020-06-03 13:22:05 -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
1e2b46437d
feat(debug): when debugging, use zero as default timeout (#2362)
Otherwise, operations always time out while stepping in debugger.
2020-05-27 13:25:57 -07:00
Dmitry Gozman
27d30fe162
chore: encapsulate more launching logic in BrowserType (#2339) 2020-05-22 16:06:00 -07:00
Dmitry Gozman
aae3f1e75d
feat(default context): support selected options for default context (#2177) 2020-05-21 15:13:16 -07:00
Pavel Feldman
2ede4bce12
chore: further unify launching and connection (#2320) 2020-05-21 09:43:10 -07:00
Pavel Feldman
f9b437a49e
chore: pull common functionality into the BrowserTypeBase (#2312) 2020-05-20 16:30:04 -07:00
Pavel Feldman
e558f0516b
chore: print the launch error message to console (#2304) 2020-05-20 00:10:10 -07:00
Dmitry Gozman
82cab094e8
feat(logging): add logging to websocket transport (#2289) 2020-05-18 19:00:38 -07:00
Dmitry Gozman
e8e761f77f
chore: use internal BrowserOptions to unify browsers (#2230) 2020-05-14 13:22:33 -07:00
Joel Einbinder
dbef7de42a
feat(electron): types (#2231) 2020-05-13 20:51:53 -07:00
Pavel Feldman
414ae0025e
fix(electron): handle in-event await errors (#2207) 2020-05-12 15:28:37 -07:00
Pavel Feldman
3f8dfed67f
feat(electron): add app.firstWindow convenience method (#2195) 2020-05-12 08:43:41 -07:00
Pavel Feldman
ffe7084652
feat(electron): experimental electron support (#2166) 2020-05-11 18:00:33 -07:00