eclipse-sisu / sisu-project

Sisu Inject
https://www.eclipse.org/sisu
Eclipse Public License 2.0
17 stars 15 forks source link

Visualize graph of component dependencies (Bugzilla Bug 386433) #5

Open mcculls opened 2 years ago

mcculls commented 2 years ago

This issue was created automatically with bugzilla2github

Bugzilla Bug 386433

Date: 2012-08-01 18:38:29 -0400 From: Stuart McCulloch <mcculls@gmail.com> To: Project Inbox <sisu-inbox@eclipse.org>

See also: https://issues.sonatype.org/browse/SISU-6 Last updated: 2013-07-16 21:17:03 -0400

Comment 2144110

Date: 2012-08-01 18:38:29 -0400 From: Stuart McCulloch <mcculls@gmail.com>

Migrated from https://issues.sonatype.org/browse/SISU-6

Guice provides a grapher (http://code.google.com/p/google-guice/wiki/Grapher) to visualize binding dependencies. However it doesn't capture dependencies introduced via custom injection, such as with the TypeListener approach.

By extending the grapher to capture both types of bindings we can easily visualize Nexus component dependencies; which would be useful for developers to see how it all fits together, and help avoid tightly-coupled components.

The output from the Guice grapher could be fed directly into Eclipse Zest (http://www.eclipse.org/gef/zest/) by using the dot4zest Eclipse feature (http://wiki.eclipse.org/Graphviz_DOT_as_a_DSL_for_Zest).

This low-priority sub-task will look into feeding custom dependencies (like from TypeListener) into the grapher.