microsoft / cpp_client_telemetry
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
txt
vcxproj
cmd
filters
props
csproj
cmake
in
plist
adb
xaml
S
mak
pro
ads
patch
shproj
cmakein
m4
com
classpath
resx
properties
editorconfig
clp
storyboard
targets
nuspec
clang-format
gitmodules
gitattributes
mms
sas
ini
gv
  • 62 extensions are included in analyses: cpp, hpp, h, cc, md, java, cs, txt, c, vcxproj, py, cmd, sh, filters, gitignore, mm, xml, bat, props, csproj, yml, cmake, json, in, plist, adb, ps1, xaml, gradle, S, mak, asm, pas, pro, ads, patch, shproj, cmakein, js, m4, com, classpath, resx, properties, editorconfig, clp, storyboard, targets, nuspec, m, xib, html, yaml, clang-format, gitmodules, gitattributes, mms, inc, sas, ini, go, gv
  • 11 criteria are used to exclude files from analysis:
    • exclude files with path like ".*/[.][a-zA-Z0-9_]+.*" (Hidden files and folders) (43 files).
    • exclude files with path like ".*/docs/.*" (Documentation) (81 files).
    • exclude files with path like ".*[.]resx" (The resx resource files) (2 files).
    • exclude files with path like ".*[.]m4" (stuff autogenerated by autoconf - still C deps) (2 files).
    • exclude files with path like ".*/proguard[-]rules[.]pro" (ProGuard) (2 files).
    • exclude files with path like ".*/gradle/wrapper/.*" (Gradle) (1 file).
    • exclude files with path like ".*/(3rd|[Tt]hird)[-_]?[Pp]arty/.*" (Dependencies) (5 files).
    • exclude files with path like ".*/git[-]history[.]txt" (Git history) (1 file).
    • exclude files with path like ".*/git[-][a-zA-Z0-9_]+[.]txt" (Git data exports for sokrates analyses) (0 files).
    • exclude files with path like ".*/sokrates_conventions[.]json" (Sokrates scoping conventions) (1 file).
    • exclude files with path like ".*[.]txt" (Text files) (56 files).
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main447772 LOC (85%) 735 files
test47367 LOC (9%) 201 files
generated5573 LOC (1%) 8 files
build and deployment1858 LOC (<1%) 54 files
other23266 LOC (4%) 160 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
vcxproj
s
adb
in
com
filters
ads
cmd
cmake
cmakein
props
clp
sas
mms
targets
shproj
pro
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 735 files match defined criteria (447,772 lines of code, 100.0% vs. main code):
    • 40 *.c files (321,174 lines of code)
    • 122 *.h files (31,698 lines of code)
    • 146 *.hpp files (27,123 lines of code)
    • 103 *.cpp files (20,020 lines of code)
    • 33 *.vcxproj files (13,074 lines of code)
    • 19 *.cc files (7,070 lines of code)
    • 21 *.py files (5,571 lines of code)
    • 69 *.java files (4,459 lines of code)
    • 39 *.cs files (2,440 lines of code)
    • 4 *.s files (2,259 lines of code)
    • 4 *.asm files (1,967 lines of code)
    • 14 *.mm files (1,864 lines of code)
    • 7 *.adb files (1,526 lines of code)
    • 7 *.in files (1,221 lines of code)
    • 4 *.pas files (1,016 lines of code)
    • 2 *.com files (882 lines of code)
    • 22 *.filters files (751 lines of code)
    • 3 *.ads files (715 lines of code)
    • 33 *.cmd files (647 lines of code)
    • 9 *.cmake files (491 lines of code)
    • 2 *.cmakein files (478 lines of code)
    • 1 *.inc files (451 lines of code)
    • 6 *.ps1 files (278 lines of code)
    • 13 *.props files (149 lines of code)
    • 2 *.js files (110 lines of code)
    • 3 *.yml files (79 lines of code)
    • 1 *.clp files (77 lines of code)
    • 1 *.go files (62 lines of code)
    • 1 *.sas files (54 lines of code)
    • 1 *.mms files (38 lines of code)
    • 1 *.targets files (14 lines of code)
    • 1 *.shproj files (13 lines of code)
    • 1 *.pro files (1 lines of code)
  • " *.c" is biggest, containing 71.73% of code.
  • " *.pro" is smallest, containing 0% of code.


