SonarOpenCommunity / sonar-cxx

SonarQube C++ Community plugin (cxx plugin): This plugin adds C++ support to SonarQube with the focus on integration of existing C++ tools.
GNU Lesser General Public License v3.0
1k stars 365 forks source link

Command line tool to extract function-level metrics #2240

Closed ericlemes closed 3 years ago

ericlemes commented 3 years ago

Hi there,

I'm interested in leverage the capabilities of sonar-cxx to build a command line tool to extract function-level metrics. The idea is to probably implement this on something similar to CxxToolkit and return a json file with the existing measures (that applies) per function.

Is this something you guys would be interested as a PR contribution to this project? I didn't want to completely fork it and make something new because I don't believe it makes sense, since the heavy lifting is already done in sonar-cxx (specially the grammar).

guwirth commented 3 years ago

Hi @ericlemes,

thanks for your offer!

The cxx plugin is mainly to read reports and forward it to SonarQube. Think it makes no sense to export data in other data formats. Most users (of the cxx plugin) are using anyway other tools like CppCheck, ClangTidy, QAC, CppDepend and have already such kind of metrics. In your case I would recommend to have a look to https://www.cppdepend.com/.

Regards,

ericlemes commented 3 years ago

No worries, good to know as I won't put a lot effort to accomodate with sonar-cxx although I definitely intending to use some of the libraries. My use case is more about trying to automate things like "code churn per function" which would require some level of parsing and are not really easy to understand. What I'm finding is that analysing 10k+ lines of code files at file level is not really very helpful.