diff options
Diffstat (limited to 'gnu/packages/vim.scm')
-rw-r--r-- | gnu/packages/vim.scm | 53 |
1 files changed, 34 insertions, 19 deletions
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 05136981ea..cda1e144ec 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -70,7 +70,7 @@ (define-public vim (package (name "vim") - (version "8.2.1852") + (version "8.2.2017") (source (origin (method git-fetch) (uri (git-reference @@ -79,18 +79,13 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0nvcvvig5fc45smf4kh71jqyqafffgxzaizwqknk0h9vzl4k4h57")))) + "0ad0c4wv8zf28wns06k82c19rs63ilsphnglajhgw5j2a1aqplyn")))) (build-system gnu-build-system) (arguments `(#:test-target "test" #:parallel-tests? #f #:phases (modify-phases %standard-phases - (add-after 'patch-source-shebangs 'fix-installman - (lambda _ - (substitute* "src/installman.sh" - ((" /bin/sh") (which "sh"))) - #t)) (add-after 'configure 'patch-absolute-paths (lambda _ (substitute* "runtime/tools/mve.awk" @@ -115,7 +110,7 @@ ;; Make sure the TERM environment variable is set for the tests (setenv "TERM" "xterm") #t)) - (add-before 'check 'skip-failing-tests + (add-before 'check 'skip-or-fix-failing-tests (lambda _ ;; This test assumes that PID 1 is run as root and that the user ;; running the test suite does not have permission to kill(1, 0) @@ -126,16 +121,36 @@ (substitute* "src/testdir/test_swap.vim" (("if !IsRoot\\(\\)") "if 0")) - ;; These tests check how the terminal looks after executing some - ;; actions. The path of the bash binary is shown, which results in - ;; a difference being detected. Patching the expected result is - ;; non-trivial due to the special format used, so skip the test. - (substitute* "src/testdir/test_terminal.vim" - ((".*Test_terminal_postponed_scrollback.*" line) - (string-append line "return\n"))) + ;; These tests compares output against a golden ‘…/|b|i|n|/|s|h…’ + ;; literal. We need to match that and substitute a similarly + ;; ‘spliced’ path to ‘sh’ in the store, truncated to the last + ;; 44 (spliced: 88) or so characters. + ;; Two of the tests we simply skip instead of patching the screen dump. (substitute* "src/testdir/test_popupwin.vim" - ((".*Test_popup_drag_termwin.*" line) - (string-append line "return\n"))) + ((".*Test_popupwin_term_0[1|2].*") "")) + ;; We replace the external program call (!) with a scroll-back (<) + ;; symbol and blindly fix some other differences based on error output. + (let ((splice (lambda (s separator) + (string-join (map string (string->list s)) + separator)))) + (substitute* "src/testdir/dumps/Test_terminal_from_cmd.dump" + (((splice "/bin/sh" "\\|")) + (splice (string-take-right (which "sh") 44) "|")) + (("^\\|!") "|<") + (("@37") "")) + (substitute* '("src/testdir/dumps/Test_terminal_scrollback_1.dump" + "src/testdir/dumps/Test_terminal_scrollback_2.dump") + (((splice "/bin/sh" "\\|")) + (splice (string-take-right (which "sh") 61) "|")) + (("^\\|!") "|<") + ((" @55") " @1")) + (substitute* '("src/testdir/dumps/Test_terminal_scrollback_3.dump" + "src/testdir/dumps/Test_popupwin_term_03.dump" + "src/testdir/dumps/Test_popupwin_term_04.dump") + (((splice "/bin/sh" "\\|")) + (splice (string-take-right (which "sh") 62) "|")) + (("^\\|!") "|<") + (("\\]\\| @56") "]| @1"))) #t))))) (inputs `(("gawk" ,gawk) @@ -805,7 +820,7 @@ through its msgpack-rpc API.") (define-public vim-guix-vim (package (name "vim-guix-vim") - (version "0.1") + (version "0.1.1") (source (origin (method git-fetch) (uri (git-reference @@ -814,7 +829,7 @@ through its msgpack-rpc API.") (file-name (git-file-name name version)) (sha256 (base32 - "1f8h8m96fqh3f9hy87spgh9kdqzyxl11n9s3rywvyq5xhn489bnk")))) + "10bfy0dgwizxr56b4272b7sqajpr6lnz332pzx055dis2zzjap8z")))) (build-system copy-build-system) (arguments '(#:install-plan |