*.c321174 LOC (71%) 40 files
*.h31698 LOC (7%) 122 files
*.hpp27123 LOC (6%) 146 files
*.cpp20020 LOC (4%) 103 files
*.vcxproj13074 LOC (2%) 33 files
*.cc7070 LOC (1%) 19 files
*.py5571 LOC (1%) 21 files
*.java4459 LOC (<1%) 69 files
*.cs2440 LOC (<1%) 39 files
*.s2259 LOC (<1%) 4 files
*.asm1967 LOC (<1%) 4 files
*.mm1864 LOC (<1%) 14 files
*.adb1526 LOC (<1%) 7 files
*.in1221 LOC (<1%) 7 files
*.pas1016 LOC (<1%) 4 files
*.com882 LOC (<1%) 2 files
*.filters751 LOC (<1%) 22 files
*.ads715 LOC (<1%) 3 files
*.cmd647 LOC (<1%) 33 files
*.cmake491 LOC (<1%) 9 files
*.cmakein478 LOC (<1%) 2 files
*.inc451 LOC (<1%) 1 files
*.ps1278 LOC (<1%) 6 files
*.props149 LOC (<1%) 13 files
*.js110 LOC (<1%) 2 files
*.yml79 LOC (<1%) 3 files
*.clp77 LOC (<1%) 1 files
*.go62 LOC (<1%) 1 files
*.sas54 LOC (<1%) 1 files
*.mms38 LOC (<1%) 1 files
*.targets14 LOC (<1%) 1 files
*.shproj13 LOC (<1%) 1 files
*.pro1 LOC (<1%) 1 files
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
vcxproj
csproj
filters
shproj
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[-]tests[-].*".
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*/src/androidTest/.*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[.][Tt]ests/.*".
    • files with paths like ".*[.][Tt]ests[.].*".
    • files with any line of content like ".*/simpletest/.*".
  • 201 files match defined criteria (47,367 lines of code, 10.6% vs. main code):
    • 64 *.cc files (26,078 lines of code)
    • 61 *.cpp files (11,900 lines of code)
    • 19 *.py files (1,997 lines of code)
    • 18 *.hpp files (1,527 lines of code)
    • 3 *.c files (1,450 lines of code)
    • 6 *.java files (1,329 lines of code)
    • 4 *.vcxproj files (1,156 lines of code)
    • 6 *.h files (667 lines of code)
    • 10 *.cs files (513 lines of code)
    • 4 *.mm files (280 lines of code)
    • 2 *.csproj files (250 lines of code)
    • 2 *.filters files (198 lines of code)
    • 1 *.shproj files (13 lines of code)
    • 1 *.sh files (9 lines of code)
  • " *.cc" is biggest, containing 55.06% of code.
  • " *.sh" is smallest, containing 0.02% of code.


*.cc26078 LOC (55%) 64 files
*.cpp11900 LOC (25%) 61 files
*.py1997 LOC (4%) 19 files
*.hpp1527 LOC (3%) 18 files
*.c1450 LOC (3%) 3 files
*.java1329 LOC (2%) 6 files
*.vcxproj1156 LOC (2%) 4 files
*.h667 LOC (1%) 6 files
*.cs513 LOC (1%) 10 files
*.mm280 LOC (<1%) 4 files
*.csproj250 LOC (<1%) 2 files
*.filters198 LOC (<1%) 2 files
*.shproj13 LOC (<1%) 1 files
*.sh9 LOC (<1%) 1 files
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]cs" AND any line of content like "[/][/][ ]*".
    • files with paths like ".*/generated/.*".
    • files with paths like ".*[.]designer[.](cs|vb)".
  • 8 files match defined criteria (5,573 lines of code, 1.2% vs. main code):
    • 3 *.hpp files (4,479 lines of code)
    • 5 *.cs files (1,094 lines of code)
  • " *.hpp" is biggest, containing 80.37% of code.
  • " *.cs" is smallest, containing 19.63% of code.


*.hpp4479 LOC (80%) 3 files
*.cs1094 LOC (19%) 5 files
Build and Deployment Code
Source code used to configure or support build and deployment process.
csproj
mak
nuspec
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitattributes".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]gitmodules".
    • files with paths like ".*[.]bat".
    • files with paths like ".*[.]csproj".
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]gradle".
    • files with paths like ".*/AndroidManifest[.]xml".
    • files with paths like ".*[.]nuspec".
    • files with paths like ".*[.]mak".
  • 54 files match defined criteria (1,858 lines of code, 0.4% vs. main code):
    • 7 *.csproj files (596 lines of code)
    • 23 *.sh files (592 lines of code)
    • 14 *.bat files (298 lines of code)
    • 4 *.mak files (194 lines of code)
    • 5 *.gradle files (150 lines of code)
    • 1 *.nuspec files (28 lines of code)
  • " *.csproj" is biggest, containing 32.08% of code.
  • " *.nuspec" is smallest, containing 1.51% of code.


