HEMTT icon indicating copy to clipboard operation
HEMTT copied to clipboard

Project dependency D(A?)G-maker

Open bovine3dom opened this issue 5 years ago • 2 comments

I'd like something that gives me the dependency graph of addons within a project. I think this probably is within the remit of HEMTT as a general ArmA-addon multi-tool.

It should be pretty straight-forward:

  • check the requiredAddons[] of each config.cpp
  • cross-reference with all the CfgPatches names (I guess we'd need to use armake for this?)
  • work out what is external
  • make the graph - probably using https://docs.rs/petgraph/0.4.13/petgraph/ and just exporting as a dot for now. I don't know how common my usage is so I'm not keen to build querying it into HEMTT.

My use-case is that I want to use the DAG to chop off bits of the graph that depend on external addons that I haven't white-listed and, on release, move these trees to separate mod-folder(s), merging on prefix.

Am I OK to go off and build this?

bovine3dom avatar Mar 08 '19 19:03 bovine3dom

I think that'll be fine to add. Just add it as a utility and build it off the refactor branch, not master

BrettMayson avatar Mar 08 '19 23:03 BrettMayson

Cool!

For my own reference, it looks like jonpas made something somewhat related for ACE - https://github.com/acemod/ACE3/blob/master/tools/extract_dependencies.py

bovine3dom avatar Mar 09 '19 09:03 bovine3dom