Skip to content

System dependency listing and archiving tool for Common Lisp

License

Notifications You must be signed in to change notification settings

varjagg/deptree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deptree: ASDF system dependency listing and archiving

Enumerating system’s dependencies

(deptree system-name)

Example: (deptree "hunchentoot")

The resulting list of system names is deduplicated and pruned of dependencies within same system directories.

Listing dependencies’ pathnames

(systems-paths dependencies)

Example: (systems-paths (deptree "hunchentoot"))

Archiving system’s dependencies

(systems-archive dependencies tarball-pathname &key (sanitize-p t) (path-prefix “”))

Example: (systems-archive (deptree "hunchentoot") #p"/tmp/hunchentoot-deps.tgz")

Before archiving, make sure the dependencies are in fact present on your host. If you are using Quicklisp it’s as easy as quickload-ing the system.

All systems directories are stored flat (with prepeneded :PATH-PREFIX) regardless their original absolute pathnames. Since feature-conditional dependencies are honored, please ensure you’re archiving from the relevant platform.

Unless :SANITIZE-P is NIL, the function will clean up git and Mercurial DVCS data from the archives.

Listing systems’ licenses

(systems-licenses systems)

Example: (systems-licenses (deptree "hunchentoot"))

Produces a list of pairs (system-name . license-string) for the supplied list of licenses.

Collating systems’ license set

(license-set systems)

Example: (license-set (deptree "hunchentoot"))

Produces a mostly deduplicated list of licenses. Variations in character case or hyphens are collated.

About

System dependency listing and archiving tool for Common Lisp

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published