deptree

2024-10-12

ASDF systems dependency listing and archiving tool for Common Lisp

Upstream URL

github.com/varjagg/deptree

Author

Eugene Zaikonnikov <eugene@funcall.org>

License

MIT
README
Deptree: ASDF system dependency listing and archiving

1Enumerating 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.

2Listing dependencies' pathnames

(systems-paths dependencies)

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

3Archiving 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.

4Listing 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.

5Collating 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.

Dependencies (1)

  • cl-tar

Dependents (0)

    • GitHub
    • Quicklisp