Subject: [PATCH 21/24] gnu: Add python-baron.

From: slg <[email-masked]>
Date: Sat, 19 Jun 2021 22:07:39 -0300

* gnu/packages/python-xyz.scm (python-baron): New variable.
---
 gnu/packages/python-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6db019082d..6096ba29d1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26083,3 +26083,35 @@ is a Python port from filetype Go package.")
     (description "Plyer is a platform-independent api to use features
 commonly found on various platforms, notably mobile ones, in Python.")
     (license license:x11)))
+
+(define-public python-baron
+  (package
+    (name "python-baron")
+    (version "0.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "baron" version))
+       (sha256
+        (base32
+         "0fib74nkqnl1i2zzlhbbfpw3whwc4951p9x61r2xrxhwp4r9yn5h"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-rply" ,python-rply)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "pytest" "-vv" "tests/")
+             #t)))))
+    (home-page "https://github.com/PyCQA/baron")
+    (synopsis "Full Syntax Tree (FST) Python library")
+    (description "Baron is a Full Syntax Tree (FST) library for Python.
+By opposition to an AST which drops some syntax information in the
+process of its creation (like empty lines, comments, formatting), a FST
+keeps everything and guarantees the operation
+@code{fst_to_code(code_to_fst(source_code)) == source_code}.")
+    (license license:lgpl3)))
-- 
2.32.0