Subject: bug#55495: Re: emacs-haskell-mode build fails

From: Luis Henrique Gomes Higino <[email-masked]>
Date: Thu, 19 May 2022 12:14:17 -0300

Hi Taiju,

I also can't really understand why this didn't happen previously, 
the `vc-refresh-state' (which will need git in this case) is added 
to `find-file-hook' by default since before Emacs 28. The 
`haskell-generate-tags' test was last changed on 2016 and the 
`with-temp-dir-structure' on 2019 according to git blame. This 
code is called when the test runs `with-temp-dir-structure' on 
each of the created dirs:

--8<---------------cut here---------------start------------->8---
vc-refresh-state()
run-hooks(find-file-hook)
after-find-file(t t)
find-file-noselect-1(#<buffer Tx.hs> 
"/tmp/guix-build-emacs-haskell-
find-file-noselect("Tx.hs")
(set-buffer (find-file-noselect (car entry)))
(save-current-buffer (set-buffer (find-file-noselect (car entry))) 
(
(cond ((stringp (cdr entry)) (save-current-buffer (set-buffer 
(find-
(let ((entry (car --dolist-tail--))) (cond ((stringp (cdr entry)) 
(s
(while --dolist-tail-- (let ((entry (car --dolist-tail--))) (cond 
((
(let ((--dolist-tail-- entries)) (while --dolist-tail-- (let 
((entry
create-directory-structure((("Tx.hs" . "should_not_see_me :: 
Int")))
--8<---------------cut here---------------end--------------->8---

That happens because of this line on `create-directory-structure':
https://github.com/haskell/haskell-mode/blob/17.2/tests/haskell-test-utils.el#L235

I think it's fine to add git to the native inputs for this test 
specifically, as it only weights 346.8 MiB.

Regards,
-- 
Luis H. Higino