summary refs log tree commit diff
path: root/gnu/packages/sphinx.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-11-04 22:42:13 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-11-06 00:08:06 -0400
commit788901567dc9ab7e514d738debc21f8610bec21c (patch)
tree52cb493550c065da24ab590cdd2ddcacf9f0962c /gnu/packages/sphinx.scm
parentf583b14ce87c84e5a44f22c6895a31701e633011 (diff)
downloadguix-788901567dc9ab7e514d738debc21f8610bec21c.tar.gz
gnu: Add python-myst-parser.
* gnu/packages/sphinx.scm (python-myst-parser): New variable.
Diffstat (limited to 'gnu/packages/sphinx.scm')
-rw-r--r--gnu/packages/sphinx.scm48
1 files changed, 48 insertions, 0 deletions
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index 5b3e885647..5046fdaf85 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -735,6 +735,54 @@ and several other projects.")
     (description "This package provides a Matplotlib theme for Sphinx.")
     (license license:bsd-3)))
 
+(define-public python-myst-parser
+  (package
+    (name "python-myst-parser")
+    (version "0.18.1")
+    (source (origin
+              (method git-fetch)        ;for tests
+              (uri (git-reference
+                    (url "https://github.com/executablebooks/MyST-Parser")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0lcz9vvy8hbp6cjmbslrlxn3pinf98jykiq8nx5lw5y0lz0mj162"))))
+    (build-system pyproject-build-system)
+    (arguments
+     ;; There are 3 test failures, seemingly due to expecting a slightly
+     ;; different output from Sphinx (see:
+     ;; https://github.com/executablebooks/MyST-Parser/issues/645).
+     (list #:test-flags #~(list "-k" (string-append
+                                      "not test_basic "
+                                      "and not test_gettext_html "
+                                      "and not test_fieldlist_extension"))))
+    (native-inputs
+     (list python-beautifulsoup4
+           python-docutils
+           python-flit-core
+           python-pytest
+           python-pytest-param-files
+           python-pytest-regressions
+           python-sphinx
+           python-sphinx-pytest))
+    (propagated-inputs
+     (list python-docutils
+           python-jinja2
+           python-linkify-it-py
+           python-markdown-it-py
+           python-linkify-it-py
+           python-mdit-py-plugins
+           python-pyyaml
+           python-sphinx
+           python-typing-extensions))
+    (home-page "https://myst-parser.readthedocs.io/en/latest/")
+    (synopsis "Sphinx and Docutils extension to parse MyST")
+    (description "This package provides a Sphinx and Docutils extension to parse
+MyST, a rich and extensible flavour of Markdown for authoring technical and
+scientific documentation.")
+    (license license:expat)))
+
 (define-public python-sphinx-rtd-theme
   (package
     (name "python-sphinx-rtd-theme")