* 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.