Subject: [bug#75127] [PATCH v6 38/44] gnu: Add rust-tonic-web-0.12.

From: Jordan Moore <[email-masked]>
Date: Fri, 10 Jan 2025 20:57:50 -0500

* gnu/packages/crates-web.scm (rust-tonic-web-0.12): New variable.

Change-Id: I5dee1393f90770a9677b19a346fd90e763cb67b2
---
 gnu/packages/crates-web.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/crates-web.scm b/gnu/packages/crates-web.scm
index 73ca29df76..dda3a5b192 100644
--- a/gnu/packages/crates-web.scm
+++ b/gnu/packages/crates-web.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2024 Wilko Meyer <[email-masked]>
 ;;; Copyright © 2024 Tomas Volf <[email-masked]>
 ;;; Copyright © 2024 Nguyễn Gia Phong <[email-masked]>
+;;; Copyright © 2024 Jordan Moore <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -6535,6 +6536,37 @@ (define-public rust-tonic-build-0.12
      "This package provides a codegen module of `tonic` @code{gRPC} implementation.")
     (license license:expat)))
 
+(define-public rust-tonic-web-0.12
+  (package
+    (name "rust-tonic-web")
+    (version "0.12.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tonic-web" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0n2bhgs57kvqsk1z2fr1izcrrrbnfgda0pjargf3dmqsh0hdv6aj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-base64" ,rust-base64-0.22)
+                       ("rust-bytes" ,rust-bytes-1)
+                       ("rust-http" ,rust-http-1)
+                       ("rust-http-body" ,rust-http-body-1)
+                       ("rust-http-body-util" ,rust-http-body-util-0.1)
+                       ("rust-pin-project" ,rust-pin-project-1)
+                       ("rust-tokio-stream" ,rust-tokio-stream-0.1)
+                       ("rust-tonic" ,rust-tonic-0.12)
+                       ("rust-tower-http" ,rust-tower-http-0.5)
+                       ("rust-tower-layer" ,rust-tower-layer-0.3)
+                       ("rust-tower-service" ,rust-tower-service-0.3)
+                       ("rust-tracing" ,rust-tracing-0.1))))
+    (home-page "https://github.com/hyperium/tonic")
+    (synopsis "grpc-web protocol translation for tonic services.")
+    (description
+     "This package provides grpc-web protocol translation for tonic services.")
+    (license license:expat)))
+
 (define-public rust-tower-0.5
   (package
     (name "rust-tower")
-- 
2.46.0