void-packages/common/scripts
classabbyamp 2438f3a3a4 common/scripts/lint-conflicts: add bootstrap repo 2023-02-03 20:32:46 -06:00
..
README.xbps-cycles.md
lint-commits lint-commits: forbid localhost email, too 2023-02-02 19:15:34 +07:00
lint-conflicts common/scripts/lint-conflicts: add bootstrap repo 2023-02-03 20:32:46 -06:00
lint-version-change common/: remove PATH adds from CI scripts 2022-10-25 14:23:46 -04:00
lint2annotations.awk common/travis/xlint.sh: print Github annotations 2022-05-05 21:34:11 +02:00
xbps-cycles.py xbps-cycles: fix a typo 2022-12-28 08:56:13 +07:00

README.xbps-cycles.md

Cycle detector for void-packages

This script enumerates dependencies for packages in a void-packages repository and identifies build-time dependency cycles.

For command syntax, run xbps-cycles.py -h. Often, it may be sufficient to run xbps-cycles.py with no arguments. By default, the script will look for a repository at $XBPS_DISTDIR; if that variable is not defined, the current directory is used instead. To override this behavior, use the -d option to provide the path to your desired void-packages clone.

The standard behavior will be to spawn multiple processes, one per CPU, to enumerate package dependencies. This is by far the most time-consuming part of the execution. To override the degree of parallelism, use the -j option.

Dependencies can be cached on disk, one file per package, in directory passed with -c option. On next execution with same option, dependencies are read from file rather than computed.

Failures should be harmless but, at this early stage, unlikely to be pretty or even helpful.