Bump :lang scheme

emacs-geiser/geiser@aa26163 -> emacs-geiser/geiser@c5a9aae

With emacs-geiser/geiser@c5a9aae, geiser-impl--add-to-alist is now
autoloaded. This fixes #4863 by preventing void-function errors at
startup or 'doom sync'-time.

But this presents a new problem: geiser-impl is guaranteed to be
needlessly loaded at startup, the first time geiser-impl--add-to-list is
called among, say, geiser-chez's package autoloads. To get around this I
forcibly redefine it as an inline-able function (with defsubst) and
shove this new definition into Doom's autoloads file (where it will
appear before package autoloads).

Since Doom byte-compiles its autoloads file (containing concatenated
autoloads from all doom modules and packages), geiser-impl--add-to-alist
calls (and geiser-activate-implementation calls too, which is already
inline-able) will be inlined, fixing the issue.

Fixes #4863
This commit is contained in:
Henrik Lissner 2021-04-16 12:30:49 -04:00
parent 85d4f96238
commit c370a0ba82
2 changed files with 13 additions and 8 deletions

View file

@ -1,7 +1,7 @@
;; -*- no-byte-compile: t; -*-
;;; lang/scheme/packages.el
(when (package! geiser :pin "aa26163aa81b5af3bc5bbf23bec8b5776de3a8bc")
(when (package! geiser :pin "c5a9aae4d30ea6dbf2d8af4dd1cc35a839686a00")
(package! macrostep-geiser :pin "8600fca05fd12a2e0ffe63238ddbfcb37c285dac")
(when (featurep! +chez)
(package! geiser-chez :pin "4cb7f2667ea1c53da53f0144910fbbd67bccbf4d"))