[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: package.el dependencies
From: |
Thierry Volpiatto |
Subject: |
Re: package.el dependencies |
Date: |
Mon, 02 Feb 2015 16:33:28 +0100 |
Thierry Volpiatto <address@hidden> writes:
>> And one more thing. Why did you use `(package--get-deps p 'direct)' in
>> this snippet? Passing the `direct' argument will cause it to only
>> return 2nd level dependencies at most (direct dependencies of the
>> direct dependencies).
Consider following example using this definition of package--get-deps:
--8<---------------cut here---------------start------------->8---
(defun package--get-deps (pkg &optional only)
(let* ((pkg-desc (cadr (assq pkg package-alist)))
(direct-deps (cl-loop for p in (package-desc-reqs pkg-desc)
for name = (car p)
when (assq name package-alist)
collect name))
(indirect-deps (unless (eq only 'direct)
(cl-loop for p in direct-deps
append (package--get-deps p 'direct)))))
(cl-case only
(direct direct-deps)
(separate (list direct-deps indirect-deps))
(indirect indirect-deps)
(t (append direct-deps indirect-deps)))))
--8<---------------cut here---------------end--------------->8---
Here the dependencies of the package "jedi":
(package--get-deps 'jedi 'direct)
=>(epc auto-complete python-environment)
(package--get-deps 'epc 'direct)
=>(concurrent ctable)
(package--get-deps 'concurrent 'direct)
=>(deferred)
(package--get-deps 'ctable 'direct)
=>nil
(package--get-deps 'auto-complete 'direct)
=>(popup)
(package--get-deps 'python-environment 'direct)
=>(deferred)
(package--get-deps 'jedi)
=>(epc auto-complete python-environment concurrent ctable popup deferred)
As you can see all the dependencies are here and there is no duplicates.
--
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/01
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/01
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/01
- Re: package.el dependencies, Artur Malabarba, 2015/02/02
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/02
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/02
- Re: package.el dependencies, Artur Malabarba, 2015/02/02
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/02
- Re: package.el dependencies,
Thierry Volpiatto <=
- Re: package.el dependencies, Artur Malabarba, 2015/02/02
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/02
- Re: package.el dependencies, Thierry Volpiatto, 2015/02/02
Re: package.el dependencies, Thierry Volpiatto, 2015/02/02