emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] master 568ad03 01/39: Parse also `package-alist` when getting dep


From: Thierry Volpiatto
Subject: [elpa] master 568ad03 01/39: Parse also `package-alist` when getting dependencies (#58).
Date: Wed, 18 May 2016 18:02:50 +0000 (UTC)

branch: master
commit 568ad03cdc16f1826059e115846c8223fb60ad01
Author: Thierry Volpiatto <address@hidden>
Commit: Thierry Volpiatto <address@hidden>

    Parse also `package-alist` when getting dependencies (#58).
    
    * async-bytecomp.el (async-bytecomp--get-package-deps):
    Try `package-archive-contents` and also `package-alist`
    in case pkg no more present in `package-archive-contents`.
---
 async-bytecomp.el |    9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/async-bytecomp.el b/async-bytecomp.el
index 53d288d..9a252da 100644
--- a/async-bytecomp.el
+++ b/async-bytecomp.el
@@ -111,10 +111,15 @@ All *.elc files are systematically deleted before 
proceeding."
 (defun async-bytecomp--get-package-deps (pkg &optional only)
   ;; Same as `package--get-deps' but parse instead `package-archive-contents'
   ;; because PKG is not already installed and not present in `package-alist'.
-  (let* ((pkg-desc (cadr (assq pkg package-archive-contents)))
+  ;; However fallback to `package-alist' in case PKG no more present
+  ;; in `package-archive-contents' due to modification to `package-archives'.
+  ;; See issue #58.
+  (let* ((pkg-desc (cadr (or (assq pkg package-archive-contents)
+                             (assq pkg package-alist))))
          (direct-deps (cl-loop for p in (package-desc-reqs pkg-desc)
                                for name = (car p)
-                               when (assq name package-archive-contents)
+                               when (or (assq name package-archive-contents)
+                                        (assq name package-alist))
                                collect name))
          (indirect-deps (unless (eq only 'direct)
                           (delete-dups



reply via email to

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