添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement . We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I just installed Magit from MELPA. During compilation there were warnings "Symbol's function definition is void: transient-define-prefix" and after installation when I tried M-x magit-version I got an error with the same thing. I tried restarting emacs to no avail.

I see transient-define-prefix used an many magit files but no definition of it. In transient.el I see a reference to it in the function documentation string for transient-setup, but no definition of it.

It's magit-20200517.1537 that was installed which installed transient-20200512.1320 as a dependency. I am running emacs 26.3.

Updates to Melpa are not atomic. In this case magit has already been updated but the new version of transient , which it now depends on has not. Wait an hour or two until Melpa's update loop has gotten from m to t .

Ups... turns out I had not pushed the changes to transient to its master branch yet. This may delay the update a few more hours for Melpa users.

With magit/transient@ 3038769 the "Symbol's function definition is void: transient-define-prefix" error is gone.

Want to note that other packages ( magit-todos , magit-diff-flycheck ) are now encountering another error issue w.r.t. magit-margin-settings .

Error (use-package): magit-todos/:init: Symbol’s value as variable is void: magit-margin-settings
Error (use-package): magit-todos/:catch: Symbol’s value as variable is void: magit-margin-settings

There may be others dependent; those are just what I had in my .emacs.

(use-package magit-diff-flycheck)
(use-package magit-todos
  :init
  (magit-todos-mode +1))

You might have to reinstall these packages and/or magit, and/or recompile your init file.

I use straight.el, and these are the errors visible after a fresh pull of all packages. (Note: these "new" errors were behind the transient-define-prefix error, which has been fixed in latest transient package)