Re-write docstrings and tweak Readme file
[somegraph.git] / Readme.md
blob11bb453c63df0da450a9f1b249fba6feb12b4d1a
1 # TL;DR
3 This is a possible `D3.js` chart for the recursive dependencies of the
4 `aptitude` package on Debian stable circa November 2019. See the chart on
5 `Observable`:
6 <https://observablehq.com/@coding-exercise/hierarchical-edge-bundling>
8 # apt-rdepends
10 To calculate recursive dependencies, I'm using something called
11 `apt-rdepends`.
13 `apt-rdepends` man page says:
15 > By default, apt-rdepends shows a listing of each dependency a package
16 > has. It will also look at each of these fulfilling packages, and
17 > recursively lists their dependencies.
19 [apt-rdepends\_aptitude](./apt-rdepends_aptitude) was generated as
20 follows:
22 ``` example
23 apt-rdepends aptitude > apt-rdepends_aptitude
24 ```
26 # Data massage
28 [AptRdepends2JSON.py](./AptRdepends2JSON.py) is a one-off script
29 that goes from `apt-rdepends` output to JSON.
31 Script uses Python 3.8.0
33 See docstrings…
35 # Copy&paste
37 For the most part, the chart is copy&paste from a `d3.hierarchy`
38 example… <https://observablehq.com/@d3/hierarchical-edge-bundling>
40 These are our tweaks…
42   - Our data is simpler and thus we need neither the `id` function call in
43     `bilink` nor the `hierarchy` function.
45   - For browser support, we use the `flatMap` alternative proposed here…
46     <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/flatMap#Alternative>