containerd / containerd/ttrpc

Add `WithStreamServerInterceptor` and `WithStreamClientInterceptor`

Open
#148 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
664
Forks
86
PR merge metrics
No merged PRs in 30d

Description

The unary calls for adding interceptors already exist:

[`WithUnaryServerInterceptor`](https://pkg.go.dev/github.com/containerd/ttrpc#WithUnaryServerInterceptor)
[`WithUnaryClientInterceptor`](https://pkg.go.dev/github.com/containerd/ttrpc#WithUnaryServerInterceptor)

Interfaces for stream interceptors exists as well:

[`StreamServerInterceptor`](https://pkg.go.dev/github.com/containerd/ttrpc#StreamServerInterceptor)
[`StreamClientInterceptor`](https://pkg.go.dev/github.com/containerd/ttrpc#StreamClientInterceptor)

But there is no `WithStream..Interceptor` option to add them to a client or server. Would be great if this could be added so such interceptors can be used for streaming calls.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the existing WithUnaryServerInterceptor and WithUnaryClientInterceptor options, then inspect the StreamServerInterceptor and StreamClientInterceptor interfaces. Add corresponding stream options so interceptors can be registered for streaming calls, and verify that streaming clients and servers accept and use them.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, grpc
Domain
api
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.