On July 30, 2024 6:50:12 PM EDT, aurtzy <[email protected]> wrote: >Hi Daniel, > >> Running M-x magit-branch generates the following error: >> >> transient-setup: Symbol’s function definition is void: >> transient-prefix-object >> >> In order to reproduce: >> >> guix shell emacs emacs-magit -- emacs -Q >> >> M-x magit-version >> Magit 3.3.0-8.538cb2f, Transient 0.7.3, Git 2.45.2, Emacs 29.4, gnu/linux > >It looks like this is because emacs is actually using the built-in (older) >version of transient, while magit relies on a function from a newer version. > >Evaluating the following definition from the newer transient source code fixes >this particular issue for me (I've put it in my init.el for the time being): > >#+begin_src lisp > (defun transient-prefix-object () > (or transient--prefix transient-current-prefix)) >#+end_src > >This sounds similar to another issue with embark and org [1], however in that >report it was because emacs-org was not included in the environment; in this >case, the newer version of transient is already an input of magit in the guix >package, so I'm not sure what's happening here. > >[1] https://github.com/oantolin/embark/issues/723 > >Cheers, > >aurtzy > > > >
I encountered a similar issue to this (void-function transient--suffix-only) when I enabled the following block of code: #+begin_src lisp ;; FIXME: This caused (void-function transient--suffix-only) errors ;; in Guix c9cd16c630ccba655b93ff32fd9a99570b4f5373 with magit. ;; ;; (setq read-extended-command-predicate ;; #'command-completion-default-include-p) #+end_src I'm also not sure of the underlying cause, but something seems funky with Magit.
