Connect Es Versions Save

The TypeScript implementation of Connect: Protobuf RPC that works.

v1.0.0-rc1

8 months ago

If you are coming from version 0.13.0 or earlier, run npx @connectrpc/connect-migrate@latest to update your dependencies. See here for details.

What's Changed

  • Make @connectrpc/connect a peer dependency and pin the version by @srikrsna-buf in #817
  • Remove deprecated code by @timostamm in #814

Full Changelog: https://github.com/connectrpc/connect-es/compare/v0.13.2...v1.0.0-rc1

v0.13.2

9 months ago

If you are coming from version 0.13.0 or earlier, run npx @connectrpc/connect-migrate@latest to update your dependencies. See here for details.

What's Changed

  • Propagate errors back to the handler by @srikrsna-buf in #751
  • Add defensive check for http2 sessions by @srikrsna-buf in #783
  • Call throw and return on response iterables in the node adaptor by @srikrsna-buf in #775
  • Abort handler signal on error/return by @srikrsna-buf in #786
  • Switch Node.js Headers polyfill to use undici in versions < 18 by @timostamm in #791
  • Set User-Agent in gRPC-web clients on Node.js by @timostamm in #784
  • Add version checks to migration CLI by @paul-sachs in #782

Full Changelog: https://github.com/connectrpc/connect-es/compare/v0.13.1...v0.13.2

v0.13.1

9 months ago

What's Changed

To keep Connect well-maintained and responsive to its users' needs over the long term, we're preparing to donate it to a foundation. (More details on that soon!) To cleanly separate Connect from Buf's other code, we're moving development to the connectrpc GitHub organization and to the connectrpc organization on npmjs.com.

This is the first release that publishes packages with the new @connectrpc scope. To make the switch seamless, we are introducing a small tool that updates all references in your project automatically, @connectrpc/connect-migrate.

The switch is as simple as running a single command:

$ npx @connectrpc/connect-migrate@latest
Scanning... ✓
    1 package.json file
    1 lock file
    5 source files
Updating source files... 
  src/client.ts ✓
  src/server.ts ✓
  src/webclient.ts ✓
Updating packages... ✓
  package.json ✓
Updating lock file... 
  package-lock.json ✓
Old package New package
@bufbuild/connect v0.13.0 @connectrpc/connect v0.13.1
@bufbuild/connect-web v0.13.0 @connectrpc/connect-web v0.13.1
@bufbuild/connect-fastify v0.13.0 @connectrpc/connect-fastify v0.13.1
@bufbuild/connect-node v0.13.0 @connectrpc/connect-node v0.13.1
@bufbuild/connect-next v0.13.0 @connectrpc/connect-next v0.13.1
@bufbuild/connect-express v0.13.0 @connectrpc/connect-express v0.13.1
@bufbuild/protoc-gen-connect-es v0.13.0 @connectrpc/protoc-gen-connect-es v0.13.1
@bufbuild/connect-query v0.4.1 @connectrpc/connect-query v0.4.2
@bufbuild/protoc-gen-connect-query v0.4.1 @connectrpc/protoc-gen-connect-query v0.4.2
@bufbuild/protoc-gen-connect-query-react v0.4.1 @connectrpc/protoc-gen-connect-query-react v0.4.2

Full Changelog: https://github.com/connectrpc/connect-es/compare/v0.13.0...v0.13.1

v0.13.0

9 months ago

What's Changed

This release changes the User-Agent used with gRPC and gRPC-web clients. Previously, the User-Agent was @bufbuild/connect-web, now it is connect-es/0.13.0. Future releases will bump the version number in the User-Agent string.

Enhancements

Bugfixes

New Contributors

Full Changelog: https://github.com/connectrpc/connect-es/compare/v0.12.0...v0.13.0

v0.11.1

10 months ago

What's Changed

Improvements and fixes to the HTTP/2 session management in Node.js

Other changes

New Contributors

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.11.0...v0.12.0

v0.12.0

10 months ago

What's Changed

Improvements and fixes to the HTTP/2 session management in Node.js

Other changes

New Contributors

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.11.0...v0.12.0

v0.11.0

11 months ago

What's Changed

Disregard non-JSON error response bodies for unary requests

This release makes a change in how response bodies are parsed for Connect unary requests that result in an HTTP error. Previously, all response bodies for unary requests that returned an HTTP error status were parsed with response.json(). However, this could lead to errors with non-JSON bodies. Now, only responses with a Content-Type of application/json will have the body parsed as JSON and added to the resulting Connect error.

For all other errors, the resulting Connect error will show the HTTP status code as the message and the corresponding Connect error code as the code.

To reiterate, this only affects Connect protocol unary requests that end with an HTTP error status code. All other protocols and/or RPC types are unaffected.

Enhancements

New Contributors

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.10.1...v0.11.0

v0.10.1

11 months ago

What's Changed

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.10.0...v0.10.1

v0.10.0

11 months ago

What's Changed

KeepAlive

As of this release, Connect-ES offers Basic Keepalive support for HTTP/2 for clients that use one of the transports from @bufbuild/connect-node. Note that this replaces the option keepSessionAlive, which is deprecated with this PR.

In it's most simple form, the following example enables regular PINGs every 5 minutes:

import { createConnectTransport } from "@bufbuild/connect-node";

const transport = createConnectTransport({
  httpVersion: "2",
  baseUrl: "https://demo.connect.build",
  pingIntervalMs: 1000 * 60 * 5,
});

For more information, see https://github.com/bufbuild/connect-es/pull/673

JSON parser ignores unknown fields by default

This release also changes the default behavior of the JSON parser so that unknown fields are ignored rather than rejected. Previously, Connect-ES followed the official guidance of the proto3 language spec and rejected unknown fields by default in parsing. However, this contradicts with the ethos that adding fields to a Protobuf definition should not be a breaking change. Therefore, the default behavior has been changed so any new/unknown fields are simply ignored.

Note that this could be considered a breaking change if consumers were relying on this rejection behavior.

Enhancements

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.9.1...v0.10.0

v0.9.1

1 year ago

What's Changed

Full Changelog: https://github.com/bufbuild/connect-es/compare/v0.9.0...v0.9.1