Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

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

Spacemacs is unusable, reporting Symbol's function definition is void: function-alias-p #16305

Closed
ghost opened this issue Mar 8, 2024 · 7 comments

Comments

@ghost
Copy link

ghost commented Mar 8, 2024

Description :octocat:

I updated my packages by pressing SPC f e U and restarted Emacs. Now, Spacemacs is unusable, reporting Symbol's function definition is void: function-alias-p.

I want to Rollback Package Update, but the link cannot be followed by pressing o or clicking it.

Reproduction guide 🪲

  • Start Emacs

Observed behaviour: 👀 💔
I see
Screenshot from 2024-03-08 06-13-07
and nothing works.

Expected behaviour: ❤️ 😄
Spacemacs works.

System Info 💻

  • OS: gnu/linux
  • Emacs: 28.1
  • Spacemacs: 0.999.0
  • Spacemacs branch: develop (rev. 4a227fc)
  • Graphic display: t
  • Running in daemon: nil
  • Distribution: spacemacs
  • Editing style: vim
  • Completion: helm
  • Layers:
(csv
 (elfeed :variables
         elfeed-feeds
         '(("https://github.com/psf/black/releases.atom" Black)
           ("https://github.com/magit/forge/releases.atom" Forge)
           ("https://github.com/magit/magit/releases.atom" Magit)
           ("https://github.com/networkx/networkx/releases.atom" NetworkX)
           ("https://github.com/python-lsp/python-lsp-server/releases.atom"
            python-lsp-server)
           ("https://github.com/scipy/scipy/releases.atom" SciPy)
           ("https://github.com/tridactyl/tridactyl/tags.atom" Tridactyl)))
 pdf
 (python :variables
         lsp-pylsp-plugins-rope-autoimport-enabled t
         lsp-pylsp-plugins-ruff-enabled t
         lsp-pylsp-plugins-ruff-unsafe-fixes t
         python-fill-column 72
         python-fill-docstring-style 'pep-257-nn
         python-format-on-save t
         python-formatter 'black
         python-sort-imports-on-save t
         python-test-runner 'pytest)
 rust
 semantic-web
 better-defaults
 emacs-lisp
 git
 helm
 lsp
 multiple-cursors
 treemacs)
@ghost
Copy link
Author

ghost commented Mar 8, 2024

How can one roll back package updates from outside Spacemacs?

@suparna-ghanvatkar
Copy link

I get the same issue with new clean installation as well. On Fedora with emacs 28.3

@dankessler
Copy link
Contributor

Oof, this is probably my fault: I used function-alias-p in a PR I wrote that was recently adopted into bind-map, but it looks like that function was only introduced in emacs 29.1. If you're able to upgrade emacs, that will immediately fix your problem, but I'm going to try to get a patch added to bind-map that will only call that function if it's available.

@dankessler
Copy link
Contributor

dankessler commented Mar 8, 2024

PR has been speedily merged so this is now fixed in bind-map, and it's now live on MELPA.

Unfortunately, you may still have difficulty upgrading to the fixed version of bind-map since interacting with the "Update Packages" button in the *spacemacs* buffer seems to depend on bind-map. Instead, you can either

  • Delete bind-map manually, which should trigger spacemacs to install it fresh from MELPA on the next launch. You can find the folder to delete somewhere like ~/.emacs.d/elpa/28.1/develop/bind-map-20230307.1837.
  • Upgrade packages with M-x configuration-layer/update-packages RET

Please confirm that this works, and then we can close the issue. My apologies for causing the problem!

@ghost
Copy link
Author

ghost commented Mar 9, 2024

  • Upgrade packages with M-x configuration-layer/update-packages RET

This was impossible because M-x did not work. Instead, I deleted .emacs.d and cloned Spacemacs again, and it is working now. Thank you for repairing it.

@ghost
Copy link
Author

ghost commented Mar 9, 2024

Yesterday I pressed SPC f e U and broke Spacemacs. I needed then to roll back that update, but could not do so from within Spacemacs. How could I have done so from without Spacemacs? That would have allowed me to use Spacemacs while waiting for the guilty package to be repaired.

@nicorikken
Copy link

@dankessler

  • Delete bind-map manually, which should trigger spacemacs to install it fresh from MELPA on the next launch. You can find the folder to delete somewhere like ~/.emacs.d/elpa/28.1/develop/bind-map-20230307.1837.

I used this method and it worked nicely. In my case it was: rm -r ~/.emacs.d/elpa/27.1/develop/bind-map-20240307.1837/

@ghost ghost closed this as completed Mar 13, 2024
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants