### Breaking changes
- Server: Revert changes to flusher interface which accidentally introduced a recursive call to
Flush()
. @johanbrandhorst in #527
- Server: Check flusher interface before calling Flush. @mangas in #479
- Server: Remove
CloseNotify
. @mangas in #478 - Client: Set Content-Length header in NodeHTTPTransport to disable chunked encoding. @MichaelAquilina in #427
- Server: Update grpc-go, golang/protobuf dependencies. @johanbrandhorst in #395
- Server: Add
grpc-status
&grpc-message
as exposed headers. @Globegitter in #489
- Server: Allow non root resources. @mangas in #454
- Client: Fix aborting requests from within a web-worker context. @midan888 in #443
- Client: Fix broken v0.9.3 release (client binaries were not rebuilt prior to npm publish)
- Client: Added grpc-web-fake-transport package.
- Client: Fix global definition in grpc-web UMD build which prevented it from working from within a WebWorker context. @midan888 in #411
- Server: Remove
content-length
response header. @LeonSha in #385 - Server: Don't block on writing to the close notify channel. @devnev in #403
- Documentation: Remove reference to specific release version in grpcwebproxy README. @l4u in #370
- Documentation: Fix up problems present in the
grpc-web-react-example
project. @atecce in #360 - Documentation: Updated the installation instructions of grpcwebproxy. @enmasse in #399
- Server: Ensure headers from wrapped server are forwarded appropriately. @danilvpetrov in #359
- Server: Deny CORS Requests by Default. @jonny-improbable in #158
- Server: Support client certs for backend connections. [@mastersingh24] in #333
- Scoped npm package under the @improbable-eng org; consumers should now
npm install @improbable-eng/grpc-web
.
- Removed built-in support for NodeJS Environments; if you want to use
grpc-web-client
in a NodeJS environment you will need to importgrpc-web-node-http-transport
and specify it as your Default Transport. - The
transport
property passed tounary()
,invoke()
andclient()
should now be an instance of theTransport
interface (was a reference to a factory function which returned aTransport
instance), see #265 for details.
- Client: Added
grpc.setDefaultTransport()
which can be used to specify which Transport is used when none is specified with the request. @jonny-improbable in #265 - Client: Allowed for configuration of XHR and Fetch-based transports and exposed them via the
grpc
namespace. @jonny-improbable in #265 - Client: Don't call callbacks if close() is called. @virtuald in #258
- Client: Export
grpc-web-client
as a UMD Module. @Dig-Doug in #276 - Server: Fix gRPC Web spec violation related to header/trailer names. @ktr0731 in #271
- Server: Add backend_backoff_max_delay flag to grpcwebproxy. @fordhurley in #278
- Server: Add support for specifying a default :authority header for backend calls. @sandersaares in #267
- Server: Prevent leaking goroutines from websocket connections. @amerry in #253
- Server: Add option to increase max message size. @nevi-me in #246
- Server: Switched to assign CAs to correct config property. @jonahbron in #244
- Fix callbacks being invoked after cancellation @mwei0210 in #207
- Fix unhandled promise rejection upon errors in fetch transport @Runar1 in #189
- Fix bug in gprcwebproxy's WebSocket Transport support @bianbian-org in #211
- Fix headers/trailers being lost when grpc-status is non-zero @gunn4r in #226
- Fix gRPC message decoding @ishitatsuyuki in #117
- Update the localhost certificate generation to create certs from a local certificate authority. @absoludity in #169
- Fix memory leak in fetch transport @nathanb21 in #184
- Add abort signal support in fetch transport @Runar1 in #173
- Fix stream terminated by RST_STREAM @MrWinstead in #148
- Make gRPC status codes consistent with gRPC-Go @johanbrandhorst in #150
- React usage examples added @easyCZ in #133
- Added experimental WebSocket transport @MarcusLongmuir in #132
- Refactored client interface to provide a stronger abstraction for alternative Transports (ie: WebSockets) @MarcusLongmuir in #132
- Everything is now exported under a single namespace (
grpc
).