Straight.el: Wanderlust install broken

Created on 10 Dec 2019  ยท  4Comments  ยท  Source: raxod502/straight.el

What's wrong

I try to install wanderlust using straight on doom emacs I get this error:

Debugger entered--Lisp error: (file-missing "Cannot open load file" "Datei oder Verzeichnis nicht gefunden" "std11")
  require(std11)
  #<subr eval-buffer>(#<buffer  *load*> nil "/home/tschumacher/.emacs.d/.local/straight/build/wanderlust/wl.el" nil t)
  apply(#<subr eval-buffer> (#<buffer  *load*> nil "/home/tschumacher/.emacs.d/.local/straight/build/wanderlust/wl.el" nil t))
  eval-buffer(#<buffer  *load*> nil "/home/tschumacher/.emacs.d/.local/straight/build/wanderlust/wl.el" nil t)  ; Reading at buffer position 1162
  load-with-code-conversion("/home/tschumacher/.emacs.d/.local/straight/build/wanderlust/wl.el" "/home/tschumacher/.emacs.d/.local/straight/build/wanderlust/wl.el" nil t)
  #<subr autoload-do-load>((autoload "~/.emacs.d/.local/straight/build/wanderlust/wl" ("/home/tschumacher/.emacs.d/.local/autoloads.pkg.elc" . 162446) t nil) wl nil)
  apply(#<subr autoload-do-load> ((autoload "~/.emacs.d/.local/straight/build/wanderlust/wl" ("/home/tschumacher/.emacs.d/.local/autoloads.pkg.elc" . 162446) t nil) wl))
  autoload-do-load((autoload "~/.emacs.d/.local/straight/build/wanderlust/wl" ("/home/tschumacher/.emacs.d/.local/autoloads.pkg.elc" . 162446) t nil) wl)
  command-execute(wl record)
  counsel-M-x-action("wl")
  ivy-call()
  ivy-read("M-x " ("toggle-debug-on-error" "wl" "doom/restart" "load-library" "mu4e" "restart-emacs" "eval-buffer" "=mu4e" "mu4e-compose-new" "cd" "5x5" "amx" "arp" "dbx" "dig" "erc" "ert" "eww" "ftp" "gdb" "irc" "jdb" "lsp" "man" "mpc" "pdb" "pwd" "rsh" "sdb" "xdb" "bbdb" "calc" "diff" "dirs" "ffap" "gnus" "grep" "help" "ielm" "info" "life" "mail" "mpuz" "ping" "pong" "talk" "term" "undo" "yank" "zone" ...) :predicate #f(compiled-function (x) #<bytecode 0x2113cf1>) :require-match t :history counsel-M-x-history :action counsel-M-x-action :keymap (keymap (67108908 . counsel--info-lookup-symbol) (67108910 . counsel-find-symbol)) :initial-input nil :caller counsel-M-x)
  counsel-M-x()
  funcall-interactively(counsel-M-x)
  call-interactively(counsel-M-x nil nil)
  command-execute(counsel-M-x)

I talked to @hlissner of doom emacs and he said this:

Didn't pull flim though. Or apl (which flim depends on and is where poe comes from). Perhaps straight has an issue with 2nd order+ dependencies with *-pkg.el files

Directions to reproduce

$ cd ~
$ git clone https://github.com/hlissner/doom-emacs .emacs.d
$ cd .emacs.d
$ ./bin/doom install
$ cd ~
$ emacs .doom.d/init.el # uncomment wanderlust 
$ cd ~/.emacs.d
$ ./bin/doom refresh
$ emacs
M-x wl

Version information

  • Emacs version: 26.3
  • Operating system: Archlinux
branch bug doom emacs melpa nonstandard packaging recipe handling subissue เฒ _เฒ 

Most helpful comment

This happens because SEMI has its default branch set to semi-1_14-wl (and yet also has a master branch that hasn't been updated since the new millennium). See https://github.com/raxod502/straight.el/issues/279. The work required to fix the issue is nontrivial, but there is a path forwards.

In the meantime, work around the issue as follows:

(straight-override-recipe
  '(semi :host github :repo "wanderlust/semi" :branch "semi-1_14-wl"))
(straight-override-recipe
  '(flim :host github :repo "wanderlust/flim" :branch "flim-1_14-wl"
         :files ("*.texi" "*.el" (:exclude "md5-dl.el"
                 "md5-el.el" "mel-b-dl.el" "sha1-dl.el"
                 "smtpmail.el") "flim-pkg.el")))

You'll have to delete the repos and restart, or use M-x straight-normalize-package and related commands to update the branches on disk interactively.

All 4 comments

Just to clarify:

  1. wanderlust depends on semi, semi depends on flim and flim depends on apel.
  2. The flim package provides std11.el
  3. All four packages specify their dependencies with a PACKAGE-pkg.el file, rather than a Package-Requires: header.
  4. When I install wanderlust, it pulls semi, but doesn't pull flim or apel.

I was able to recreate this in vanilla emacs with:

(require 'straight)

(mapc #'straight-use-recipes
      '((org-elpa :local-repo nil)
        (melpa
         :type git :host github
         :repo "melpa/melpa"
         :no-build t)
        (gnu-elpa-mirror
         :type git :host github
         :repo "emacs-straight/gnu-elpa-mirror"
         :no-build t)
        (emacsmirror-mirror
         :type git :host github
         :repo "emacs-straight/emacsmirror-mirror"
         :no-build t)))

(straight-use-package 'wanderlust)

This happens because SEMI has its default branch set to semi-1_14-wl (and yet also has a master branch that hasn't been updated since the new millennium). See https://github.com/raxod502/straight.el/issues/279. The work required to fix the issue is nontrivial, but there is a path forwards.

In the meantime, work around the issue as follows:

(straight-override-recipe
  '(semi :host github :repo "wanderlust/semi" :branch "semi-1_14-wl"))
(straight-override-recipe
  '(flim :host github :repo "wanderlust/flim" :branch "flim-1_14-wl"
         :files ("*.texi" "*.el" (:exclude "md5-dl.el"
                 "md5-el.el" "mel-b-dl.el" "sha1-dl.el"
                 "smtpmail.el") "flim-pkg.el")))

You'll have to delete the repos and restart, or use M-x straight-normalize-package and related commands to update the branches on disk interactively.

related #543

Looks like everything is building fine on current "develop":


Test Case

(straight-bug-report
  :user-dir "wanderlust.straight"
  :pre-bootstrap 
  (setq straight-repository-branch "develop")
  :post-bootstrap 
  (straight-use-package 'wanderlust))

  • Test run at: 2021-04-07 21:20:45
  • system-type: gnu/linux
  • straight-version: prerelease (HEAD -> feat/issue-report-102, fork/feat/issue-report-102) 36e2e9b 2021-04-07
  • emacs-version: GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo version 1.17.4, Xaw3d scroll bars) of 2021-04-01

Output

Bootstrapping straight.el...
Bootstrapping straight.el...done
Rebuilding all packages due to build cache schema change
Looking for gnu-elpa-mirror recipe โ†’ Cloning melpa...
Looking for gnu-elpa-mirror recipe โ†’ Cloning melpa...done
Looking for emacsmirror-mirror recipe โ†’ Cloning gnu-elpa-mirror...
Looking for emacsmirror-mirror recipe โ†’ Cloning gnu-elpa-mirror...done
Looking for emacsmirror-mirror recipe โ†’ Cloning el-get...
Looking for emacsmirror-mirror recipe โ†’ Cloning el-get...done
Looking for straight recipe โ†’ Cloning emacsmirror-mirror...
Looking for straight recipe โ†’ Cloning emacsmirror-mirror...done
Building straight...
Building straight...done

Test run with version: prerelease (HEAD -> develop, origin/develop) ae15f28 2021-04-07
Cloning wanderlust...
Cloning wanderlust...done
Building wanderlust...
Building wanderlust โ†’ Cloning apel...
Building wanderlust โ†’ Cloning apel...done
Building wanderlust โ†’ Building apel...
Building wanderlust โ†’ Building apel...done
Building wanderlust โ†’ Cloning flim...
Building wanderlust โ†’ Cloning flim...done
Building wanderlust โ†’ Building flim...
Building wanderlust โ†’ Building flim โ†’ Cloning oauth2...
Building wanderlust โ†’ Building flim โ†’ Cloning oauth2...done
Building wanderlust โ†’ Building flim โ†’ Building oauth2...
Building wanderlust โ†’ Building flim โ†’ Building oauth2...done
Building wanderlust โ†’ Building flim...
Building wanderlust โ†’ Building flim...done
Building wanderlust โ†’ Cloning semi...
Building wanderlust โ†’ Cloning semi...done
Building wanderlust โ†’ Building semi...
Building wanderlust โ†’ Building semi...done
Building wanderlust...
Building wanderlust...done

Packages:
"org-elpa"                n/a                  n/a
"melpa"                   n/a                  master d9c23f72 2021-04-07
"gnu-elpa-mirror"         n/a                  master a3dcb1a 2021-04-05
"el-get"                  melpa                master 84dd1837 2021-02-07
"emacsmirror-mirror"      n/a                  master 33f46f0 2021-04-07
"straight"                n/a                  develop ae15f28 2021-04-07
"wanderlust"              melpa                master 6e189fc9 2021-03-12
"apel"                    melpa                apel-wl 4e3269b 2020-11-07
"flim"                    melpa                flim-1_14-wl ddf5b6e 2021-03-24
"oauth2"                  gnu-elpa-mirror      master 8e850bc 2021-02-19
"semi"                    melpa                semi-1_14-wl 20d7530 2021-02-14


Feel free to reopen if there is still an issue here.

Was this page helpful?
0 / 5 - 0 ratings