Source review support tool
A tool to create a module dependency graph for the D language. The feature is that you can record snapshots in two versions and compare them to visualize the differences.
basic
no core, no std
exclude rx.subject
- dub
- Graphviz (for visualize)
"configurations": [
{
"name": "default"
},
{
"name": "diff",
"postGenerateCommands": [
"dub build -c makedeps",
"dub fetch ddeps",
"dub run ddeps -- --focus=rx -o deps.dot",
"dot -Tsvg -odeps.svg deps.dot"
]
},
{
"name": "diff-update",
"postGenerateCommands": [
"dub fetch ddeps",
"dub run ddeps -- --update"
]
},
{
"name": "makedeps",
"dflags": ["-deps=deps.txt"]
}
] "configurations": [
{
"name": "default"
},
{
"name": "diff",
"postGenerateCommands": [
"dub build -c makedeps",
"dub fetch ddeps",
"dub run ddeps -- -o deps.dot",
"dot -Tsvg -odeps.svg deps.dot"
]
},
{
"name": "diff-update",
"postGenerateCommands": [
"dub fetch ddeps",
"dub run ddeps -- --update"
]
},
{
"name": "makedeps",
"dflags": ["-deps=deps.txt"]
}
]create lock file
dub build -c makedeps
dub build -c diff-update- Modify source
- Update diff
dub build -c diff
- Do review with the dependency graph diff
- Open the
deps.svgin browser
- Open the
- checkout a target version
git reset --hard XXXorgit checkout XXXXX
- reset to source version
git reset --hard HEAD~10(e.g. 10 versions ago)
- create
deps-lock.txtdub build -c makedepsdub build -c diff-update- if
dub.json/dub.sdlhas not configure then add these.
- reset to target version
git reset --hard ORIG_HEAD
- make diff
dub build -c diff
- open
deps.svg
| name | Usage | description | default |
|---|---|---|---|
| input | -i XXX or --input=XXX |
deps file name | deps.txt |
| output | -o XXX or --output=XXX |
destination file name | write to stdout |
| update | -u or --update |
update lock file | false |
| lock | -l XXX or --lock=XXX |
lock file name | deps-lock.txt |
| focus | -f XXX or --focus=XXX |
filtering target by name | app |
| depth | -d N or --depth=N |
search depth | 1 |
| exclude | -e XXX [-e YYY] or --exclude=XXX [--exclude=YYY] |
exclude module names | object |
| help | --help |
show help |


