Hello,
I wanted to share a recent work I’ve done to better visualise the dependencies between classes, with the call graph [1].
For the extension I am currently developping (MediaWikiFarm [2]), I wanted to obtain the call graph. First I did it by hand, but then I found a program doing the job, phpCallGraph [3], but unfortunately it was unmaintained since 2009 (PHP 5.2 era). I did maintenance and it partly works [4], I still have issues with the autoloader.
Here are some preliminary results I got: (these are packages without much external dependencies due to autoloader issues) * Extension:MediaWikiFarm
https://www.mediawiki.org/wiki/File:Call_graph_of_extension_MediaWikiFarm.sv... * Extension:Math https://www.mediawiki.org/wiki/File:Call_graph_of_extension_Math.svg * Extension:CentralAuth
https://www.mediawiki.org/wiki/File:Call_graph_of_extension_CentralAuth.svg * directory 'includes' of MediaWiki without subdirectories (too big)
https://www.mediawiki.org/wiki/File:Call_graph_of_MediaWiki%E2%80%99s_direct...
I plan to improve this software (see README on GitHub), please say if you if you are interested by this type of graph and/or interested in contributing.
Thanks, Seb35
[1] https://en.wikipedia.org/wiki/Call_graph (the overapproximation of the static call graph to be precise) [2] https://www.mediawiki.org/wiki/Extension:MediaWikiFarm [3] http://phpcallgraph.sourceforge.net [4] https://github.com/Seb35/phpcallgraph