mirror of https://github.com/grpc/grpc-web.git
Update roadmap
This commit is contained in:
parent
ce8aa02c7a
commit
9fe75bd619
|
@ -16,7 +16,24 @@ everything, we also need keep the balance between creating a reusable and stable
|
||||||
open-source solution and meeting those requirements unique to Google's Web applications
|
open-source solution and meeting those requirements unique to Google's Web applications
|
||||||
(such as search).
|
(such as search).
|
||||||
|
|
||||||
## Roadmap Features (in no particular order)
|
## Roadmap Features
|
||||||
|
|
||||||
|
### TypeScript Codebase (2024)
|
||||||
|
Migrate the codebase to TypeScript and update the related toolchains (incl. remove
|
||||||
|
dependency on `closure-compiler`). Enhance overall TypeScript support.
|
||||||
|
|
||||||
|
### Streaming Support
|
||||||
|
|
||||||
|
Enhance Fetch/streams support (e.g. cancellation support) and improve runtime
|
||||||
|
support, including service workers.
|
||||||
|
|
||||||
|
See streaming roadmap [here](streaming-roadmap.md).
|
||||||
|
|
||||||
|
### Bidi Streaming
|
||||||
|
|
||||||
|
We plan to leverage [WebTransport](https://web.dev/webtransport/) for bi-directional streaming.
|
||||||
|
|
||||||
|
Also see the dedicate road-map doc on [bidi streaming](streaming-roadmap.md).
|
||||||
|
|
||||||
### Non-Binary Message Encoding
|
### Non-Binary Message Encoding
|
||||||
|
|
||||||
|
@ -28,22 +45,6 @@ For Google's Web applications (e.g. gmail), we use a JSON like format which is
|
||||||
comparable to JSON in efficiency but also very compact in both the message size
|
comparable to JSON in efficiency but also very compact in both the message size
|
||||||
and code size.
|
and code size.
|
||||||
|
|
||||||
### Streaming Support
|
|
||||||
|
|
||||||
Currently the gRPC-Web client library uses XHR to ensure cross-browser support
|
|
||||||
and to support platforms such as React-Native.
|
|
||||||
|
|
||||||
We do plan to add fetch/streams support at some point, which is more efficient
|
|
||||||
for binary streams and incurs less memory overhead on the client-side.
|
|
||||||
|
|
||||||
However, fetch still has certain gaps compared to XHR, most notably the lack of
|
|
||||||
cancellation support. Progressing events, I/O event throttling are other
|
|
||||||
concerns.
|
|
||||||
|
|
||||||
### Bidi Streaming
|
|
||||||
|
|
||||||
We plan to leverage [WebTransport](https://web.dev/webtransport/) for bi-directional streaming. Also see the dedicate road-map doc on [bidi streaming](streaming-roadmap.md).
|
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
|
|
||||||
We plan to publish a comprehensive guideline doc on how to create secure Web
|
We plan to publish a comprehensive guideline doc on how to create secure Web
|
||||||
|
@ -71,11 +72,6 @@ frameworks such as Angular.
|
||||||
Note: Dart gRPC will use gRPC-Web as the underlying implementation on the
|
Note: Dart gRPC will use gRPC-Web as the underlying implementation on the
|
||||||
Dart Web platform.
|
Dart Web platform.
|
||||||
|
|
||||||
### TypeScript Support
|
|
||||||
|
|
||||||
We now have experimental TypeScript Support! See the main README for more
|
|
||||||
information.
|
|
||||||
|
|
||||||
### Non-Closure compiler support
|
### Non-Closure compiler support
|
||||||
|
|
||||||
With the addition of CommonJS style imports, gRPC-Web client stubs can now be
|
With the addition of CommonJS style imports, gRPC-Web client stubs can now be
|
||||||
|
|
|
@ -8,10 +8,10 @@ This document describes the road-map for gRPC-Web to support different streaming
|
||||||
## Server-streaming
|
## Server-streaming
|
||||||
|
|
||||||
We will keep improving server-streaming in the following areas:
|
We will keep improving server-streaming in the following areas:
|
||||||
* Fetch cancellation support - 2023
|
* Fetch cancellation support - 2024
|
||||||
* Finalizing keep-alive support (via Envoy) - 2023+
|
* Performance improvements and whatwg Fetch/streams support, including service workers - 2024
|
||||||
* Performance improvements and whatwg Fetch/streams support, including service workers - 2023+
|
* Finalizing keep-alive support (via Envoy) - 2024+
|
||||||
* Addressing runtime behavior gaps between Fetch and XHR - 2023+
|
* Addressing runtime behavior gaps between Fetch and XHR - 2024+
|
||||||
|
|
||||||
## Client-streaming and half-duplex streaming
|
## Client-streaming and half-duplex streaming
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue