Skip to content

Releases: connectrpc/connect-es

v2.0.0-beta.1

20 Sep 15:14
413d0e7
Compare
Choose a tag to compare
v2.0.0-beta.1 Pre-release
Pre-release

What's changed

This is a beta release for version 2. See here for an introduction.

To give this version a try, run npx @connectrpc/connect-migrate@beta. Note that connect-query has not been updated yet.

New Contributors

Full Changelog: v2.0.0-alpha.1...v2.0.0-beta.1

v1.5.0

11 Sep 13:24
6575fc1
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.4.0...v1.5.0

v2.0.0-alpha.1

01 Jul 14:48
4378268
Compare
Choose a tag to compare
v2.0.0-alpha.1 Pre-release
Pre-release

What's new in version 2

To support protobuf editions, @bufbuild/protobuf had to make breaking changes, more on this here. Upgrading to v2 of @bufbuild/protobuf will be breaking change for connect users.

The most notable change is that v2 doesn't require a separate plugin anymore! we only need protoc-gen-es. For most users this will be a simple change of just removing the connect plugin and changing the import path to point to the protobuf generated types:

import { createPromiseClient } from "@connectrpc/connect";
import { createConnectTransport } from "@connectrpc/connect-node";
// Before this was import { ElizaService } from "./gen/eliza_connect.js"
import { ElizaService } from "./gen/eliza_pb.js";

// Alternatively, use createGrpcTransport or createGrpcWebTransport here
// to use one of the other supported protocols.
const transport = createConnectTransport({
  httpVersion: "2",
  baseUrl: "https://localhost:8443",
  nodeOptions: { rejectUnauthorized },
});

const client = createPromiseClient(ElizaService, transport);
const res = await client.say({ sentence });

Please note that this is an alpha release, and APIs might still change. We're also missing documentation yet. But if you want to try it out, we welcome your feedback!

This release is published with the alpha tag. To upgrade, you can run:

npm remove @connectrpc/protoc-gen-connect-es
npm install @connectrpc/connect@alpha @connectrpc/connect-node@alpha @bufbuild/protobuf@latest @bufbuild/protoc-gen-es@latest

v1.4.0

28 Feb 20:22
5ded26a
Compare
Choose a tag to compare

What's Changed

This release includes support for server-side interceptors! Here's a quick example:

import * as http from "http";
import routes from "./connect";
import { connectNodeAdapter } from "@connectrpc/connect-node";
import type { Interceptor } from "@connectrpc/connect";

const logger: Interceptor = (next) => async (req) => {
  console.log(`recevied message on ${req.url}`);
  return await next(req);
};

http
  .createServer(
    connectNodeAdapter({
      routes,
      interceptors: [logger],
    }),
  )
  .listen(8080);

For more on them please see the docs.

Other Changes

New Contributors

Full Changelog: v1.3.0...v1.4.0

v1.3.0

08 Jan 18:03
cc66624
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.2.1...v1.3.0

v1.2.1

03 Jan 18:00
208b9b4
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.2.0...v1.2.1

v1.2.0

13 Dec 17:23
431dcb6
Compare
Choose a tag to compare

What's Changed

By default, protoc-gen-connect-es (and all other plugins based on @bufbuild/protoplugin) generate ECMAScript import and export statements. For use cases where CommonJS is difficult to avoid, a new plugin option has been added named js_import_style which can be used to generate CommonJS require() calls.

Here is an example buf.gen.yaml:

version: v1
plugins:
  # You'll need @bufbuild/protoc-gen-es v1.6.0 or later
  - plugin: es
    out: src/gen
    opt: js_import_style=legacy_commonjs
  - plugin: connect-es
    out: src/gen
    opt: js_import_style=legacy_commonjs

To view the full PR, see Support CommonJS in protoc-gen-connect-es by @timostamm in #956

Full Changelog: v1.1.4...v1.2.0

v1.1.4

04 Dec 16:30
428e145
Compare
Choose a tag to compare

What's Changed

  • Support zero-length compressed request and response messages on Node.js by @timostamm in #893.
  • Don't set User-Agent header in connect-web by @srikrsna-buf in #912.
  • Always capture header in ConnectError by @srikrsna-buf in #924.
  • Introduce experimental ConnectRouter.rpc overload to not require full ServiceType by @paul-sachs in #925.
  • Add explicit exports for node by @smaye81 in #921.

Full Changelog: v1.1.3...v1.1.4

v1.1.3

27 Oct 15:48
a9fc89c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.1.2...v1.1.3

v1.1.2

06 Oct 16:08
e0bffba
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.1.1...v1.1.2