Subject: [bug#60603] [PATCH] gnu: Add rust-uom

From: "Artyom V. Poptsov" <[email-masked]>
Date: Sun, 28 May 2023 23:15:12 +0300

Hello,

I've rebased the patch onto the "master" branch.
From 2413309f05a0876a2ad4b6dcd450c07fe1961a22 Mon Sep 17 00:00:00 2001
Message-Id: <241330[email-masked]>
From: "Artyom V. Poptsov" <[email-masked]>
Date: Fri, 6 Jan 2023 19:43:20 +0300
Subject: [PATCH] gnu: Add rust-uom.

* gnu/packages/crates-io.scm (rust-uom-0.34): New variable.
---
 gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index af77a40257..3877f6c977 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -14304,6 +14304,40 @@ (define-public rust-cpuprofiler-0.0
     (description "This package provides bindings to Google's cpu profiler.")
     (license license:bsd-2)))
 
+(define-public rust-uom-0.34
+  (package
+    (name "rust-uom")
+    (version "0.34.0")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "uom" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "190n79b5ywa9w0j13ld0q6dphz7vzsjkwrpp8pjnwrczsvfhxxg8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-num-complex" ,rust-num-complex-0.4)
+                       ("rust-num-rational" ,rust-num-rational-0.4)
+                       ("rust-num-traits" ,rust-num-traits-0.2)
+                       ("rust-typenum" ,rust-typenum-1)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-num-bigint" ,rust-num-bigint-0.4))
+       #:cargo-development-inputs (("rust-approx" ,rust-approx-0.5)
+                                   ("rust-quickcheck" ,rust-quickcheck-0.8)
+                                   ("rust-serde-json" ,rust-serde-json-1)
+                                   ("rust-static-assertions" ,rust-static-assertions-1))))
+    (home-page "https://github.com/iliekturtles/uom")
+    (synopsis "Units of measurement")
+    (description
+     "@code{uom} (Units of measurement) is a crate that does automatic type-safe
+zero-cost dimensional analysis.  You can create your own systems or use the pre-built
+International System of Units (SI) which is based on the International System of
+Quantities (ISQ) and includes numerous quantities (length, mass, time, ...) with
+conversion factors for even more numerous measurement units (meter, kilometer, foot,
+mile, ...).")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-crates-index-0.18
   (package
     (name "rust-crates-index")

base-commit: 9845e408e533f5834a13f294ca1ddc1dc7e248fd
-- 
2.34.1

Could you please review it?

Thanks,

- avp

-- 
Artyom "avp" Poptsov <[email-masked]>
Home page: https://memory-heap.org/~avp/
CADR Hackerspace co-founder: https://cadrspace.ru/
GPG: D0C2 EAC1 3310 822D 98DE  B57C E9C5 A2D9 0898 A02F