diff --git a/bob/devtools/graph.py b/bob/devtools/graph.py index cb8d4819900356385053e0eac3ad274b7621a652..c7fe00912ed1ce94c78e7663d316c1248e11be47 100644 --- a/bob/devtools/graph.py +++ b/bob/devtools/graph.py @@ -1,6 +1,8 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +"""Utilities for calculating package dependencies and drawing graphs""" + import os import re import glob @@ -179,8 +181,11 @@ def compute_adjencence_matrix( elif p.startswith("batl"): return "/".join(("batl", p)) else: - logger.warning("Do not know how to recurse to package %s " - "(to which group does it belong?) - skipping...", p) + logger.warning( + "Do not know how to recurse to package %s " + "(to which group does it belong?) - skipping...", + p, + ) return None all_recurse = set([_add_default_group(k) for k in all_recurse]) @@ -189,8 +194,9 @@ def compute_adjencence_matrix( # do not recurse for packages we already know all_recurse -= set(current.keys()) - logger.info("Recursing over the following packages: %s", - ", ".join(all_recurse)) + logger.info( + "Recursing over the following packages: %s", ", ".join(all_recurse) + ) for dep in all_recurse: dep_adjmtx = compute_adjencence_matrix( diff --git a/bob/devtools/scripts/graph.py b/bob/devtools/scripts/graph.py index 922ecaa83b8f87407f09bcdf96af0dabcc7a758a..65b5e198b9afe56a2707abc97ec2242cfdfe7e5b 100644 --- a/bob/devtools/scripts/graph.py +++ b/bob/devtools/scripts/graph.py @@ -28,12 +28,18 @@ logger = get_logger(__name__) epilog=""" Examples: - 1. Draws the graph of a package + 1. Calculates and draws the graph of a package: - $ bdt gitlab graph -vv bob/bob.learn.linear + $ bdt gitlab graph bob/bob.blitz - 2. + 2. Calculates and draws only the runtime dependencies of a package + $ bdt gitlab graph bob/bob.blitz --deptypes=run + + 3. Calculates run and test dependencies of package, but only draws a subset + defined by a regular expression + + $ bdt gitlab graph beat/beat.editor --deptypes=run --deptypes=test --whitelist='^beat\.(editor|cmdline).*$' """ ) diff --git a/conda/meta.yaml b/conda/meta.yaml index 838772de640254d1c2241400fb250a8ebc3aaad2..d2180739fc08655244d21259c2bf0bf530806595 100644 --- a/conda/meta.yaml +++ b/conda/meta.yaml @@ -106,6 +106,7 @@ test: - bdt gitlab process-pipelines --help - bdt gitlab get-pipelines --help - bdt gitlab graph --help + - bdt gitlab graph -vv bob/bob.blitz -d run - sphinx-build -aEW ${PREFIX}/share/doc/{{ name }}/doc sphinx - if [ -n "${CI_PROJECT_DIR}" ]; then mv sphinx "${CI_PROJECT_DIR}/"; fi diff --git a/doc/api.rst b/doc/api.rst index 4b9a776a4b77535cb563ff196b1b6bd1c0aa8d2b..3132a59ac2f33da4ac8032eea12f4d23eb98aef4 100644 --- a/doc/api.rst +++ b/doc/api.rst @@ -14,6 +14,8 @@ bob.devtools.bootstrap bob.devtools.build bob.devtools.mirror + bob.devtools.deploy + bob.devtools.graph bob.devtools.webdav3.client @@ -34,8 +36,12 @@ Detailed Information .. automodule:: bob.devtools.build +.. automodule:: bob.devtools.mirror + .. automodule:: bob.devtools.deploy +.. automodule:: bob.devtools.graph + WebDAV Python Client --------------------