The print-licenses Reference Manual

This is the print-licenses Reference Manual, version 0.1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:36:52 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


Print the licenses used by the given project and its dependencies.

Author

vindarel

License

MIT

Version

0.1.0

Dependencies
  • alexandria (system).
  • iterate (system).
Source

print-licenses.asd.

Child Component

print-licenses.lisp (file).


3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


Source

print-licenses.asd.

Parent Component

print-licenses (system).

ASDF Systems

print-licenses.

Packages

print-licenses-asd.


Source

print-licenses.asd.

Parent Component

print-licenses (system).

Packages

print-licenses.

Public Interface

print-licenses (function).

Internals

4 Packages

Packages are listed by definition order.


Source

print-licenses.lisp.

Use List
  • alexandria.
  • common-lisp.
  • iterate.
Public Interface

print-licenses (function).

Internals

Source

print-licenses.asd.

Use List
  • asdf/interface.
  • common-lisp.

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Ordinary functions

Function: print-licenses (quicklisp-project-designator &key group-by-license)

Print the licenses used by the given project and its dependencies.
Note that in order to do this the project must be ‘quickload‘ed, so you might want to do this in a separate Lisp image if you don’t want to clutter your current one.
If the project does not specify its license in its ASDF system definition it will be listed as ’Unspecified’. You should manually figure out what license it uses (and maybe send a pull request).
Example:
(print-licenses ’fast-io)
=>
alexandria | Public Domain / 0-clause MIT
babel | MIT
cffi | MIT
cffi-grovel | MIT
cffi-toolchain | MIT
fast-io | NewBSD
static-vectors | MIT
trivial-features | MIT
trivial-gray-streams | MIT
uiop | Unspecified

Package

print-licenses.

Source

print-licenses.lisp.


5.2 Internals


5.2.1 Macros

Macro: shut-up (&body body)

Run ‘body‘ with stdout and stderr redirected to the void.

Package

print-licenses.

Source

print-licenses.lisp.


5.2.2 Ordinary functions

Function: aesthetic-string (thing)

Return the string used to represent ‘thing‘ when printing aesthetically.

Package

print-licenses.

Source

print-licenses.lisp.

Function: dependency-tree (system)

The difference between this function and ql-dist:dependency-tree is that it uses caching and also it returns not a full tree but each system is occur in the resulting tree only once.

This makes it 1000 times faster and makes difference on systems having large amount of dependencies like Reblocks.

Package

print-licenses.

Source

print-licenses.lisp.

Function: license-list (quicklisp-project-designator)
Package

print-licenses.

Source

print-licenses.lisp.

Function: map-tree (function tree)

Applies ‘function‘ to each of the leave of ‘tree‘. Returns no values, because function results are discarded.

Package

print-licenses.

Source

print-licenses.lisp.

Function: print-table (rows)

Print ‘rows‘ as a nicely-formatted table.
Each row should have the same number of colums.
Columns will be justified properly to fit the longest item in each one. Example:
(print-table ’((1 :red something)
(2 :green more)))
=>
1 | RED | SOMETHING
2 | GREEN | MORE

Package

print-licenses.

Source

print-licenses.lisp.

Function: weave (&rest lists)

Return a list whose elements alternate between each of the lists ‘lists‘. Weaving stops when any of the lists has been exhausted.

Package

print-licenses.

Source

print-licenses.lisp.


Appendix A Indexes


A.1 Concepts


A.3 Variables