{"id":18081919,"url":"https://github.com/vindarel/print-licenses","last_synced_at":"2026-02-04T15:02:10.963Z","repository":{"id":28241289,"uuid":"117395650","full_name":"vindarel/print-licenses","owner":"vindarel","description":"Print licenses used by the given project and its dependencies.","archived":false,"fork":false,"pushed_at":"2023-02-21T10:24:02.000Z","size":10,"stargazers_count":23,"open_issues_count":4,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-12T04:17:07.267Z","etag":null,"topics":["common-lisp"],"latest_commit_sha":null,"homepage":null,"language":"Common Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vindarel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-14T02:32:39.000Z","updated_at":"2025-02-06T05:35:00.000Z","dependencies_parsed_at":"2024-10-31T13:17:26.389Z","dependency_job_id":"93e014a4-46d8-4d34-a41d-1979c7cf8d13","html_url":"https://github.com/vindarel/print-licenses","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vindarel%2Fprint-licenses","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vindarel%2Fprint-licenses/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vindarel%2Fprint-licenses/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vindarel%2Fprint-licenses/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vindarel","download_url":"https://codeload.github.com/vindarel/print-licenses/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247411241,"owners_count":20934650,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["common-lisp"],"created_at":"2024-10-31T13:17:14.615Z","updated_at":"2026-02-04T15:02:10.900Z","avatar_url":"https://github.com/vindarel.png","language":"Common Lisp","funding_links":[],"categories":["Offline ##"],"sub_categories":[],"readme":"# Print licenses used by the given project and its dependencies\n\nInstall with Quicklisp:\n\n    (ql:quickload \"print-licenses\")\n\nNote that in order to do this the project must be `quickload`ed, so you might\nwant to do this in a separate Lisp image if you don't want to clutter your\ncurrent one.\n\n\nIf the project does not specify its license in its ASDF system definition it\nwill be listed as 'Unspecified'.  You should manually figure out what license\nit uses (and maybe send a pull request).\n\nExample:\n\n~~~lisp\n  (print-licenses 'fast-io)\n  =\u003e\n  alexandria           | Public Domain / 0-clause MIT\n  babel                | MIT\n  cffi                 | MIT\n  cffi-grovel          | MIT\n  cffi-toolchain       | MIT\n  fast-io              | NewBSD\n  static-vectors       | MIT\n  trivial-features     | MIT\n  trivial-gray-streams | MIT\n  uiop                 | Unspecified\n~~~\n\nOr you might want to group systems by their license:\n\n~~~lisp\n  (print-licenses :fast-io\n                  :group-by-license t)\n  =\u003e\n  MIT\n    babel, cffi, cffi-grovel, cffi-toolchain, fast-io, static-vectors, trivial-features, trivial-gray-streams\n\n  Public Domain / 0-clause MIT\n    alexandria\n\n  Unspecified\n    asdf, uiop\n~~~\n\n## See also\n\nRelated, to get a graph of dependencies:\n\n* [asdf-dependency-graph](https://github.com/digikar99/asdf-dependency-graph/) - A minimal wrapper around `dot` to generate an image of the dependencies graph.\n\nand this snippet:\n\n```lisp\n;; thanks https://gist.github.com/svetlyak40wt/a8ed639bf8fe07caed1531611bcf932d\n;; added: max-level\n(defun print-dependency-graph (system-name \u0026key (level 0) (max-level most-positive-fixnum))\n  (when (= level max-level)\n    (return-from print-dependency-graph))\n  (loop repeat level\n        do (format t \"  \"))\n  (format t \"~A~%\" system-name)\n  (typecase system-name\n    ((or string symbol)\n     (let ((system (asdf/system:find-system system-name)))\n       (loop for dep in (asdf/system:system-depends-on system)\n              do (print-dependency-graph dep :level (1+ level) :max-level max-level))))))\n```\n\n```txt\n(print-dependency-graph :str :max-level 3)\n;; =\u003e\nSTR\n  cl-ppcre\n  cl-ppcre-unicode\n    cl-ppcre\n    cl-unicode\n  cl-change-case\n    cl-ppcre\n    cl-ppcre-unicode\n```\n\n## Credit\n\nOriginal code entirely taken from\n[**@sjl**'s utilities](https://github.com/sjl/cl-losh/blob/master/losh.lisp),\nthe original snippet to build the license tree coming from a\n**@dk_jackdaniel**'s [snippet](http://paste.lisp.org/display/327154).\n\nMIT.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvindarel%2Fprint-licenses","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvindarel%2Fprint-licenses","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvindarel%2Fprint-licenses/lists"}