From 92423868bc451600f8f3d93b638091d12b14b7aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org> Date: Mon, 15 Jan 2018 15:43:53 +0100 Subject: [PATCH] ui: Disable '%fresh-auto-compile' only for Guile 2.2.3. Mitigates <https://bugs.gnu.org/29881>. Reported by Diego Nicola Barbato <dnbarbato@posteo.de>. * guix/ui.scm (load*): Unset '%fresh-auto-compile' only on Guile 2.2.3. --- guix/ui.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/guix/ui.scm b/guix/ui.scm index 895179744ba..fb2380b68a2 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -195,7 +195,16 @@ (define tag (catch #t (lambda () ;; XXX: Force a recompilation to avoid ABI issues. - ;; (set! %fresh-auto-compile #t) + ;; + ;; In 2.2.3, the bogus answer to <https://bugs.gnu.org/29226> was to + ;; ignore all available .go, not just those from ~/.cache, which in turn + ;; meant that we had to rebuild *everything*. Since this is too costly, + ;; we have to turn auto '%fresh-auto-compile' with that version, at the + ;; risk of getting ABI breakage in the user's config file. See + ;; <https://bugs.gnu.org/29881>. + (unless (string=? (version) "2.2.3") + (set! %fresh-auto-compile #t)) + (set! %load-should-auto-compile #t) (save-module-excursion -- GitLab