guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

07/07: gnu: haskell-mode: Fix test failure.


From: Ludovic Courtès
Subject: 07/07: gnu: haskell-mode: Fix test failure.
Date: Sun, 2 Sep 2018 11:08:40 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 2bd6ed9e4c32928312eee9cd71137d5adf09f955
Author: Alex Vong <address@hidden>
Date:   Sun Sep 2 07:47:05 2018 +0800

    gnu: haskell-mode: Fix test failure.
    
    Fixes <https://bugs.gnu.org/31726>.
    
    Thanks to Jack Hill <address@hidden> for exploring different solutions
    at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=31726>.
    
    * gnu/packages/patches/haskell-mode-unused-variables.patch,
    gnu/packages/patches/haskell-mode-make-check.patch: New files.
    * gnu/local.mk (dist_patch_DATA): Add them.
    * gnu/packages/emacs.scm (haskell-mode)[source]: Use them.
    [arguments]: Adjust 'pre-build' phase to embed file name.
    
    Co-authored-by: Ludovic Courtès <address@hidden>
---
 gnu/local.mk                                       |  2 +
 gnu/packages/emacs.scm                             | 17 +++++----
 gnu/packages/patches/haskell-mode-make-check.patch | 35 +++++++++++++++++
 .../patches/haskell-mode-unused-variables.patch    | 44 ++++++++++++++++++++++
 4 files changed, 91 insertions(+), 7 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 91de38c..d929ec0 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -791,6 +791,8 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
   %D%/packages/patches/gzdoom-search-in-installed-share.patch  \
   %D%/packages/patches/handbrake-pkg-config-path.patch         \
+  %D%/packages/patches/haskell-mode-unused-variables.patch     \
+  %D%/packages/patches/haskell-mode-make-check.patch           \
   %D%/packages/patches/hdf4-architectures.patch                \
   %D%/packages/patches/hdf4-reproducibility.patch              \
   %D%/packages/patches/hdf4-shared-fortran.patch               \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 2b8796f..0855428 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -646,7 +646,11 @@ only a handful of functions that are not 
resource-specific.")
                     "https://github.com/haskell/haskell-mode/archive/v";
                     version ".tar.gz"))
               (sha256
-               (base32 
"0g6lcjw7lcgavv3yrd8xjcyqgfyjl787y32r1z14amw2f009m78h"))))
+               (base32 "0g6lcjw7lcgavv3yrd8xjcyqgfyjl787y32r1z14amw2f009m78h"))
+              (patches
+               (search-patches ; backport test failure fixes
+                "haskell-mode-unused-variables.patch"
+                "haskell-mode-make-check.patch"))))
     (inputs
      `(("emacs-el-search" ,emacs-el-search) ; for tests
        ("emacs-stream" ,emacs-stream)))     ; for tests
@@ -686,12 +690,11 @@ only a handful of functions that are not 
resource-specific.")
                               (_ ""))
                             inputs)))
               (substitute* (find-files "." "\\.el") (("/bin/sh") sh))
-              (substitute* "tests/haskell-code-conventions.el"
-                ;; Function name recently changed in "emacs-el-search".
-                (("el-search--search-pattern") "el-search-forward")
-                ;; Don't contact home.
-                (("\\(when \\(>= emacs-major-version 25\\)")
-                 "(require 'el-search) (when nil"))
+              ;; embed filename to fix test failure
+              (let ((file "tests/haskell-cabal-tests.el"))
+                (substitute* file
+                  (("\\(buffer-file-name\\)")
+                   (format #f "(or (buffer-file-name) ~s)" file))))
               #t)))
          (replace
           'install
diff --git a/gnu/packages/patches/haskell-mode-make-check.patch 
b/gnu/packages/patches/haskell-mode-make-check.patch
new file mode 100644
index 0000000..a4d4d52
--- /dev/null
+++ b/gnu/packages/patches/haskell-mode-make-check.patch
@@ -0,0 +1,35 @@
+Copied from upstream repository.
+Hunk #2 is removed since it cannot be applied and it is not needed.
+
+From 7cead7137bf54851c1b7df5a3854351296d21276 Mon Sep 17 00:00:00 2001
+From: Vasantha Ganesh K <address@hidden>
+Date: Thu, 22 Jun 2017 23:38:40 +0530
+Subject: [PATCH] removed `check-conventions' from make
+
+---
+ Makefile                          |   7 +-
+ tests/haskell-code-conventions.el | 165 ------------------------------
+ 2 files changed, 1 insertion(+), 171 deletions(-)
+ delete mode 100644 tests/haskell-code-conventions.el
+
+diff --git a/Makefile b/Makefile
+index b2c89d6..aa907c5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -79,12 +79,7 @@ build-$(EMACS_VERSION)/build-flag : build-$(EMACS_VERSION) 
$(patsubst %.el,build
+ check-%: tests/%-tests.el
+       $(BATCH) -l "$<" -f ert-run-tests-batch-and-exit;
+ 
+-check: compile $(AUTOLOADS) check-ert check-conventions
+-
+-check-conventions :
+-      $(BATCH) -l tests/haskell-code-conventions.el                           
                \
+-                 -f haskell-check-conventions-batch-and-exit
+-      @echo "conventions are okay"
++check: compile $(AUTOLOADS) check-ert
+ 
+ check-ert: $(ELCHECKS)
+       $(BATCH) --eval "(when (= emacs-major-version 24)                       
                \
+-- 
+2.18.0
+
diff --git a/gnu/packages/patches/haskell-mode-unused-variables.patch 
b/gnu/packages/patches/haskell-mode-unused-variables.patch
new file mode 100644
index 0000000..b175fae
--- /dev/null
+++ b/gnu/packages/patches/haskell-mode-unused-variables.patch
@@ -0,0 +1,44 @@
+Copied verbatim from upstream repository.
+
+From cee22450ee30e79952f594796721dc6b17798ee6 Mon Sep 17 00:00:00 2001
+From: Sascha Wilde <address@hidden>
+Date: Fri, 23 Sep 2016 15:35:59 +0200
+Subject: [PATCH] Removed unused lexical variables.
+
+---
+ haskell-lexeme.el  | 3 +--
+ haskell-process.el | 4 +---
+ 2 files changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/haskell-lexeme.el b/haskell-lexeme.el
+index 4256a79..b832560 100644
+--- a/haskell-lexeme.el
++++ b/haskell-lexeme.el
+@@ -138,8 +138,7 @@ When match is successful, match-data will contain:
+   (match-text 2) - whole qualified identifier
+   (match-text 3) - unqualified part of identifier
+   (match-text 4) - closing backtick"
+-  (let ((begin (point))
+-        (match-data-old (match-data))
++  (let ((match-data-old (match-data))
+         first-backtick-start
+         last-backtick-start
+         qid-start
+diff --git a/haskell-process.el b/haskell-process.el
+index b4efba2..4f3f859 100644
+--- a/haskell-process.el
++++ b/haskell-process.el
+@@ -160,9 +160,7 @@ HPTYPE is the result of calling `'haskell-process-type`' 
function."
+ (defun haskell-process-log (msg)
+   "Effective append MSG to the process log (if enabled)."
+   (when haskell-process-log
+-    (let* ((append-to (get-buffer-create "*haskell-process-log*"))
+-           (windows (get-buffer-window-list append-to t t))
+-           move-point-in-windows)
++    (let* ((append-to (get-buffer-create "*haskell-process-log*")))
+       (with-current-buffer append-to
+         ;; point should follow insertion so that it stays at the end
+         ;; of the buffer
+-- 
+2.18.0
+



reply via email to

[Prev in Thread] Current Thread [Next in Thread]