Source: ruby-protocol-grpc
Section: ruby
Maintainer: Debian Ruby Team <pkg-ruby-extras-maintainers@lists.alioth.debian.org>
Uploaders: Simon Quigley <tsimonq2@debian.org>
Build-Depends: debhelper-compat (= 14),
               gem2deb (>= 2.2.8~),
               ruby-async (>= 2),
               ruby-base64,
               ruby-google-protobuf,
               ruby-protocol-http (>= 0.56)
Standards-Version: 4.7.4
Vcs-Git: https://salsa.debian.org/ruby-team/ruby-protocol-grpc.git
Vcs-Browser: https://salsa.debian.org/ruby-team/ruby-protocol-grpc
Homepage: https://github.com/socketry/protocol-grpc
Testsuite: autopkgtest-pkg-ruby

Package: ruby-protocol-grpc
Architecture: all
Description: Protocol abstractions for gRPC, built on top of protocol-http
 protocol-grpc provides protocol-level abstractions for building gRPC
 applications:
  - Protocol-level abstractions - No networking, no client/server
    implementations. Focuses on gRPC protocol details.
  - Message framing - Handles gRPC's 5-byte length-prefixed message format
    with compression support.
  - Status codes and error handling - Complete gRPC status code support with
    error hierarchy.
  - Metadata and trailers - Full support for gRPC metadata headers and HTTP
    trailers.
  - Interface definitions - Define service contracts using
    `Protocol::GRPC::Interface` with PascalCase method names matching `.proto`
    files.
  - Middleware pattern - Abstract base class for building gRPC server
    applications.
  - Call context - Track deadlines, metadata, and request context for each RPC
    call.
