Subject: [PATCH v4 1/4] gnu: Add python-pymarshal.

From: Sughosha <[email-masked]>
Date: Wed, 5 Jun 2024 21:22:08 +0530

* gnu/packages/python-xyz.scm (python-pymarshal): New variable.

Change-Id: I6a1d2f8f21869856a9a227bed213d9f71204b2d4
---
 gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c22df7728a..f4fc6c8768 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -4485,6 +4485,30 @@ (define-public python-jsonargparse
 variables.")
     (license license:expat)))
 
+(define-public python-pymarshal
+  (package
+    (name "python-pymarshal")
+    (version "2.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pymarshal" version))
+              (sha256
+               (base32
+                "1lhb7yim60pvclbd440zd4n50xs1d2rvmnrhhvib3hyv0dxil5j3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     ;; Test fails with this error:
+     ;; "CovReportWarning: Failed to generate report: No data to report."
+     (list #:tests? #f))
+    (native-inputs
+     (list python-pytest python-pytest-cov))
+    (propagated-inputs (list python-bson python-pyyaml))
+    (home-page "https://gitlab.com/d3v-t00lz/pymarshal")
+    (synopsis "Pythonic implementation of Golang struct (un)marshalling")
+    (description "PyMarshal replicates the feature of (un)marshalling structs
+in Golang.")
+    (license license:bsd-2)))
+
 (define-public python-simplejson
   (package
     (name "python-simplejson")
-- 
2.45.1