-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add debug log with information which filter rejected some element #147
Comments
Is there any workaround until this is implemented? When I run clang-uml --progress -vvv --remove-compile-flag -Wno-error=class-memaccess --remove-compile-flag -rdynamic --print-from -n example_class_diagram | grep RsbLoc::StationaryLocations::StationaryLocations I get Dc::Per::RsbLoc::StationaryLocations::StationaryLocations(const ObstacleSensorRoad::sensor_type &,const ::Per::Frames::Rot1dAcc2dFor &,const TrackedPolylines &) When I copy the output to my generated @startuml
'Generated with clang-uml, version 0.4.0
'LLVM version Ubuntu clang version 12.0.0-3ubuntu1~20.04.5
@enduml It works fine for # Change to directory where compile_commands.json is
compilation_database_dir: /workspaces/repos/pj-dc_int/build/unittests/compile_commands.json
# Change to directory where diagram should be written
output_directory: diagrams
diagrams:
example_class_diagram:
type: sequence
glob:
- src/*.cpp
using_namespace:
- Dc::Per::RsbLoc
include:
namespaces:
- Dc::Per::RsbLoc
exclude:
namespaces:
- myproject::detail
from:
- function: "Dc::Per::RsbLoc::StationaryLocations::StationaryLocations(const ObstacleSensorRoad::sensor_type &,const ::Per::Frames::Rot1dAcc2dFor &,const TrackedPolylines &)" clang-uml --version ─╯
clang-uml 0.4.0
Copyright (C) 2021-2023 Bartek Kryza <[email protected]>
Linux x86_64 3.10.0-1160.95.1.el7.x86_64
Built against LLVM/Clang libraries version: 12.0.0
Using LLVM/Clang libraries version: Ubuntu clang version 12.0.0-3ubuntu1~20.04.5 |
@rob-weiss Can you generate the diagram with full verbosity and without -p and check if you get an error saying that the specified entrypoint method signature was not found? |
Thanks for your swift reply, @bkryza! I was wondering why clang-uml -vvv --remove-compile-flag -Wno-error=class-memaccess --remove-compile-flag -rdynamic doesn't seem to throw any apparent errors like the one mentioned above, but it seems to be missing sequences. I could share the full log, but it's massive.
|
@rob-weiss I'm actually AFK until tomorrow afternoon, and I cant see any apparent problem in the logs on my phone but I'll check tomorrow on my monitor... |
@rob-weiss I've checked the logs and it's very strange as the log message Also, could you try generating the diagram in MermaidJS and JSON formats as well to see if maybe this is an issue only related to PlantUML generator? clang-uml -vvv -g json -g mermaid --remove-compile-flag -Wno-error=class-memaccess --remove-compile-flag -rdynamic |
I had switched branches in the meantime and deleted the generated file. It suddenly worked, without any changes. VS Code usually displays changes in files that were changed in the background. No idea what the problem actually was though. Also the JSON and Mermaid output work fine. Sorry for bothering you and thank you so much for this wonderful tool, really appreciate it :) |
@rob-weiss No problem, glad it worked! |
Currently it is very difficult to figure out why specific element e.g. a class, was not included in the diagram. Usually this is caused by improper filters definition.
There should be a log entry in the verbose log with information on which filter rejected any of the elements (this could be a lot - but it will be limited to translation units specified by
glob
pattern and system headers are skipped by default anyway...)The text was updated successfully, but these errors were encountered: