![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
Functions | |
| build () | |
| closures (files, graph) | |
| bar_chart (rows, title, unit, colour=PALETTE[0], width=900, row_h=22) | |
| matrix (viol, width=900) | |
| main () | |
Variables | |
| list | PALETTE = ['#4c8bf5', '#e8710a', '#12a37a', '#c5221f', '#a142f4', '#f9ab00'] |
Aggregate include-hygiene report: a single self-contained HTML page with SVG charts. This deliberately does NOT draw per-file include graphs -- doc/Doxyfile already has HAVE_DOT with INCLUDE_GRAPH, INCLUDED_BY_GRAPH and DIRECTORY_GRAPH, and produces interactive SVG that is better for drilling into one file than anything here. What Doxygen does not give you, and this does: * RANKING -- which headers cost the most, sorted, with numbers you can diff * BLAST RADIUS -- how many TUs recompile when header X is touched, quantified * LAYERING -- inversions counted per directory pair, not just drawn * TREND -- the same metrics at two git revisions, side by side * UNUSED -- candidate removable includes (see tools/include_unused.py) Note on the Doxygen graphs: DOT_GRAPH_MAX_NODES is 100 in doc/Doxyfile, so exactly the god-headers worth looking at render truncated. Raise it (or set MAX_DOT_GRAPH_DEPTH) before drilling into one of the headers this report ranks at the top. No third-party dependencies: charts are hand-emitted SVG so the tool runs anywhere the rest of tools/ runs, including CI. Usage: python3 tools/include_report.py # writes include-report.html python3 tools/include_report.py -o /tmp/r.html python3 tools/include_report.py --unused unused.json # fold in include_unused.py --json
| include_report.bar_chart | ( | rows, | |
| title, | |||
| unit, | |||
colour = PALETTE[0], |
|||
width = 900, |
|||
row_h = 22 |
|||
| ) |
rows: list of (label, value). Emits a horizontal bar chart as inline SVG.
Definition at line 68 of file include_report.py.
References max.
Referenced by main().
| include_report.build | ( | ) |
Definition at line 38 of file include_report.py.
Referenced by main().
| include_report.closures | ( | files, | |
| graph | |||
| ) |
Definition at line 50 of file include_report.py.
Referenced by main().
| include_report.main | ( | void | ) |
Definition at line 109 of file include_report.py.
References bar_chart(), build(), closures(), and main().
Referenced by main().
| include_report.matrix | ( | viol, | |
width = 900 |
|||
| ) |
Directory-pair inversion counts as a heat table.
Definition at line 92 of file include_report.py.
| list include_report.PALETTE = ['#4c8bf5', '#e8710a', '#12a37a', '#c5221f', '#a142f4', '#f9ab00'] |
Definition at line 35 of file include_report.py.