Skip to content

@palkan palkan released this Jun 1, 2021 · 4 commits to master since this release

This is a maintenance release. Most changes are internal and doesn't affect public APIs.

Requirements

  • Ruby >= 2.6 is required.
  • Anyway Config >= 2.1 is required.

Features

  • Added AnyCable::CLI.embed! to make it easier to run an RPC server within a custom Ruby process.

Changes

  • BREAKING Middlewares are no longer inherited from gRPC interceptors.

That allowed us to have real middlewares with ability to modify responses, intercept exceptions, etc.
The API changed a bit:

 class SomeMiddleware < AnyCable::Middleware
-  def call(request, rpc_call, rpc_handler)
+  def call(rpc_method_name, request, metadata)
     yield
   end
 end

See built-in middlewares, for example.

  • The anycable gem has been split into anycable-core and anycable.

The first one contains an abstract RPC implementation and all the supporting tools (CLI, protobufs), the second one adds the gRPC implementation.


Full release notes

Assets 2