*.csproj596 LOC (32%) 7 files
*.sh592 LOC (31%) 23 files
*.bat298 LOC (16%) 14 files
*.mak194 LOC (10%) 4 files
*.gradle150 LOC (8%) 5 files
*.nuspec28 LOC (1%) 1 files
Other Code
patch
vcxproj
csproj
filters
plist
xaml
cmd
in
storyboard
properties
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]md".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]txt".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*[.]ini".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]xib".
    • files with paths like ".*/[Ss]amples/.*".
    • files with paths like ".*[.]plist".
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]patch".
    • files with paths like ".*[.]storyboard".
    • files with paths like ".*[.](xml|xsd|robot|sql|pgsql|dashboard|profile|ipynb|raml|avsc|al)".
  • 160 files match defined criteria (23,266 lines of code, 5.2% vs. main code):
    • 2 *.patch files (6,920 lines of code)
    • 6 *.vcxproj files (3,503 lines of code)
    • 1 *.xib files (3,239 lines of code)
    • 12 *.c files (2,635 lines of code)
    • 16 *.cpp files (1,868 lines of code)
    • 11 *.md files (893 lines of code)
    • 15 *.cc files (625 lines of code)
    • 1 *.html files (539 lines of code)
    • 7 *.cs files (505 lines of code)
    • 5 *.json files (414 lines of code)
    • 18 *.xml files (410 lines of code)
    • 2 *.csproj files (327 lines of code)
    • 6 *.filters files (321 lines of code)
    • 14 *.h files (276 lines of code)
    • 8 *.plist files (220 lines of code)
    • 12 *.sh files (206 lines of code)
    • 8 *.hpp files (85 lines of code)
    • 5 *.xaml files (82 lines of code)
    • 2 *.mm files (57 lines of code)
    • 6 *.cmd files (49 lines of code)
    • 1 *.in files (47 lines of code)
    • 1 *.storyboard files (26 lines of code)
    • 1 *.properties files (19 lines of code)
  • " *.patch" is biggest, containing 29.74% of code.
  • " *.properties" is smallest, containing 0.08% of code.


*.patch6920 LOC (29%) 2 files
*.vcxproj3503 LOC (15%) 6 files
*.xib3239 LOC (13%) 1 files
*.c2635 LOC (11%) 12 files
*.cpp1868 LOC (8%) 16 files
*.md893 LOC (3%) 11 files
*.cc625 LOC (2%) 15 files
*.html539 LOC (2%) 1 files
*.cs505 LOC (2%) 7 files
*.json414 LOC (1%) 5 files
*.xml410 LOC (1%) 18 files
*.csproj327 LOC (1%) 2 files
*.filters321 LOC (1%) 6 files
*.h276 LOC (1%) 14 files
*.plist220 LOC (<1%) 8 files
*.sh206 LOC (<1%) 12 files
*.hpp85 LOC (<1%) 8 files
*.xaml82 LOC (<1%) 5 files
*.mm57 LOC (<1%) 2 files
*.cmd49 LOC (<1%) 6 files
*.in47 LOC (<1%) 1 files
*.storyboard26 LOC (<1%) 1 files
*.properties19 LOC (<1%) 1 files
Analyzers
Info about analyzers used for source code examinations.
  • *.c files are analyzed with CStyleAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • No dependency analysis
  • *.h files are analyzed with CppAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis
  • *.hpp files are analyzed with CppAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis
  • *.cpp files are analyzed with CppAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis
  • *.vcxproj files are analyzed with XmlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.cc files are analyzed with CppAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis
  • *.py files are analyzed with PythonAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Basic heuristic dependency analysis
  • *.java files are analyzed with JavaAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis (based on package names)
  • *.cs files are analyzed with CSharpAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis (based on namespace heuristics)
  • *.s files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.asm files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.mm files are analyzed with CppAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Advanced heuristic dependency analysis
  • *.adb files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.in files are analyzed with RustAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • No dependency analysis
  • *.pas files are analyzed with ObjectPascalAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • No dependency analysis
  • *.com files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.filters files are analyzed with XmlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.ads files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.cmd files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.cmake files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.cmakein files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.inc files are analyzed with PhpAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Basic heuristic dependency analysis
  • *.ps1 files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.props files are analyzed with XmlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.js files are analyzed with JavaScriptAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • No dependency analysis
  • *.yml files are analyzed with YamlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.clp files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.go files are analyzed with GoLangAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • Unit size analysis
    • Conditional complexity analysis
    • Basic heuristic dependency analysis
  • *.sas files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.mms files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.targets files are analyzed with XmlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.shproj files are analyzed with XmlAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Advanced code cleaning (empty lines and comments removed for LOC calculations, additional cleaning for duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis
  • *.pro files are analyzed with DefaultLanguageAnalyzer:
    • All basic standard analyses supported (source code overview, duplication, file size, concerns, findings, metrics, controls)
    • Basic code cleaning (empty lines removed for LOC calculations and duplication calculations)
    • No unit size analysis
    • No conditional complexity analysis
    • No dependency analysis


2022-01-31 00:10