Dmitry Gozman
cd220daa83
chore: move src files to server ( #3593 )
2020-08-24 06:51:51 -07:00
Dmitry Gozman
f4e8f34c96
chore: move chromium to src/server/chromium, enfore installer deps ( #3582 )
2020-08-22 15:46:42 -07:00
Dmitry Gozman
6fe1cd9812
chore: move protocol files to src/protocol ( #3571 )
2020-08-21 18:46:11 -07:00
Dmitry Gozman
57e8617474
chore: refactor impl-side events to be per-class ( #3569 )
2020-08-21 16:26:33 -07:00
Dmitry Gozman
eab5ff4eae
chore(rpc): use channels types in dispatchers ( #3549 )
...
This ensures we actually implement channels as intended.
For example, this change found an issue with Route.fulfill.
2020-08-20 11:25:33 -07:00
Dmitry Gozman
63a2c673b5
chore: align SerializedAXNode with rpc protocol AXNode ( #3522 )
2020-08-18 20:25:03 -07:00
Dmitry Gozman
20c6b85178
chore: remove route/unroute from the server side ( #3518 )
...
We only use a global "intercept all requests" handler on
page and browser context, instead of granular ones.
2020-08-18 17:34:04 -07:00
Dmitry Gozman
aeadf50165
chore: use HeadersArray instead of Headers object on the server side ( #3512 )
...
This simplifies implementation and avoids multiple conversions.
Also adding some tests around lowercase and wrong types.
2020-08-18 15:38:29 -07:00
Dmitry Gozman
58fc6b4003
chore: align some server-side methods with rpc calls ( #3504 )
...
- Never write to console on the server side - we use stdout for
communication. This includes logPolitely and deprecate.
- Pass undefined instead of null in some BrowserContext methods.
- Use explicit _setFileChooserIntercepted instead of on/off magic.
2020-08-17 16:19:21 -07:00
Dmitry Gozman
bc23324878
chore: remove apiName plumbing and some unused methods from server side ( #3481 )
...
We append apiName where needed on the client instead.
2020-08-14 18:25:32 -07:00
Dmitry Gozman
244c2f37b6
feat(rpc): make sure filechooser is only intercepted when needed ( #3482 )
...
So that user can choose a file manually in headful mode.
2020-08-14 18:24:36 -07:00
Dmitry Gozman
3bd97776b8
feat(rpc): do not use server types and events in rpc/client ( #3219 )
...
This change removes almost all dependencies from rpc/client
to the rest of the project. The last ones would be utilities
like helper, converters, etc.
2020-07-29 17:26:59 -07:00
Dmitry Gozman
6cb1e03713
feat(rpc): disallow deps into rpc client from outside ( #3199 )
...
For this, common converters are extracted from rpc serializers.
2020-07-28 15:33:38 -07:00
Dmitry Gozman
b1a5a02154
feat(rpc): client-side parameters validation ( #3069 )
2020-07-22 18:05:07 -07:00
Dmitry Gozman
1aee8dfc7c
feat(rpc): align types/guids in the protocol with their pdl definition ( #3079 )
...
This makes the protocol self-explanatory, and avoids silly conversions
in codegenerators, e.g. cdpSession <-> CDPSession.
2020-07-22 10:37:21 -07:00
Dmitry Gozman
ced0bc2d1b
api: make clear the use of null in page.emulateMedia ( #3078 )
...
We can pass null to disable emulating particular feature.
This change updates the docs and rpc protocol accordingly.
2020-07-21 18:56:41 -07:00
Dmitry Gozman
3dead4c8d1
feat(rpc): remove last union types from the protocol ( #3059 )
2020-07-21 12:44:30 -07:00
Pavel Feldman
99658c2d32
feat(bringToFront): enable on all browsers ( #3052 )
2020-07-21 09:36:54 -07:00
Dmitry Gozman
2d59a8f9c2
feat(rpc): remove some union types ( #3058 )
2020-07-21 08:26:48 -07:00
Dmitry Gozman
5848ed8f41
feat(rpc): introduce protocol.pdl ( #3054 )
...
We now generate channels.ts from the protocol definition. There are still some shortcomings,
like union types - these will be addressed in follow ups.
2020-07-20 17:38:06 -07:00
Dmitry Gozman
29504c0824
feat(rpc): make SerializedValue format pdl-friendly ( #3007 )
...
This avoids sum types and instead uses different fields
for different types.
2020-07-19 19:46:19 -07:00
Dmitry Gozman
d8bedd851d
chore: explicitly type SerializedArgument, fix rpc dispatchEvent ( #2988 )
...
We now have types for SerializedValue/SerializedArgument. This will
allow us to avoid double parse/serialize for evaluation arguments/results.
Drive-by: typing exposed a bug in ElementHandle.dispatchEvent().
2020-07-17 09:53:13 -07:00
Dmitry Gozman
198ecee875
api(exposeBinding): allow handles in the binding result ( #2970 )
2020-07-15 20:05:11 -07:00
Dmitry Gozman
aa4c893b09
feat(rpc): implement waitForNavigation on the client ( #2949 )
...
Drive-by: fix electron issues, exposed by the test using
waitForNavigation.
Drive-by: mark some tests skip(CHANNEL) that were mistakenly
marked skip(USES_HOOKS).
2020-07-15 18:48:19 -07:00
Dmitry Gozman
7f6171579b
feat(rpc): use headers array in the protocol ( #2959 )
2020-07-15 13:21:21 -07:00
Dmitry Gozman
2d5c0328cd
feat(rpc): return objects for every protocol command ( #2950 )
...
For future extensibility, returning objects with fields instead
of plain strings or channels.
2020-07-14 18:26:50 -07:00
Dmitry Gozman
9fd30e58e2
feat(rpc): ensure feature-detection works as before ( #2898 )
...
For this, some tests are migrated from skip() to feature detection,
like our users would do.
2020-07-13 15:26:09 -07:00
Pavel Feldman
631f76df75
chore(rpc): remove union types from page and handles ( #2912 )
2020-07-10 15:39:11 -07:00
Pavel Feldman
c89c30e333
fix(popup): do not report frameless pages ( #2910 )
2020-07-10 13:15:39 -07:00
Dmitry Gozman
a91ec9a15d
feat(rpc): pass more tests ( #2896 )
...
Includes coverage, tracing and misc close() tests.
2020-07-09 15:33:01 -07:00
Pavel Feldman
6bbe7eb006
chore(rpc): inline options parameter in all rpc channels ( #2842 )
2020-07-06 10:04:09 -07:00
Pavel Feldman
c15dc94f8e
chore(rpc): explicitly create page dispatcher ( #2799 )
2020-07-01 18:36:09 -07:00
Pavel Feldman
95538e73e7
chore(rpc): move classes around, fix tests, respect dispatcher scopes ( #2784 )
2020-06-30 22:21:17 -07:00
Pavel Feldman
87516cb3a3
chore(rpc): make dispatcher creation and lookup explicit ( #2783 )
2020-06-30 21:30:39 -07:00
Pavel Feldman
e29f7b9f58
chore(rpc): support workers, file chooser, browser server ( #2766 )
2020-06-30 10:55:11 -07:00
Pavel Feldman
4e94bdabfd
chore(rpc): serialize rpc into actual wire string ( #2740 )
2020-06-27 11:10:07 -07:00
Pavel Feldman
3e33523ee3
chore(rpc): clear the browsercontext test spec ( #2739 )
2020-06-26 22:38:21 -07:00
Pavel Feldman
db12ddebb3
chore(rpc): clear the page test spec ( #2736 )
2020-06-26 21:22:03 -07:00
Pavel Feldman
6393407a6a
chore(rpc): support downloads, dialogs, persistent context ( #2733 )
2020-06-26 17:24:21 -07:00
Pavel Feldman
02f7501725
chore(rpc): strongly-type the initializer, remove __init__ phase ( #2729 )
2020-06-26 12:28:27 -07:00
Pavel Feldman
18d6140d3e
chore(rpc): support routes and bindings ( #2725 )
2020-06-26 11:51:47 -07:00
Pavel Feldman
71618a9e2b
chore(rpc): implement input, a11y, console ( #2722 )
2020-06-25 18:01:18 -07:00
Pavel Feldman
bab6833232
chore: introduce the experimental rpc implementation ( #2720 )
2020-06-25 16:05:36 -07:00