celix icon indicating copy to clipboard operation
celix copied to clipboard

Added an extra output to the DM shell command which generates plantum…

Open ErjanAltena opened this issue 4 years ago • 3 comments

Added an "u" option to the DM shell command which outputs plantuml. Copy paste this to a file, generate a graph wihl plantuml (see platuml.com: java -jar plantump.jar ) this will quickly show:

  • All interfaces defined by the components
  • Show which interfaces are implemented by which components
  • Show on which interfaces components depend on, lines for available dependencies, dashed line for not-available dependencies (--> for non-required, non available, *--> for required, not available)
  • In a larger system, with a lot of hierarchy, it will quickly show what the root-cause is of components not getting available

Dependencies are shown purely on component-name basis. (Missing) dependencies caused by filters are not shown.

ErjanAltena avatar Nov 25 '21 20:11 ErjanAltena

Codecov Report

Merging #381 (372e30f) into master (71fac23) will decrease coverage by 0.11%. The diff coverage is 0.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #381      +/-   ##
==========================================
- Coverage   72.05%   71.93%   -0.12%     
==========================================
  Files         219      219              
  Lines       35620    35674      +54     
==========================================
- Hits        25665    25663       -2     
- Misses       9955    10011      +56     
Impacted Files Coverage Δ
bundles/shell/shell/src/dm_shell_list_command.c 0.00% <0.00%> (ø)
.../pubsub_admin_tcp/v2/src/pubsub_tcp_topic_sender.c 84.88% <0.00%> (-0.89%) :arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 71fac23...372e30f. Read the comment docs.

codecov-commenter avatar Nov 25 '21 20:11 codecov-commenter

Is it maybe possible to move the generate plantuml from dependency manager info to a separate header/source file and test the output in combination with a plantuml package.

If this works the GitHub ubuntu workflow can be updated with the plantuml package: https://github.com/apache/celix/blob/master/.github/workflows/ubuntu.yml#L37-L50

And maybe with cmake find_program check if the additional test can be used.

pnoltes avatar Nov 27 '21 13:11 pnoltes