apache / helix
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
properties
ivy
cgi
htaccess
txt
editorconfig
npmrc
babelrc
command
prettierignore
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.

main107987 LOC (46%) 1,085 files
test97412 LOC (41%) 692 files
generated0 LOC (0%) 0 files
build and deployment4621 LOC (1%) 49 files
other22819 LOC (9%) 195 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
ivy
cgi
command
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 1085 files match defined criteria (107,987 LOC, 100.0% vs. main code):
    • 894 *.java files (97,339 LOC)
    • 86 *.ts files (4,329 LOC)
    • 7 *.py files (2,680 LOC)
    • 34 *.html files (1,670 LOC)
    • 8 *.xml files (864 LOC)
    • 35 *.scss files (480 LOC)
    • 11 *.ivy files (426 LOC)
    • 4 *.cgi files (88 LOC)
    • 3 *.inc files (62 LOC)
    • 1 *.command files (39 LOC)
    • 2 *.jsp files (10 LOC)
  • " *.java" is biggest, containing 90.14% of LOC.
  • " *.jsp" is smallest, containing 0.01% of LOC.


*.java97339 LOC (90%) 894 files
*.ts4329 LOC (4%) 86 files
*.py2680 LOC (2%) 7 files
*.html1670 LOC (1%) 34 files
*.xml864 LOC (<1%) 8 files
*.scss480 LOC (<1%) 35 files
*.ivy426 LOC (<1%) 11 files
*.cgi88 LOC (<1%) 4 files
*.inc62 LOC (<1%) 3 files
*.command39 LOC (<1%) 1 file
*.jsp10 LOC (<1%) 2 files
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/karma[.]conf[.]js".
    • files with paths like ".*/jest[.][a-zA-Z0-9\.]+".
    • files with paths like ".*/testing[.].*".
    • files with paths like ".*[.]spec[.]ts".
    • files with paths like ".*/e2e/.*".
    • files with paths like ".*/[Tt]est/.*".
  • 692 files match defined criteria (97,412 LOC, 90.2% vs. main code):
    • 625 *.java files (95,871 LOC)
    • 46 *.ts files (1,315 LOC)
    • 19 *.xml files (171 LOC)
    • 2 *.js files (55 LOC)
  • " *.java" is biggest, containing 98.42% of LOC.
  • " *.js" is smallest, containing 0.06% of LOC.


*.java95871 LOC (98%) 625 files
*.ts1315 LOC (1%) 46 files
*.xml171 LOC (<1%) 19 files
*.js55 LOC (<1%) 2 files
Build and Deployment Code
Source code used to configure or support build and deployment process.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*/package[.]json".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]sh".
    • files with paths like ".*/assembly[.]xml".
  • 49 files match defined criteria (4,621 LOC, 4.3% vs. main code):
    • 35 *.xml files (4,146 LOC)
    • 14 *.sh files (475 LOC)
  • " *.xml" is biggest, containing 89.72% of LOC.
  • " *.sh" is smallest, containing 10.28% of LOC.


*.xml4146 LOC (89%) 35 files
*.sh475 LOC (10%) 14 files
Other Code
properties
txt
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[.]prettierignore".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]npmrc".
    • files with paths like ".*[.]svg".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]txt".
    • files with paths like ".*/[.]htaccess".
  • 195 files match defined criteria (22,819 LOC, 21.1% vs. main code):
    • 119 *.md files (16,955 LOC)
    • 31 *.json files (3,174 LOC)
    • 15 *.java files (1,541 LOC)
    • 29 *.properties files (989 LOC)
    • 1 *.txt files (160 LOC)
  • " *.md" is biggest, containing 74.3% of LOC.
  • " *.txt" is smallest, containing 0.7% of LOC.


*.md16955 LOC (74%) 119 files
*.json3174 LOC (13%) 31 files
*.java1541 LOC (6%) 15 files
*.properties989 LOC (4%) 29 files
*.txt160 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-07 15:38