all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
@ 2023-08-14  7:14 Adam Porter
  2023-08-14  8:13 ` Philip Kaludercic
  0 siblings, 1 reply; 9+ messages in thread
From: Adam Porter @ 2023-08-14  7:14 UTC (permalink / raw)
  To: 65283

Hi,

Wanting to test whether package-vc-install in Emacs 29.1 is now a
suitable replacement for Quelpa for installing my Ement.el package from
git, I started an instance of Emacs 29.1 in a clean configuration and
evaluated:


   (package-vc-install "https://github.com/alphapapa/ement.el")


It seemed to proceed, installing Ement's dependencies, but when it began
to compile Ement itself, it gave errors about not being able to find one
of the dependencies, taxy-magit-section:


     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-api.el at Mon 
Aug 14 01:56:31 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-directory.el at 
Mon Aug 14 01:56:31 2023
     ement-directory.el:32:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-lib.el at Mon 
Aug 14 01:56:31 2023
     ement-lib.el:30:2: Error: Cannot open load file: No such file or 
directory, taxy-magit-section
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-macros.el at 
Mon Aug 14 01:56:31 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-notify.el at 
Mon Aug 14 01:56:31 2023
     ement-notify.el:33:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-room-list.el at 
Mon Aug 14 01:56:31 2023
     ement-room-list.el:34:2: Error: Cannot open load file: No such file 
or directory, taxy-magit-section
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-room.el at Mon 
Aug 14 01:56:31 2023
     ement-room.el:54:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-structs.el at 
Mon Aug 14 01:56:31 2023
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/ement/ement-tabulated-room-list.el at Mon Aug 
14 01:56:31 2023
     ement-tabulated-room-list.el:48:2: Error: Eager macro-expansion 
failure: (file-missing "Cannot open load file" "No such file or 
directory" "taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement.el at Mon Aug 
14 01:56:31 2023
     ement.el:61:2: Error: Eager macro-expansion failure: (file-missing 
"Cannot open load file" "No such file or directory" "taxy-magit-section")
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/ement/’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/tests/ement-tests.el 
at Mon Aug 14 01:56:31 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/ement/tests/’
     ement-tests.el:29:2: Error: Eager macro-expansion failure: 
(file-missing
     "Cannot open load file" "No such file or directory"
     "taxy-magit-section")


Pressing "C-h P taxy-magit-section RET" shows:


     Package taxy-magit-section is dependency.

          Status: Installed in ‘taxy-magit-section-0.12.2/’.
         Version: 0.12.2
          Commit: 594531569c03206cbc83b74d679ffd0e93edb4d0


But, while other dependency packages have been added to the load-path,
taxy-magit-section has not:


     load-path is a variable defined in ‘C source code’.

     Its value is
     ("/tmp/tmp.pHnRPcOV41/elpa/ement"
     "/tmp/tmp.pHnRPcOV41/elpa/magit-section-20230805.1908"
     "/tmp/tmp.pHnRPcOV41/elpa/dash-20230714.723"
     "/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2"
     "/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1"
     "/tmp/tmp.pHnRPcOV41/elpa/plz-0.7"
     "/tmp/tmp.pHnRPcOV41/elpa/persist-0.5"
     "/tmp/tmp.pHnRPcOV41/elpa/svg-lib-0.2.7"
     "/home/me/.guix-profile/share/emacs/site-lisp"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/vc"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/use-package"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/url"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/textmodes"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/progmodes"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/play"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/org"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/nxml"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/net"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/mh-e"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/mail"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/leim"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/language"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/international"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/image"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/gnus"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/eshell"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/erc"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/emulation"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/emacs-lisp"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/cedet"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/calendar"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/calc"
 
"/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/obsolete")


I've no explanation for why it would be omitted wile other dependencies 
installed by the same command were added correctly.

My only guess is that it could be that package-vc is not correctly 
handling the fact that "taxy-magit-section" is maintained in the same 
git repository as "taxy", in a separate branch.  GNU ELPA handles this 
correctly, so it seems that package-vc should as well.

Following is the full output from the "*Compile-Log*" buffer.


     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/svg-lib-0.2.7’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/svg-lib-0.2.7/svg-lib-demo.el at Mon Aug 14 
01:56:25 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/svg-lib-0.2.7/’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/svg-lib-0.2.7/svg-lib.el at 
Mon Aug 14 01:56:25 2023

     In svg-lib-style:
     svg-lib.el:227:34: Warning: Unused lexical variable `value'

     In svg-lib-progress-pie:
     svg-lib.el:373:49: Warning: ‘pi’ is an obsolete variable (as of 
23.3); use
         ‘float-pi’ instead.
     svg-lib.el:381:34: Warning: ‘pi’ is an obsolete variable (as of 
23.3); use
         ‘float-pi’ instead.

     In svg-lib-date:
     svg-lib.el:650:11: Warning: Unused lexical variable `alignment'
     svg-lib.el:659:11: Warning: Unused lexical variable `font-weight'
     svg-lib.el:665:11: Warning: Unused lexical variable `ascent'
     svg-lib.el:666:11: Warning: Unused lexical variable `tag-char-width'
     svg-lib.el:667:11: Warning: Unused lexical variable `tag-char-height'
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:25 2023
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/persist-0.5’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/persist-0.5/persist.el at 
Mon Aug 14 01:56:25 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/persist-0.5/’
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/persist-0.5/’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/persist-0.5/test/persist-tests.el at Mon Aug 14 
01:56:25 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/persist-0.5/test/’
     persist-tests.el:18:7: Warning: ‘seq-contains’ is an obsolete 
function (as of
         27.1); use ‘seq-contains-p’ instead.
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:26 2023
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/plz-0.7’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/plz-0.7/plz.el at Mon Aug 
14 01:56:26 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/plz-0.7/’
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/plz-0.7/’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/plz-0.7/tests/test-plz.el 
at Mon Aug 14 01:56:26 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/plz-0.7/tests/’
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:27 2023
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/taxy.el at Mon 
Aug 14 01:56:27 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/’

     In taxy-take-keyed:
     taxy.el:148:2: Warning: docstring has wrong usage of unescaped 
single quotes
         (use \= or different quoting)
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/examples/bookmarky.el at Mon Aug 14 
01:56:28 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/examples/’
     bookmarky.el:34:2: Error: Cannot open load file: No such file or 
directory, taxy-magit-section
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/examples/deffy.el at Mon Aug 14 
01:56:28 2023
     deffy.el:34:2: Error: Cannot open load file: No such file or 
directory, taxy-magit-section
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/examples/diredy.el at Mon Aug 14 
01:56:28 2023
     diredy.el:32:2: Error: Cannot open load file: No such file or 
directory, taxy-magit-section
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/taxy-0.10.1/examples/taxy-package-report.el at 
Mon Aug 14 01:56:28 2023
     taxy-package-report.el:31:2: Error: Cannot open load file: No such 
file or directory, taxy-magit-section
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:29 2023
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat-25.el at Mon Aug 14 
01:56:29 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat-26.el at Mon Aug 14 
01:56:29 2023
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat-27.el at Mon Aug 14 
01:56:29 2023
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat-28.el at Mon Aug 14 
01:56:29 2023
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat-29.el at Mon Aug 14 
01:56:29 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/compat-29.1.4.2/compat.el 
at Mon Aug 14 01:56:29 2023
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:30 2023
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/dash-20230714.723’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/dash-20230714.723/dash.el 
at Mon Aug 14 01:56:30 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/dash-20230714.723/’
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:30 2023
     Leaving directory 
‘/tmp/tmp.pHnRPcOV41/elpa/magit-section-20230805.1908’
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/magit-section-20230805.1908/magit-section.el at 
Mon Aug 14 01:56:30 2023
     Entering directory 
‘/tmp/tmp.pHnRPcOV41/elpa/magit-section-20230805.1908/’
     \f
     Compiling internal form(s) at Mon Aug 14 01:56:31 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-api.el at Mon 
Aug 14 01:56:31 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-directory.el at 
Mon Aug 14 01:56:31 2023
     ement-directory.el:32:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-lib.el at Mon 
Aug 14 01:56:31 2023
     ement-lib.el:30:2: Error: Cannot open load file: No such file or 
directory, taxy-magit-section
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-macros.el at 
Mon Aug 14 01:56:31 2023
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-notify.el at 
Mon Aug 14 01:56:31 2023
     ement-notify.el:33:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-room-list.el at 
Mon Aug 14 01:56:31 2023
     ement-room-list.el:34:2: Error: Cannot open load file: No such file 
or directory, taxy-magit-section
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-room.el at Mon 
Aug 14 01:56:31 2023
     ement-room.el:54:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement-structs.el at 
Mon Aug 14 01:56:31 2023
     \f
     Compiling file 
/tmp/tmp.pHnRPcOV41/elpa/ement/ement-tabulated-room-list.el at Mon Aug 
14 01:56:31 2023
     ement-tabulated-room-list.el:48:2: Error: Eager macro-expansion 
failure: (file-missing "Cannot open load file" "No such file or 
directory" "taxy-magit-section")
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/ement.el at Mon Aug 
14 01:56:31 2023
     ement.el:61:2: Error: Eager macro-expansion failure: (file-missing 
"Cannot open load file" "No such file or directory" "taxy-magit-section")
     Leaving directory ‘/tmp/tmp.pHnRPcOV41/elpa/ement/’
     \f
     Compiling file /tmp/tmp.pHnRPcOV41/elpa/ement/tests/ement-tests.el 
at Mon Aug 14 01:56:31 2023
     Entering directory ‘/tmp/tmp.pHnRPcOV41/elpa/ement/tests/’
     ement-tests.el:29:2: Error: Eager macro-expansion failure: 
(file-missing "Cannot open load file" "No such file or directory" 
"taxy-magit-section")
     \f
     Compiling internal form(s) at Mon Aug 14 01:57:54 2023


Thanks for your work on Emacs.


In GNU Emacs 29.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.37,
cairo version 1.16.0)
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux 11 (bullseye)

Configured using:
  'configure
 
CONFIG_SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash
 
SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash
  --prefix=/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1
  --enable-fast-install --with-modules --with-cairo
  --with-native-compilation --disable-build-details'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3
THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
   value of $EMACSLOADPATH: 
/home/me/.guix-profile/share/emacs/site-lisp:/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp
   value of $LC_MONETARY: en_US.UTF-8
   value of $LC_NUMERIC: en_US.UTF-8
   value of $LC_TIME: en_US.UTF-8
   value of $LANG: en_US.UTF-8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
   tooltip-mode: t
   global-eldoc-mode: t
   eldoc-mode: t
   show-paren-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   tool-bar-mode: t
   menu-bar-mode: t
   file-name-shadow-mode: t
   global-font-lock-mode: t
   font-lock-mode: t
   blink-cursor-mode: t
   line-number-mode: t
   indent-tabs-mode: t
   transient-mark-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug cl-print help-fns ement-api shr
pixel-fill kinsoku url-file notifications dbus dns ement-structs
ement-macros magit-section ement-autoloads benchmark format-spec dash
cursor-sensor compat magit-section-autoloads dash-autoloads ert-x
compat-macs compat-autoloads project taxy bookmark taxy-autoloads plz
let-alist pcase info plz-autoloads ert ewoc debug backtrace find-func
persist persist-autoloads svg-lib color svg dom xml compile comint
ansi-osc ansi-color ring svg-lib-autoloads loaddefs-gen radix-tree
tar-mode arc-mode archive-mode vc-git diff-mode easy-mmode package-vc vc
vc-dispatcher cus-edit pp cus-start cus-load wid-edit lisp-mnt thingatpt
comp comp-cstr warnings icons rx cl-extra help-mode mm-archive message
sendmail yank-media dired dired-loaddefs rfc822 mml mml-sec epa derived
gnus-util text-property-search time-date mailabbrev gmm-utils mailheader
mm-decode mm-bodies mm-encode mail-utils gnutls network-stream url-cache
url-http url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums
mail-prsvr url-gw nsm puny epg rfc6068 epg-config finder-inf package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers
url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache
json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs
cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process native-compile emacs)

Memory information:
((conses 16 453507 71437)
  (symbols 48 22692 0)
  (strings 32 131134 6661)
  (string-bytes 1 3346760)
  (vectors 16 40012)
  (vector-slots 8 719314 30377)
  (floats 8 305 79)
  (intervals 56 839 0)
  (buffers 976 24))





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-14  7:14 bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path Adam Porter
@ 2023-08-14  8:13 ` Philip Kaludercic
  2023-08-14 17:28   ` Adam Porter
  0 siblings, 1 reply; 9+ messages in thread
From: Philip Kaludercic @ 2023-08-14  8:13 UTC (permalink / raw)
  To: Adam Porter; +Cc: 65283

Adam Porter <adam@alphapapa.net> writes:

> Hi,
>
> Wanting to test whether package-vc-install in Emacs 29.1 is now a
> suitable replacement for Quelpa for installing my Ement.el package from
> git, I started an instance of Emacs 29.1 in a clean configuration and
> evaluated:
>
>   (package-vc-install "https://github.com/alphapapa/ement.el")
>
> It seemed to proceed, installing Ement's dependencies, but when it began
> to compile Ement itself, it gave errors about not being able to find one
> of the dependencies, taxy-magit-section:

Did the installation actually fail, or were these warnings just printed?
In my case, I got a few error messages as well, but ement was available
after the command had finished.

> I've no explanation for why it would be omitted wile other
> dependencies installed by the same command were added correctly.
>
> My only guess is that it could be that package-vc is not correctly
> handling the fact that "taxy-magit-section" is maintained in the same
> git repository as "taxy", in a separate branch.  GNU ELPA handles this
> correctly, so it seems that package-vc should as well.

That shouldn't make a difference, since dependencies for VC packages are
downloaded just like for regular packages.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-14  8:13 ` Philip Kaludercic
@ 2023-08-14 17:28   ` Adam Porter
  2023-08-15 20:11     ` Philip Kaludercic
  0 siblings, 1 reply; 9+ messages in thread
From: Adam Porter @ 2023-08-14 17:28 UTC (permalink / raw)
  To: Philip Kaludercic; +Cc: 65283

On 8/14/23 03:13, Philip Kaludercic wrote:
> Adam Porter <adam@alphapapa.net> writes:
> 
>> Hi,
>>
>> Wanting to test whether package-vc-install in Emacs 29.1 is now a
>> suitable replacement for Quelpa for installing my Ement.el package from
>> git, I started an instance of Emacs 29.1 in a clean configuration and
>> evaluated:
>>
>>    (package-vc-install "https://github.com/alphapapa/ement.el")
>>
>> It seemed to proceed, installing Ement's dependencies, but when it began
>> to compile Ement itself, it gave errors about not being able to find one
>> of the dependencies, taxy-magit-section:
> 
> Did the installation actually fail, or were these warnings just printed?
> In my case, I got a few error messages as well, but ement was available
> after the command had finished.

Eager macro expansion errors indicate macro-expansion failure and 
compilation failure; the package is not installed correctly.

As well, as I said, the taxy-magit-section package is not present in the 
load-path, which means it can't be loaded by ement at load time.

These problems don't occur when installing ement and its dependencies 
from GNU ELPA with package-install, nor when installing them from git 
with Quelpa.

>> I've no explanation for why it would be omitted wile other
>> dependencies installed by the same command were added correctly.
>>
>> My only guess is that it could be that package-vc is not correctly
>> handling the fact that "taxy-magit-section" is maintained in the same
>> git repository as "taxy", in a separate branch.  GNU ELPA handles this
>> correctly, so it seems that package-vc should as well.
> 
> That shouldn't make a difference, since dependencies for VC packages are
> downloaded just like for regular packages.

Agreed, however it's the only difference I can think of in the 
taxy-magit-section package recipe.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-14 17:28   ` Adam Porter
@ 2023-08-15 20:11     ` Philip Kaludercic
  2023-08-15 20:47       ` Adam Porter
  0 siblings, 1 reply; 9+ messages in thread
From: Philip Kaludercic @ 2023-08-15 20:11 UTC (permalink / raw)
  To: Adam Porter; +Cc: 65283

Adam Porter <adam@alphapapa.net> writes:

> On 8/14/23 03:13, Philip Kaludercic wrote:
>> Adam Porter <adam@alphapapa.net> writes:
>> 
>>> Hi,
>>>
>>> Wanting to test whether package-vc-install in Emacs 29.1 is now a
>>> suitable replacement for Quelpa for installing my Ement.el package from
>>> git, I started an instance of Emacs 29.1 in a clean configuration and
>>> evaluated:

When you say clean configuration, do you mean that you invoked emacs
with -Q, or also --init-directory=[some fresh directory]?  I noticed
that you appear to be using Guix, so did you perhaps use a Guix
container shell?

I ask, because it might be that just using -Q is insufficient in this
case, in case you already have a regular Emacs configuration, as it
(falsely) assumes the package has already been installed, but it doesn't
add it to the load path.

Because in my case (GNU Emacs 30.0.50 (build 6, x86_64-pc-linux-gnu,
GTK+ Version 3.24.37, cairo version 1.16.0) of 2023-08-15),

     lemacs -Q --init-directory=/tmp

appears to have all the right directories in `load-path':

Value:
("/tmp/package-isolate-gaZsWf/elpa/ement"
 "/tmp/package-isolate-gaZsWf/elpa/taxy-magit-section-0.12.2"
 "/tmp/package-isolate-gaZsWf/elpa/magit-section-3.3.0"
 "/tmp/package-isolate-gaZsWf/elpa/dash-2.19.1"
 "/tmp/package-isolate-gaZsWf/elpa/taxy-0.10.1"
 "/tmp/package-isolate-gaZsWf/elpa/plz-0.7"
 "/tmp/package-isolate-gaZsWf/elpa/persist-0.5"
 "/tmp/package-isolate-gaZsWf/elpa/svg-lib-0.2.7"
 ...





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-15 20:11     ` Philip Kaludercic
@ 2023-08-15 20:47       ` Adam Porter
  2023-08-15 21:52         ` Philip Kaludercic
  0 siblings, 1 reply; 9+ messages in thread
From: Adam Porter @ 2023-08-15 20:47 UTC (permalink / raw)
  To: Philip Kaludercic; +Cc: 65283

Hi Philip,

On 8/15/23 15:11, Philip Kaludercic wrote:
 > Adam Porter <adam@alphapapa.net> writes:
 >
 >> On 8/14/23 03:13, Philip Kaludercic wrote:
 >>> Adam Porter <adam@alphapapa.net> writes:
 >>>
 >>>> Hi,
 >>>>
 >>>> Wanting to test whether package-vc-install in Emacs 29.1 is now a
 >>>> suitable replacement for Quelpa for installing my Ement.el package 
from
 >>>> git, I started an instance of Emacs 29.1 in a clean configuration and
 >>>> evaluated:
 >
 > When you say clean configuration, do you mean that you invoked emacs
 > with -Q, or also --init-directory=[some fresh directory]?  I noticed
 > that you appear to be using Guix, so did you perhaps use a Guix
 > container shell?
I've tried three different ways now:

1. Using my with-emacs.sh script [0] (which was written for Emacs before 
the "--init-directory" option was added, but remains compatible with 
Emacs 29.1):

   with-emacs.sh -e emacs-29.1 -- --eval '(package-vc-install 
"https://github.com/alphapapa/ement.el")'

2. Using "-q --init-directory", i.e.

   emacs-29.1 -q --init-directory=$(mktemp -d) --eval 
'(package-vc-install "https://github.com/alphapapa/ement.el")'

3. Using "-Q --init-directory", i.e.

   emacs-29.1 -Q --init-directory=$(mktemp -d) --eval 
'(package-vc-install "https://github.com/alphapapa/ement.el")'

All three ways seem to produce the same problem with the same error 
messages and the same load-path missing taxy-magit-section's directory.

I do have Emacs 29.1 installed with Guix, on top of my Debian system. 
However, I've been using this setup for quite some time now, having also 
used Guix to install Emacs 27 and 28 previously, and I've never had this 
problem before.  So I don't think that Guix is related to the problem, 
although I can't say for certain.

Scouring the "*Messages*" buffer again, I noticed another series of 
messages:

   Checking /tmp/tmp.m5Cj6y1gaF/elpa/taxy-0.10.1/examples...
   Done (Total of 1 file compiled, 4 failed, 2 skipped in 2 directories)
   Contacting host: elpa.gnu.org:443
   Parsing tar file...done
   Extracting...done
     INFO     Scraping files for loaddefs...done
     GEN      taxy-magit-section-autoloads.el
   Unable to activate package ‘taxy-magit-section’.
   Required package ‘magit-section-3.2.1’ is unavailable
   Contacting host: elpa.gnu.org:443
   Parsing tar file...done
   Extracting...done
     INFO     Scraping files for loaddefs...done
     GEN      dash-autoloads.el
   Checking /tmp/tmp.m5Cj6y1gaF/elpa/dash-2.19.1... [2 times]

As you can see, it says that it can't activate taxy-magit-section 
because magit-section-3.2.1 is unavailable.  However, about 20 lines later:

   Checking /tmp/tmp.m5Cj6y1gaF/elpa/dash-2.19.1/doc...
   Done (Total of 2 files compiled, 2 skipped)
   Contacting host: elpa.nongnu.org:443
   Parsing tar file...done
   Extracting...done
     INFO     Scraping files for loaddefs...done
     GEN      magit-section-autoloads.el
   Checking /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0... [3 times]
   Compiling 
/tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0/magit-section.el...done
   Wrote /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0/magit-section.elc
   Checking /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0...
   Done (Total of 1 file compiled, 2 skipped)
     INFO     Scraping files for loaddefs...done
     GEN      ement-autoloads.el

So it installs magit-section (at v3.3.0) two packages later.

The taxy-magit-section has these dependencies specified in 
"taxy-magit-section.el":

   ;; Package-Requires: ((emacs "26.3") (magit-section "3.2.1") (taxy 
"0.10"))

And, as listed in "C-h P taxy-magit-section RET":

   Package taxy-magit-section is dependency.

        Status: Installed in ‘taxy-magit-section-0.12.2/’.
       Version: 0.12.2
        Commit: 594531569c03206cbc83b74d679ffd0e93edb4d0
       Summary: View Taxy structs in a Magit Section buffer
      Requires: emacs-26.3, magit-section-3.2.1, taxy-0.10

So it seems that magit-section is being installed after 
taxy-magit-section rather than before, which seems to prevent Emacs from 
activating the taxy-magit-section package (and thereby adding it to 
load-path), which later causes the compilation of ement to fail since it 
can't find taxy-magit-section.

And all of this seems to be because the version number of magit-section 
is not being correctly recognized as a later version and thereby 
fulfilling the dependency--this even though it is being recognized as a 
dependency and installed by another part of the process.

Meanwhile, if I install using package-install with:

   emacs-29.1 --init-directory=$(mktemp -d) -q --eval "(package-install 
'ement)"

Then installation of all packages proceeds without error, and load-path 
shows:

     ("/tmp/tmp.19yxzzQiIk/elpa/ement-0.10" "
     /tmp/tmp.19yxzzQiIk/elpa/persist-0.5" "
     /tmp/tmp.19yxzzQiIk/elpa/plz-0.7" "
     /tmp/tmp.19yxzzQiIk/elpa/taxy-magit-section-0.12.2" "
     /tmp/tmp.19yxzzQiIk/elpa/magit-section-3.3.0" "
     /tmp/tmp.19yxzzQiIk/elpa/dash-2.19.1" "
     /tmp/tmp.19yxzzQiIk/elpa/taxy-0.10.1" "
     /tmp/tmp.19yxzzQiIk/elpa/svg-lib-0.2.7" "
     /tmp/tmp.19yxzzQiIk/elpa/transient-0.4.1" "
     /tmp/tmp.19yxzzQiIk/elpa/compat-29.1.4.2" "
     /home/me/.guix-profile/share/emacs/site-lisp" "
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/vc" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/use-package" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/url" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/textmodes" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/progmodes" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/play" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/org" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/nxml" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/net" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/mh-e" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/mail" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/leim" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/language" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/international" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/image" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/gnus" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/eshell" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/erc" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/emulation" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/emacs-lisp" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/cedet" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/calendar" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/calc" 
"
 
/gnu/store/c7vqk20kf6zw73klr8bacnh0gqahk5dd-emacs-29.1-29.1/share/emacs/29.1/lisp/obsolete")

So there appears to be a bug somewhere in the package-vc library.

I see that you tested with an Emacs 30.0.50 build.  Could you test with 
29.1, the version I'm using?

Thanks,
Adam

0: https://github.com/alphapapa/with-emacs.sh





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-15 20:47       ` Adam Porter
@ 2023-08-15 21:52         ` Philip Kaludercic
  2023-08-17 13:53           ` Adam Porter
  0 siblings, 1 reply; 9+ messages in thread
From: Philip Kaludercic @ 2023-08-15 21:52 UTC (permalink / raw)
  To: Adam Porter; +Cc: 65283

[-- Attachment #1: Type: text/plain, Size: 6779 bytes --]

Adam Porter <adam@alphapapa.net> writes:

> Hi Philip,
>
> On 8/15/23 15:11, Philip Kaludercic wrote:
>> Adam Porter <adam@alphapapa.net> writes:
>>
>>> On 8/14/23 03:13, Philip Kaludercic wrote:
>>>> Adam Porter <adam@alphapapa.net> writes:
>>>>
>>>>> Hi,
>>>>>
>>>>> Wanting to test whether package-vc-install in Emacs 29.1 is now a
>>>>> suitable replacement for Quelpa for installing my Ement.el
>      package from
>>>>> git, I started an instance of Emacs 29.1 in a clean configuration and
>>>>> evaluated:
>>
>> When you say clean configuration, do you mean that you invoked emacs
>> with -Q, or also --init-directory=[some fresh directory]?  I noticed
>> that you appear to be using Guix, so did you perhaps use a Guix
>> container shell?
> I've tried three different ways now:
>
> 1. Using my with-emacs.sh script [0] (which was written for Emacs
> before the "--init-directory" option was added, but remains compatible
> with Emacs 29.1):
>
>   with-emacs.sh -e emacs-29.1 -- --eval '(package-vc-install
>   "https://github.com/alphapapa/ement.el")'
>
> 2. Using "-q --init-directory", i.e.
>
>   emacs-29.1 -q --init-directory=$(mktemp -d) --eval
>   '(package-vc-install "https://github.com/alphapapa/ement.el")'
>
> 3. Using "-Q --init-directory", i.e.
>
>   emacs-29.1 -Q --init-directory=$(mktemp -d) --eval
>   '(package-vc-install "https://github.com/alphapapa/ement.el")'
>
> All three ways seem to produce the same problem with the same error
> messages and the same load-path missing taxy-magit-section's
> directory.

I have been using the third approach (with the difference that I invoked
`package-vc-install' as a command using M-x), and it worked.  When I use
your command, it doesn't -- so that is good from a reproducability
perspective.

> I do have Emacs 29.1 installed with Guix, on top of my Debian
> system. However, I've been using this setup for quite some time now,
> having also used Guix to install Emacs 27 and 28 previously, and I've
> never had this problem before.  So I don't think that Guix is related
> to the problem, although I can't say for certain.

I wasn't implying that it was to blame, rather I just wanted to make
sure whether or not you were/weren't launching Emacs in an isolated
container.

> Scouring the "*Messages*" buffer again, I noticed another series of
> messages:
>
>   Checking /tmp/tmp.m5Cj6y1gaF/elpa/taxy-0.10.1/examples...
>   Done (Total of 1 file compiled, 4 failed, 2 skipped in 2 directories)
>   Contacting host: elpa.gnu.org:443
>   Parsing tar file...done
>   Extracting...done
>     INFO     Scraping files for loaddefs...done
>     GEN      taxy-magit-section-autoloads.el
>   Unable to activate package ‘taxy-magit-section’.
>   Required package ‘magit-section-3.2.1’ is unavailable
>   Contacting host: elpa.gnu.org:443
>   Parsing tar file...done
>   Extracting...done
>     INFO     Scraping files for loaddefs...done
>     GEN      dash-autoloads.el
>   Checking /tmp/tmp.m5Cj6y1gaF/elpa/dash-2.19.1... [2 times]
>
> As you can see, it says that it can't activate taxy-magit-section
> because magit-section-3.2.1 is unavailable.  However, about 20 lines
> later:
>
>   Checking /tmp/tmp.m5Cj6y1gaF/elpa/dash-2.19.1/doc...
>   Done (Total of 2 files compiled, 2 skipped)
>   Contacting host: elpa.nongnu.org:443
>   Parsing tar file...done
>   Extracting...done
>     INFO     Scraping files for loaddefs...done
>     GEN      magit-section-autoloads.el
>   Checking /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0... [3 times]
>   Compiling
>   /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0/magit-section.el...done
>   Wrote /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0/magit-section.elc
>   Checking /tmp/tmp.m5Cj6y1gaF/elpa/magit-section-3.3.0...
>   Done (Total of 1 file compiled, 2 skipped)
>     INFO     Scraping files for loaddefs...done
>     GEN      ement-autoloads.el
>
> So it installs magit-section (at v3.3.0) two packages later.
>
> The taxy-magit-section has these dependencies specified in
> "taxy-magit-section.el":
>
>   ;; Package-Requires: ((emacs "26.3") (magit-section "3.2.1") (taxy
>      "0.10"))
>
> And, as listed in "C-h P taxy-magit-section RET":
>
>   Package taxy-magit-section is dependency.
>
>        Status: Installed in ‘taxy-magit-section-0.12.2/’.
>       Version: 0.12.2
>        Commit: 594531569c03206cbc83b74d679ffd0e93edb4d0
>       Summary: View Taxy structs in a Magit Section buffer
>      Requires: emacs-26.3, magit-section-3.2.1, taxy-0.10
>
> So it seems that magit-section is being installed after
> taxy-magit-section rather than before, which seems to prevent Emacs
> from activating the taxy-magit-section package (and thereby adding it
> to load-path), which later causes the compilation of ement to fail
> since it can't find taxy-magit-section.

That is interesting,  

> And all of this seems to be because the version number of
> magit-section is not being correctly recognized as a later version and
> thereby fulfilling the dependency--this even though it is being
> recognized as a dependency and installed by another part of the
> process.
>
> Meanwhile, if I install using package-install with:
>
>   emacs-29.1 --init-directory=$(mktemp -d) -q --eval "(package-install
>   'ement)"
>
> Then installation of all packages proceeds without error, and
> load-path shows:
>
>     ("/tmp/tmp.19yxzzQiIk/elpa/ement-0.10" "
>     /tmp/tmp.19yxzzQiIk/elpa/persist-0.5" "
>     /tmp/tmp.19yxzzQiIk/elpa/plz-0.7" "
>     /tmp/tmp.19yxzzQiIk/elpa/taxy-magit-section-0.12.2" "
>     /tmp/tmp.19yxzzQiIk/elpa/magit-section-3.3.0" "
>     /tmp/tmp.19yxzzQiIk/elpa/dash-2.19.1" "
>     /tmp/tmp.19yxzzQiIk/elpa/taxy-0.10.1" "
>     /tmp/tmp.19yxzzQiIk/elpa/svg-lib-0.2.7" "
>     /tmp/tmp.19yxzzQiIk/elpa/transient-0.4.1" "
>     /tmp/tmp.19yxzzQiIk/elpa/compat-29.1.4.2" "
>     /home/me/.guix-profile/share/emacs/site-lisp" 

[...]

> So there appears to be a bug somewhere in the package-vc library.

With a slight modification of `package-vc-install-dependencies', we can
see in which order the dependencies are installed:

--8<---------------cut here---------------start------------->8---
(package-vc-install-dependencies (package-desc-reqs (cadr (assoc 'ement package-archive-contents))))
;=> (:to-install (svg-lib persist plz taxy taxy-magit-section) :missing nil)
;                ^ mapc runs over this
--8<---------------cut here---------------end--------------->8---

This made me suspect that there might be a bug in that function, and
with these changes, the above command works (I can't test it because my
matrix account AFAIK isn't supported by Ement):


[-- Attachment #2: Type: text/plain, Size: 1085 bytes --]

diff --git a/lisp/emacs-lisp/package-vc.el b/lisp/emacs-lisp/package-vc.el
index db8b41aee6a..2da788ddeec 100644
--- a/lisp/emacs-lisp/package-vc.el
+++ b/lisp/emacs-lisp/package-vc.el
@@ -451,13 +451,11 @@ package-vc-install-dependencies
                              (desc (cadr (assoc package pac))))
                         (and desc (seq-some
                                    (apply-partially #'depends-on-p target)
-                                   (package-desc-reqs desc))))))
+                                   (mapcar #'car (package-desc-reqs desc)))))))
                 (dependent-order (a b)
                   (let ((desc-a (package-desc-name a))
                         (desc-b (package-desc-name b)))
-                    (or (not desc-a) (not desc-b)
-                        (not (depends-on-p desc-b desc-a))
-                        (depends-on-p desc-a desc-b)))))
+                    (depends-on-p desc-a desc-b))))
       (mapc #'search requirements)
       (cl-callf sort to-install #'version-order)
       (cl-callf seq-uniq to-install #'duplicate-p)

[-- Attachment #3: Type: text/plain, Size: 484 bytes --]


It boils down to a lack-of-type-safety kind of bug.  It was comparing
'package-name with (package-name . "version string"), that always ends
up being nil.

Not sure about the change to `dependent-order', I'll have to think about
that in more detail tomorrow.  Perhaps there is an all-together shorter
patch?

> I see that you tested with an Emacs 30.0.50 build.  Could you test
> with 29.1, the version I'm using?
>
> Thanks,
> Adam
>
> 0: https://github.com/alphapapa/with-emacs.sh

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-15 21:52         ` Philip Kaludercic
@ 2023-08-17 13:53           ` Adam Porter
  2023-08-17 14:08             ` Philip Kaludercic
  2023-08-19  9:44             ` Philip Kaludercic
  0 siblings, 2 replies; 9+ messages in thread
From: Adam Porter @ 2023-08-17 13:53 UTC (permalink / raw)
  To: Philip Kaludercic; +Cc: 65283


Hi Philip,

On 8/15/23 16:52, Philip Kaludercic wrote:

>> So there appears to be a bug somewhere in the package-vc library.
> 
> With a slight modification of `package-vc-install-dependencies', we can
> see in which order the dependencies are installed:
> 
> --8<---------------cut here---------------start------------->8---
> (package-vc-install-dependencies (package-desc-reqs (cadr (assoc 'ement package-archive-contents))))
> ;=> (:to-install (svg-lib persist plz taxy taxy-magit-section) :missing nil)
> ;                ^ mapc runs over this
> --8<---------------cut here---------------end--------------->8---
> 
> This made me suspect that there might be a bug in that function, and
> with these changes, the above command works 

Great.

> (I can't test it because my matrix account AFAIK isn't supported by
> Ement):
This is a bit off-topic, but would you please explain what you mean (via 
private email would be fine)?  AFAIK Ement.el should support any Matrix 
account on any homeserver.  If you've encountered a bug trying to use 
it, I'd like to fix it.

> It boils down to a lack-of-type-safety kind of bug.  It was comparing
> 'package-name with (package-name . "version string"), that always ends
> up being nil.

I've encountered similar issues when dealing with package.el functions. 
The inconsistent use of types can be challenging to work with.

> Not sure about the change to `dependent-order', I'll have to think about
> that in more detail tomorrow.  Perhaps there is an all-together shorter
> patch?

It seems like a reasonable patch to me.

Is there any chance of getting this fix to Emacs 29 users, either via a 
29.2 release or by putting a new version of package-vc on GNU ELPA?  It 
would be a shame for this great new feature to be unusable (or 
unreliable) until Emacs 30 is released.

Thanks for your work,
Adam





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-17 13:53           ` Adam Porter
@ 2023-08-17 14:08             ` Philip Kaludercic
  2023-08-19  9:44             ` Philip Kaludercic
  1 sibling, 0 replies; 9+ messages in thread
From: Philip Kaludercic @ 2023-08-17 14:08 UTC (permalink / raw)
  To: Adam Porter; +Cc: 65283

Adam Porter <adam@alphapapa.net> writes:

> Hi Philip,
>
> On 8/15/23 16:52, Philip Kaludercic wrote:
>
>>> So there appears to be a bug somewhere in the package-vc library.
>> With a slight modification of `package-vc-install-dependencies', we
>> can
>> see in which order the dependencies are installed:
>> --8<---------------cut here---------------start------------->8---
>> (package-vc-install-dependencies (package-desc-reqs (cadr (assoc
>> 'ement package-archive-contents))))
>> ;=> (:to-install (svg-lib persist plz taxy taxy-magit-section) :missing nil)
>> ;                ^ mapc runs over this
>> --8<---------------cut here---------------end--------------->8---
>> This made me suspect that there might be a bug in that function, and
>> with these changes, the above command works 
>
> Great.
>
>> (I can't test it because my matrix account AFAIK isn't supported by
>> Ement):
> This is a bit off-topic, but would you please explain what you mean
> (via private email would be fine)?  AFAIK Ement.el should support any
> Matrix account on any homeserver.  If you've encountered a bug trying
> to use it, I'd like to fix it.

I misphrased my comment, what I meant to say was that my server appears
to only support Element right now.  So nothing is wrong with Ement.

>> It boils down to a lack-of-type-safety kind of bug.  It was comparing
>> 'package-name with (package-name . "version string"), that always ends
>> up being nil.
>
> I've encountered similar issues when dealing with package.el
> functions. The inconsistent use of types can be challenging to work
> with.

The best way to solve this is my experience is to provide helper
functions like `package-equal' or something like that smooth over
smaller mistakes like this.

>> Not sure about the change to `dependent-order', I'll have to think about
>> that in more detail tomorrow.  Perhaps there is an all-together shorter
>> patch?
>
> It seems like a reasonable patch to me.
>
> Is there any chance of getting this fix to Emacs 29 users, either via
> a 29.2 release or by putting a new version of package-vc on GNU ELPA?
> It would be a shame for this great new feature to be unusable (or
> unreliable) until Emacs 30 is released.

I would expect that this patch would be applied to the emacs-29 branch.
There has been a discussion on the topic of adding both package.el and
package-vc.el to ELPA, but there hasn't been any further discussion for
a few months now.

> Thanks for your work,
> Adam





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path
  2023-08-17 13:53           ` Adam Porter
  2023-08-17 14:08             ` Philip Kaludercic
@ 2023-08-19  9:44             ` Philip Kaludercic
  1 sibling, 0 replies; 9+ messages in thread
From: Philip Kaludercic @ 2023-08-19  9:44 UTC (permalink / raw)
  To: Adam Porter; +Cc: 65283-done

Adam Porter <adam@alphapapa.net> writes:

> Hi Philip,
>
> On 8/15/23 16:52, Philip Kaludercic wrote:
>
>>> So there appears to be a bug somewhere in the package-vc library.
>> With a slight modification of `package-vc-install-dependencies', we
>> can
>> see in which order the dependencies are installed:
>> --8<---------------cut here---------------start------------->8---
>> (package-vc-install-dependencies (package-desc-reqs (cadr (assoc 'ement package-archive-contents))))
>> ;=> (:to-install (svg-lib persist plz taxy taxy-magit-section) :missing nil)
>> ;                ^ mapc runs over this
>> --8<---------------cut here---------------end--------------->8---
>> This made me suspect that there might be a bug in that function, and
>> with these changes, the above command works 
>
> Great.
>
>> (I can't test it because my matrix account AFAIK isn't supported by
>> Ement):
> This is a bit off-topic, but would you please explain what you mean
> (via private email would be fine)?  AFAIK Ement.el should support any
> Matrix account on any homeserver.  If you've encountered a bug trying
> to use it, I'd like to fix it.
>
>> It boils down to a lack-of-type-safety kind of bug.  It was comparing
>> 'package-name with (package-name . "version string"), that always ends
>> up being nil.
>
> I've encountered similar issues when dealing with package.el
> functions. The inconsistent use of types can be challenging to work
> with.
>
>> Not sure about the change to `dependent-order', I'll have to think about
>> that in more detail tomorrow.  Perhaps there is an all-together shorter
>> patch?
>
> It seems like a reasonable patch to me.

I have pushed the above patch and will close this report.

> Is there any chance of getting this fix to Emacs 29 users, either via
> a 29.2 release or by putting a new version of package-vc on GNU ELPA?
> It would be a shame for this great new feature to be unusable (or
> unreliable) until Emacs 30 is released.

See https://mail.gnu.org/archive/html/emacs-devel/2023-08/msg00667.html.

> Thanks for your work,
> Adam





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-08-19  9:44 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-14  7:14 bug#65283: 29.1; package-vc-install fails to install package "ement" because some dependencies installed by it are omitted from load-path Adam Porter
2023-08-14  8:13 ` Philip Kaludercic
2023-08-14 17:28   ` Adam Porter
2023-08-15 20:11     ` Philip Kaludercic
2023-08-15 20:47       ` Adam Porter
2023-08-15 21:52         ` Philip Kaludercic
2023-08-17 13:53           ` Adam Porter
2023-08-17 14:08             ` Philip Kaludercic
2023-08-19  9:44             ` Philip Kaludercic

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.