bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#59226: 29.0.50; unable to load package-vc.el if package-vc-selected-


From: Philip Kaludercic
Subject: bug#59226: 29.0.50; unable to load package-vc.el if package-vc-selected-packages is non-nil
Date: Mon, 14 Nov 2022 11:31:33 +0000

Richard Kim <emacs18@gmail.com> writes:

> I would like to report what appears to be a bug in ~package-vc.el~ where 
> emacs is
> unable to load this file if ~package-vc-selected-packages~ variable is
> ~not-nil~. To see this problem I created following simple test file:
>
> #+begin_src elisp
> $ cat ~/demo-package-vc-issue
>
> (setq package-vc-selected-packages
>       '((treemacs-projectile
>          :lisp-dir "src/extra"
>          :main-file "treemacs-projectile.el"
>          :url "https://github.com/Alexander-Miller/treemacs";)))
>
> (setq debug-on-error t)
>
> (load-library "package-vc.el")
> #+end_src


> then following error is reported
>
> #+begin_example
> Debugger entered--Lisp error: (void-function package-vc--archives-initialize)
>   (package-vc--archives-initialize)
>   (cond ((null spec) (package-vc-install name)) ((stringp spec) 
> (package-vc-install name nil spec)) ((listp spec) 
> (package-vc--archives-initialize) (package-vc--unpack pkg-desc spec)))
>   (if (and name (package-installed-p name) (eq (progn (or (progn (and (memq 
> ... cl-struct-package-desc-tags) t)) (signal 'wrong-type-argument (list 
> 'package-desc pkg-desc))) (aref pkg-desc 5)) 'vc)) nil (cond ((null spec) 
> (package-vc-install name)) ((stringp spec) (package-vc-install name nil 
> spec)) ((listp spec) (package-vc--archives-initialize) (package-vc--unpack 
> pkg-desc spec))))
>   (let ((pkg-desc (car (cdr (assoc name package-alist #'string=))))) (if (and 
> name (package-installed-p name) (eq (progn (or (progn (and ... t)) (signal 
> 'wrong-type-argument (list ... pkg-desc))) (aref pkg-desc 5)) 'vc)) nil (cond 
> ((null spec) (package-vc-install name)) ((stringp spec) (package-vc-install 
> name nil spec)) ((listp spec) (package-vc--archives-initialize) 
> (package-vc--unpack pkg-desc spec)))))
>   (let ((name x1) (spec x2)) (let ((pkg-desc (car (cdr (assoc name 
> package-alist #'string=))))) (if (and name (package-installed-p name) (eq 
> (progn (or (progn ...) (signal ... ...)) (aref pkg-desc 5)) 'vc)) nil (cond 
> ((null spec) (package-vc-install name)) ((stringp spec) (package-vc-install 
> name nil spec)) ((listp spec) (package-vc--archives-initialize) 
> (package-vc--unpack pkg-desc spec))))))
>   (let* ((x2 (cdr-safe x0))) (let ((name x1) (spec x2)) (let ((pkg-desc (car 
> (cdr (assoc name package-alist ...))))) (if (and name (package-installed-p 
> name) (eq (progn (or ... ...) (aref pkg-desc 5)) 'vc)) nil (cond ((null spec) 
> (package-vc-install name)) ((stringp spec) (package-vc-install name nil 
> spec)) ((listp spec) (package-vc--archives-initialize) (package-vc--unpack 
> pkg-desc spec)))))))
>   (progn (ignore (symbolp x1)) (let* ((x2 (cdr-safe x0))) (let ((name x1) 
> (spec x2)) (let ((pkg-desc (car (cdr ...)))) (if (and name 
> (package-installed-p name) (eq (progn ... ...) 'vc)) nil (cond ((null spec) 
> (package-vc-install name)) ((stringp spec) (package-vc-install name nil 
> spec)) ((listp spec) (package-vc--archives-initialize) (package-vc--unpack 
> pkg-desc spec))))))))
>   (let* ((x1 (car-safe x0))) (progn (ignore (symbolp x1)) (let* ((x2 
> (cdr-safe x0))) (let ((name x1) (spec x2)) (let ((pkg-desc (car ...))) (if 
> (and name (package-installed-p name) (eq ... ...)) nil (cond (... ...) (... 
> ...) (... ... ...))))))))
>   (progn (ignore (consp x0)) (let* ((x1 (car-safe x0))) (progn (ignore 
> (symbolp x1)) (let* ((x2 (cdr-safe x0))) (let ((name x1) (spec x2)) (let 
> ((pkg-desc ...)) (if (and name ... ...) nil (cond ... ... ...))))))))
>   (let ((x0 (car tail))) (progn (ignore (consp x0)) (let* ((x1 (car-safe 
> x0))) (progn (ignore (symbolp x1)) (let* ((x2 (cdr-safe x0))) (let ((name x1) 
> (spec x2)) (let (...) (if ... nil ...))))))) (setq tail (cdr tail)))
>   (while tail (let ((x0 (car tail))) (progn (ignore (consp x0)) (let* ((x1 
> (car-safe x0))) (progn (ignore (symbolp x1)) (let* ((x2 ...)) (let (... ...) 
> (let ... ...)))))) (setq tail (cdr tail))))
>   (let ((tail package-vc-selected-packages)) (while tail (let ((x0 (car 
> tail))) (progn (ignore (consp x0)) (let* ((x1 (car-safe x0))) (progn (ignore 
> (symbolp x1)) (let* (...) (let ... ...))))) (setq tail (cdr tail)))))
>   package-vc-ensure-packages()
>   (closure (t) (sym val) (custom-set-default sym val) 
> (package-vc-ensure-packages))(package-vc-selected-packages 
> ((treemacs-projectile :lisp-dir "src/extra" :main-file 
> "treemacs-projectile.el" :url 
> "https://github.com/Alexander-Miller/treemacs";)))
>   custom-initialize-reset(package-vc-selected-packages (funcall #'(closure 
> (t) nil "" 'nil)))
>   custom-declare-variable(package-vc-selected-packages (funcall #'(closure 
> (t) nil "" 'nil)) "List of packages that must be installed.\nEach memb..." 
> :type (alist :tag "List of packages you want to be installed" :key-type 
> (symbol :tag "Package") :value-type (choice (const :tag "Any revision" nil) 
> (string :tag "Specific revision") (plist :options ((:url string) (:branch 
> string) (:lisp-dir string) (:main-file string) (:vc-backend symbol))))) :set 
> (closure (t) (sym val) (custom-set-default sym val) 
> (package-vc-ensure-packages)) :version "29.1")
>   eval-buffer(#<buffer  *load*-179493> nil 
> "/home/kimr/opt/emacs29/20221112/share/emacs/29.0.5..." nil t)  ; Reading at 
> buffer position 6633
>   
> load-with-code-conversion("/home/kimr/opt/emacs29/20221112/share/emacs/29.0.5..."
>  "/home/kimr/opt/emacs29/20221112/share/emacs/29.0.5..." nil nil)
>   load("package-vc.el")
>   load-library("package-vc.el")
>   eval-buffer(#<buffer  *load*> nil "/home/kimr/.emacs-debug-1" nil t)  ; 
> Reading at buffer position 262
>   load-with-code-conversion("/home/kimr/.emacs-debug-1" 
> "/home/kimr/.emacs-debug-1" nil t)
>   load("/home/kimr/.emacs-debug-1" nil t)
>   command-line-1(("-l" "/home/kimr/.emacs-debug-1"))
>   command-line()
>   normal-top-level()
> #+end_example

Can you try the scratch/package-vc-fixes branch.  I haven't merged it
yet, because I might need to revise some commits and I don't want to be
pushing minor fixes to master all the time.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]