Commit Graph

46 Commits

Author SHA1 Message Date
Slavo Vojacek 38e988ea03 fix(grpc-js): Add support for impl type to server.addService 2020-08-31 20:34:14 +01:00
Michael Lumish 7efc5358e3
Merge pull request #1524 from murgatroid99/grpc-js_cancelled_event
grpc-js: Clean up call even if status throws an error
2020-08-19 10:09:53 -07:00
Michael Lumish ddec63af20 grpc-js: Clean up call even if status throws an error 2020-08-04 11:22:18 -07:00
Michael Lumish 52eb0df1f8 grpc-js: Add XdsResolver and corresponding XdsClient behavior 2020-08-03 10:44:28 -07:00
Michael Lumish f4853c13f7 Don't double count sessions when closing 2020-06-09 11:07:20 -07:00
Michael Lumish cb9f96126f grpc-js: server: cull closed sessions from list, check for closed in tryShutdown 2020-06-08 14:44:14 -07:00
Michael Lumish 7625c2becd gts fix 2020-05-13 12:01:07 -07:00
Michael Lumish a53bcb3c97 grpc-js: Add a few basic trace lines to the server 2020-05-13 12:00:22 -07:00
Michael Lumish b6846f0709 Update server to handle default schemes 2020-04-21 10:32:58 -07:00
Michael Lumish 13cc016e4e grpc-js: Use a more structured representation of URIs internally 2020-04-15 18:04:49 -07:00
Michael Lumish 70b2a954e0
Merge branch 'master' into grpc-js_max_message_size 2020-04-13 14:13:03 -07:00
Patrick Remy 53f3daa685
Revert "grpc-js: allow any for linting globally"
This reverts commit 16ec0f0f64 and
replaces tslint-disable statements by eslint-disable.
2020-04-10 11:03:53 +02:00
Patrick Remy 0d927e6872
grpc-js: remove tslint disable statements 2020-04-09 12:10:39 +02:00
Patrick Remy f4bacba9c7
grpc-js: remove unused imports 2020-04-09 12:09:00 +02:00
Patrick Remy b84d2f3b39
grpc-js: run gts fix for src 2020-04-09 11:54:09 +02:00
Patrick Remy 16ec0f0f64
grpc-js: allow any for linting globally
The any type is purposely used. All functions validate their input at runtime.
2020-04-09 11:52:24 +02:00
Michael Lumish 9221fdea24 grpc-js: Add max message size enforcement 2020-04-08 14:37:03 -07:00
Michael Lumish 2f953e4457 grpc-js: Don't wait for TXT record to return DNS lookup result 2020-03-26 16:30:48 -07:00
murgatroid99 96d4d6acba Actually add listening http2 servers to server list 2020-03-05 13:01:43 -08:00
murgatroid99 3cbb46b1f7 Don't explicitly reject any promises 2020-03-05 12:32:08 -08:00
murgatroid99 c1d6bf91bc grpc-js: Use resolver to bind server ports 2020-03-05 09:23:09 -08:00
murgatroid99 4786f4a005 grpc_server_add_(in)secure_port returns 0 on error. Reflect that in bind(Async) 2020-03-02 17:27:46 -08:00
Michael Lumish 846b05fc67
Merge pull request #1184 from murgatroid99/grpc-js_client_interceptors
grpc-js: Client interceptors
2020-02-28 11:17:34 -08:00
murgatroid99 b90dc81b73 Include method name in UNIMPLEMENTED details string 2020-02-20 12:46:59 -08:00
murgatroid99 f0fbe44134 Merge branch 'master' into grpc-js_client_interceptors 2020-02-11 15:31:53 -08:00
murgatroid99 c5428c5733 lint and formatting fixes 2020-01-29 09:56:49 -08:00
murgatroid99 738dbf8f02 Merge branch 'master' into grpc-js_client_interceptors 2020-01-07 10:48:01 -08:00
murgatroid99 54c9e51bcb grpc-js: Add more channel args 2019-11-21 10:41:09 -08:00
murgatroid99 33875dce4a grpc-js: make client interceptors tests pass mostly unmodified 2019-11-14 15:02:24 -08:00
Bjorn Stromberg fc032c0226 grpc-js: Update gts and apply fixes 2019-09-13 12:31:33 +09:00
murgatroid99 201dab7fa8 Improve server-related types exported by grpc-js 2019-07-16 14:15:55 -07:00
cjihrig 7c2bb2a237
grpc-js: don't overwrite existing error codes
This commit causes RPC handlers to default to INTERNAL when
an error occurs, but does not overwrite an existing error
code.
2019-06-25 14:04:21 -04:00
cjihrig 00b091a1b1
grpc-js: shutdown improvements
This commit maintains a Set of all active sessions. This allows
tryShutdown() to gracefully stop the server properly (as
recommended in the Node HTTP2 documentation). The same Set of
sessions also allows forceShutdown() to be implemented.
2019-06-25 14:04:21 -04: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
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
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
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 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 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
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 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 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
cjihrig 62e7f0c85a
grpc-js: define Server API contract
This commit defines the Server API contract, and implements
the Server functionality, minus the actual handling of requests.
2019-04-10 15:35:40 -04:00