CodeCompass
CodeCompass copied to clipboard
CodeCompass is a software comprehension tool for large scale software written in C/C++ and Java
I'd like to propose to evaluate and (selectively) adopt secure software development best practices recommended by the Open Source Security Foundation (OpenSSF) [1]. The OpenSSF Scorecard project checks various development...
*Coupling* is metric which can be computed for structural units at different levels (e.g. classes, namespaces, modules). It measures how many other entities an entity depends on; and how many...
See the OpenSSF security test (https://github.com/Ericsson/CodeCompass/issues/659). ``` { "details": [ "Warn: no OSSFuzz integration found: Follow the steps in https://github.com/google/oss-fuzz to integrate fuzzing for your project.\nOver time, try to add...
Currently the `CppAstNodeMetrics` table is cleaned up during incremental parsing by iterating through all stored entities, querying the related `CppAstNode`, then the appropriate file. After that, `CppAstNodeMetrics` entities related to...
In the following example, the `VAR` variable is different than `VAR`, this is why from the definition it cannot seen where is used. Using is another different node. ```cpp template...
The old web UI was able to display several important metadata about components of the selected class or function that the new web UI does not currently have support for....
```cpp namespace N { const int var = 0; } ``` When we try to query the `var` variable's AST node, reparser plugin returns nothing.
The types/statements are handled together with their namespaces. It would be handy if the user could go to the namespace definitions/declarations, and it can be seen where are used the...
Sometimes declarations or usings have several definitions in the codebase. Currently, CodeCompass can not support multiple implementations in C++. Ex1: ```cpp namespace N { int a(); int a(int); } using...
With the new Cpp metrics plugin, the issue of dependent parsers emerged again. The name `cppmetricsparser` preceds `cppplugin` which results in the metrics are to be calculated before the cpp...