Builtin Library
README.md
zeromind.removeUnusedDeps
List or remove the dependency copies under /zero/source/deps/ that nothing in this world uses.
An install places the dependencies of what it installs under /zero/source/deps/<owner world>/. A dependency is used while an install record lists or pins it, while a source of the world (its own content or an install's) depends on it by its reference table, or while a used dependency depends on it. One nothing uses is a leftover: from an install that was removed, a dependency an earlier engine landed as files, or a file written there by hand. The engine posts a notice naming them whenever the world comes to hold any.
{ dryRun = true } lists them with how many files each holds, which install placed it, and which of its files this world changed (modified). A call without dryRun removes them: a dependency an install placed is deleted from that install's record, and one the world holds as files of its own is removed as files. An install's record (<root>.pull, which zeromind.installs lists and ls does not) stays in the world while it holds anything a source uses, and leaves once it holds nothing. only holds the call to the dependencies at or under the paths it names.
Nothing is removed without this call, and nothing is committed: removed files leave as deletions in the next commit. zeromind.uninstall removes an install together with the dependencies only it used.