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

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

[elpa] master 0b60259 163/187: Check if package-archive-contents is popu


From: Michael Albinus
Subject: [elpa] master 0b60259 163/187: Check if package-archive-contents is populated (#51).
Date: Wed, 30 Dec 2015 11:50:23 +0000

branch: master
commit 0b60259ca8e7553c7029bb3471a1d29c3893200e
Author: Thierry Volpiatto <address@hidden>
Commit: Thierry Volpiatto <address@hidden>

    Check if package-archive-contents is populated (#51).
    
    * async-bytecomp.el (async-bytecomp--get-package-deps): Add comment.
    (async-bytecomp-get-allowed-pkgs): Don't enter loop when
    package-archive-contents is nil.
---
 async-bytecomp.el |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/async-bytecomp.el b/async-bytecomp.el
index e680df0..0daa079 100644
--- a/async-bytecomp.el
+++ b/async-bytecomp.el
@@ -109,6 +109,8 @@ All *.elc files are systematically deleted before 
proceeding."
 (declare-function package-desc-reqs "package.el" (cl-x))
 
 (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)))
          (direct-deps (cl-loop for p in (package-desc-reqs pkg-desc)
                                for name = (car p)
@@ -127,11 +129,13 @@ All *.elc files are systematically deleted before 
proceeding."
 (defun async-bytecomp-get-allowed-pkgs ()
   (when (and async-bytecomp-allowed-packages
              (listp async-bytecomp-allowed-packages))
-    (cl-loop for p in async-bytecomp-allowed-packages
-             append (async-bytecomp--get-package-deps p) into reqs
-             finally return
-             (delete-dups
-              (append async-bytecomp-allowed-packages reqs)))))
+    (if package-archive-contents
+        (cl-loop for p in async-bytecomp-allowed-packages
+                 append (async-bytecomp--get-package-deps p) into reqs
+                 finally return
+                 (delete-dups
+                  (append async-bytecomp-allowed-packages reqs)))
+        async-bytecomp-allowed-packages)))
 
 (defadvice package--compile (around byte-compile-async)
   (let ((cur-package (package-desc-name pkg-desc)))



reply via email to

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