cjihrig
c3d7453a84
grpc-js: handle multiple messages in single 'data' event
...
This commit adds support for receiving multiple messages in a
single 'data' event from the underlying HTTP2 stream. It also
handles potential out of order messages due to asynchronous
deserialization of messages.
2019-06-09 18:12:24 -07:00
murgatroid99
438bfdd8a2
Update grpc-js to 0.4.3
2019-06-07 10:03:44 -07:00
Michael Lumish
5b187ba5e8
Merge pull request #908 from murgatroid99/pure_js_goaway_handling
...
Pure JS: Fixed two bugs with goaway handling
2019-06-07 10:02:13 -07:00
murgatroid99
1ee218c8bd
Fix tests for fixed code, also fix another issue
2019-06-06 10:38:28 -07:00
murgatroid99
9aeca2f01a
Pure JS: Fixed two bugs with goaway handling
2019-06-06 09:48:04 -07:00
cjihrig
31bcaed6e4
grpc-js: destroy connections when session begins
...
When the gRPC server has not been started, incoming connections
can be destroyed on session establishment, which happens before
a stream is created.
2019-06-06 09:39:46 -04:00
cjihrig
ffe59e6edd
grpc-js: fix lint
...
This commit gets `npm run lint` passing again.
2019-06-06 09:33:40 -04:00
Michael Lumish
55d6339bca
Merge pull request #902 from cjihrig/bad-content-type
...
grpc-js: reject invalid Content-Type requests
2019-06-04 15:51:01 -07:00
Michael Lumish
f92e2a3a70
Merge pull request #897 from cjihrig/version-string
...
grpc-js: load semver range from package.json
2019-06-04 12:04:47 -07:00
Michael Lumish
2b1a6756f5
Merge pull request #903 from cjihrig/timeout
...
grpc-js: disable http2 server timeout
2019-06-04 12:04:32 -07:00
Michael Lumish
836966c216
Merge pull request #904 from murgatroid99/grpc_js_0.4.2
...
Bump grpc-js to 0.4.2
2019-06-04 10:52:29 -07:00
Michael Lumish
70d75a5ab4
Merge pull request #900 from murgatroid99/pure-js_0.4.1_fixes
...
Fix custom metadata handling bug
2019-06-04 10:50:05 -07:00
murgatroid99
f6ea3c31f9
Bump grpc-js to 0.4.2
2019-06-04 09:53:07 -07:00
cjihrig
93ea51f116
grpc-js: disable http2 server timeout
...
gRPC has its own mechanisms for timing out a request.
Furthermore, the default timeout was removed from Node.js
Refs: https://github.com/nodejs/node/pull/27558
2019-06-04 12:44:41 -04:00
cjihrig
a4b3a7fbae
grpc-js: reject invalid Content-Type requests
...
This commit implements the following portion of the spec:
If Content-Type does not begin with "application/grpc",
gRPC servers SHOULD respond with HTTP status of
415 (Unsupported Media Type). This will prevent other
HTTP/2 clients from interpreting a gRPC error response,
which uses status 200 (OK), as successful.
2019-06-04 12:02:08 -04:00
murgatroid99
afb7b4a602
Fix dropped messages when multiple arrived in one HTTP/2 frame
2019-06-03 18:21:39 -07:00
murgatroid99
92bed740e8
Fix custom metadata handling bug
2019-06-03 14:47:11 -07:00
Michael Lumish
9c274034d0
Merge pull request #796 from murgatroid99/metadata_options
...
Add metadata options
2019-06-03 10:48:23 -07:00
cjihrig
69d4377dc2
grpc-js: load semver range from package.json
...
This commit loads the required semver range from the package.json
file, instead of hard-coding the string in index.ts.
2019-05-31 16:03:59 -04:00
cjihrig
ea254dfc62
grpc-js: enable incremental compiles
...
This commit enables incremental TypeScript builds.
2019-05-29 15:22:18 -04:00
cjihrig
d7c23b066e
grpc-js: update to typescript@3.5
...
This commit updates to TypeScript, which is supposed to be
faster.
Refs: https://devblogs.microsoft.com/typescript/announcing-typescript-3-5/
2019-05-29 15:18:33 -04:00
Michael Lumish
5689ba720d
Merge pull request #889 from murgatroid99/grpc-js_0.4.1
...
Update grpc-js to 0.4.1
2019-05-29 09:54:04 -07:00
Michael Lumish
5eb17fc559
Merge pull request #887 from murgatroid99/grpc-js_connect_metadata_promise
...
grpc-js: Change how filters access connectivity information
2019-05-29 09:53:51 -07:00
murgatroid99
ffaade2e6f
Update grpc-js to 0.4.1
2019-05-28 16:18:37 -07:00
murgatroid99
45f37f1a9e
Fix missing custom metadata
2019-05-28 10:53:08 -07:00
murgatroid99
477c4a4c18
grpc-js: Change how filters access connectivity information
2019-05-28 10:36:07 -07:00
cjihrig
f30a5d8588
grpc-js: support client cancellation
...
This commit adds client cancellation support and tests for
cancellation and deadlines.
2019-05-20 13:38:35 -04:00
cjihrig
4e0162cf22
grpc-js: skip gulp tasks based on Node version
...
This commit wraps the grpc-js Gulp tasks in a version check
so they only run on supported versions of Node.
2019-05-18 11:25:06 -04:00
cjihrig
be6bdb8c3d
grpc-js: update to gts@1.x.x
...
This commit updates the gts dependency to 1.x.x.
2019-05-17 17:03:04 -04:00
cjihrig
f6689d51a6
grpc-js: update dependencies
...
This commit resolves issues from `npm outdated`. The gts
dependency will be updated separately, as it comes with
significant code churn.
2019-05-17 12:30:42 -04:00
cjihrig
a7372e2b1c
grpc-js: slight cleanup of server imports/exports
...
This commit removes some unnecessary imports and exports
from the server code.
2019-05-17 12:14:27 -04:00
cjihrig
212439eb83
grpc-js: make serdes APIs consistent
...
During initial implementation, the serialize and deserialize
APIs of ServerReadableStream, ServerWritableStream, and
ServerDuplexStream became inconsistent. This commit brings
back consistency.
2019-05-17 11:40:29 -04:00
cjihrig
1aa11525fd
grpc-js: add bidirectional streaming RPC support
...
This commit adds bidi streaming RPC support to the server.
2019-05-16 11:23:54 -04:00
Michael Lumish
3bebc2230a
Merge pull request #859 from cjihrig/client-stream
...
grpc-js: add client streaming RPC support
2019-05-15 10:22:35 -07:00
cjihrig
4857c63d01
grpc-js: simplify ServerReadableStream's deserialize()
...
This commit removes null and undefined checks from deserialize().
2019-05-15 09:08:28 -04:00
cjihrig
e0a30907f9
grpc-js: add setupReadable() to Http2ServerCallStream
...
This commit adds a setupReadable() method to
Http2ServerCallStream. This is used to set up the plumbing
between the HTTP2 stream and the surface readable/bidi
calls.
2019-05-14 15:07:12 -04:00
murgatroid99
904d820bd2
Merge remote-tracking branch 'upstream/grpc@1.20.x' into v1.20_upmerge
2019-05-08 13:32:11 -07:00
cjihrig
b8af8c9474
grpc-js: add client streaming RPC support
...
This commit adds client streaming RPC support.
2019-05-07 14:23:34 -04:00
cjihrig
7aa45eb55e
grpc-js: extract reusable stream decoding logic
...
This commit pulls the stream decoding logic into a separate
class so that it can be reused by the server code.
2019-05-06 13:56:23 -04:00
cjihrig
7009d25593
grpc-js: wrestle with typescript handler types
...
This commit is mindless TypeScript busy work.
2019-05-03 14:49:49 -04:00
cjihrig
ec9e82554b
fixup! grpc-js: support unary and server streaming rpcs
2019-05-03 12:21:41 -04:00
cjihrig
c050bf5ad8
grpc-js: add sendStatus()
...
Based on PR feedback, this commit adds a sendStatus() method to
Http2ServerCallStream. All responses will be funnelled through
this method.
2019-05-02 22:18:20 -04:00
cjihrig
a6e2edce9a
grpc-js: handle http2 backpressure in server
...
This commit adds backpressure handling code to the
ServerWritableStream implementation.
2019-05-02 22:18:20 -04:00
cjihrig
79544366be
grpc-js: support unary and server streaming rpcs
...
This commit adds support for unary and server streaming RPCs.
2019-05-02 21:40:45 -04:00
Michael Lumish
fe82be7f34
Merge pull request #853 from alexander-fenster/patch-1
...
grpc-js: add ServiceError
2019-05-02 17:41:11 -07:00
Alexander Fenster
293ea935f3
grpc-js: add ServiceError
2019-05-02 16:39:01 -07:00
murgatroid99
0937dc9027
Update grpc-js to 0.4.0
2019-05-02 16:17:07 -07:00
Alexander Fenster
fc336307c8
gts fix
2019-05-02 12:56:24 -07:00
Alexander Fenster
6ff835201a
grpc-js: export more types
...
We (`google-gax`) need these two types exported to switch from C-core gRPC.
2019-05-02 12:53:00 -07:00
Michael Lumish
309033f681
Merge pull request #841 from cjihrig/constant
...
grpc-js: don't export private symbol
2019-04-29 12:30:07 -07:00