Subject: Re: bug#25177: [PATCH v6] gnu: python-sphinx: Update to 1.4.8.

From: Danny Milosavljevic <[email-masked]>
Date: Sat, 14 Jan 2017 14:54:06 +0100

Hi,

I've fixed python-matplotlib locally. It builds fine now.

The fix itself would be:

+                 (substitute* "users/intro.rst"
+                   ;; Fix reST markup error (see <https://github.com/sphinx-doc/sphinx/issues/3044>)
+                   (("[[][*][]]") "[#]"))

However, I've also changed alist-cons* phase construction to modify-phases. That would make the patch look real scary.

So here is a weird patch created via "git diff -b" where you can actually see what's happening without all the noise caused by indentation changes:

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index c540d7b5a..a5220e05e 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3723,8 +3723,8 @@ transcendental functions).")
        ("texinfo" ,texinfo)))
     (arguments
      `(#:phases
-       (alist-cons-before
-        'build 'configure-environment
+       (modify-phases %standard-phases
+         (add-before 'build 'configure-environment
            (lambda* (#:key outputs inputs #:allow-other-keys)
              (let ((cairo (assoc-ref inputs "cairo"))
                    (gtk+ (assoc-ref inputs "gtk+")))
@@ -3740,9 +3740,8 @@ basedirlist = ~a,~a~%
  [rc_options]~%
 backend = TkAgg~%"
                            (assoc-ref inputs "tcl")
-                        (assoc-ref inputs "tk"))))))
-        (alist-cons-after
-         'install 'install-doc
+                           (assoc-ref inputs "tk")))))))
+         (add-after 'install 'install-doc
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let* ((data (string-append (assoc-ref outputs "doc") "/share"))
                     (doc (string-append data "/doc/" ,name "-" ,version))
@@ -3756,6 +3755,9 @@ backend = TkAgg~%"
                  (substitute* (find-files "." "conf\\.py")
                    (("latex_paper_size = 'letter'")
                     "latex_paper_size = 'a4'"))
+                 (substitute* "users/intro.rst"
+                   ;; Fix reST markup error (see <https://github.com/sphinx-doc/sphinx/issues/3044>)
+                   (("[[][*][]]") "[#]"))
                  (mkdir-p html)
                  (mkdir-p info)
                  ;; The doc recommends to run the 'html' target twice.
@@ -3777,8 +3779,7 @@ backend = TkAgg~%"
                  (copy-file "build/texinfo/matplotlib.info"
                             (string-append info "/matplotlib.info"))
                  (copy-file "build/latex/Matplotlib.pdf"
-                          (string-append doc "/Matplotlib.pdf")))))
-        %standard-phases))))
+                            (string-append doc "/Matplotlib.pdf")))))))))
     (home-page "http://matplotlib.org")
     (synopsis "2D plotting library for Python")
     (description

Should I split this into two commits - one for modify-phases and one for the actual change? Should I post them to the list? If so, should I mark that it's for python-tests somehow?