Skip to content

Conversation

@ErjanAltena
Copy link
Contributor

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.

…l output to quickly see the resolved and not-resolved dependencies
@codecov-commenter
Copy link

codecov-commenter commented Nov 25, 2021

Codecov Report

❌ Patch coverage is 0% with 81 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.93%. Comparing base (71fac23) to head (372e30f).
⚠️ Report is 2206 commits behind head on master.

Files with missing lines Patch % Lines
bundles/shell/shell/src/dm_shell_list_command.c 0.00% 81 Missing ⚠️
Additional details and impacted files
@@            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     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@pnoltes pnoltes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interesting addition, but I am missing the tests to verify the functionality.
See for example the query shell test:
https://github.com/apache/celix/blob/master/bundles/shell/shell/gtest/src/ShellTestSuite.cc#L138-L170

Also the meta info for the dm command should be updated to reflect the added functionality:
https://github.com/apache/celix/blob/master/bundles/shell/shell/src/std_commands.c#L101-L107

@pnoltes
Copy link
Contributor

pnoltes commented Nov 27, 2021

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.

@PengZheng
Copy link
Contributor

PengZheng commented Aug 24, 2023

Nice feature. I'll pick it up and get it merged.
Maybe look at it some later time.

@PengZheng PengZheng self-assigned this Aug 24, 2023
@PengZheng PengZheng removed their assignment Sep 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants