apache / grails-core
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
gsp
xsd
txt
eps
gml
x
gitattributes
command
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.

main211130 LOC (46%) 2,844 files
test143495 LOC (31%) 2,263 files
generated14256 LOC (3%) 3 files
build and deployment7898 LOC (1%) 205 files
other74865 LOC (16%) 1,473 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
gsp
xsd
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 2844 files match defined criteria (211,130 LOC, 100.0% vs. main code):
    • 1,135 *.java files (107,801 LOC)
    • 1,663 *.groovy files (98,902 LOC)
    • 12 *.css files (3,131 LOC)
    • 8 *.html files (579 LOC)
    • 11 *.gsp files (440 LOC)
    • 1 *.xsd files (150 LOC)
    • 3 *.js files (67 LOC)
    • 11 *.xml files (60 LOC)
  • " *.java" is biggest, containing 51.06% of LOC.
  • " *.xml" is smallest, containing 0.03% of LOC.


*.java107801 LOC (51%) 1,135 files
*.groovy98902 LOC (46%) 1,663 files
*.css3131 LOC (1%) 12 files
*.html579 LOC (<1%) 8 files
*.gsp440 LOC (<1%) 11 files
*.xsd150 LOC (<1%) 1 file
*.js67 LOC (<1%) 3 files
*.xml60 LOC (<1%) 11 files
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
gsp
gml
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*/testing[.].*".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*UnitTests[.][a-zA-Z0-9_]+".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*[-]tests/.*".
    • files with paths like ".*[-]tests[-].*".
  • 2263 files match defined criteria (143,495 LOC, 68.0% vs. main code):
    • 1,805 *.groovy files (113,614 LOC)
    • 82 *.css files (16,977 LOC)
    • 185 *.gsp files (5,757 LOC)
    • 61 *.java files (3,848 LOC)
    • 55 *.gradle files (2,138 LOC)
    • 51 *.xml files (872 LOC)
    • 19 *.js files (139 LOC)
    • 1 *.bat files (66 LOC)
    • 3 *.gml files (59 LOC)
    • 1 *.jsp files (25 LOC)
  • " *.groovy" is biggest, containing 79.18% of LOC.
  • " *.jsp" is smallest, containing 0.02% of LOC.


*.groovy113614 LOC (79%) 1,805 files
*.css16977 LOC (11%) 82 files
*.gsp5757 LOC (4%) 185 files
*.java3848 LOC (2%) 61 files
*.gradle2138 LOC (1%) 55 files
*.xml872 LOC (<1%) 51 files
*.js139 LOC (<1%) 19 files
*.bat66 LOC (<1%) 1 file
*.gml59 LOC (<1%) 3 files
*.jsp25 LOC (<1%) 1 file
Generated Code
Automatically generated files, not manually changed after generation.
eps
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.](ps|eps|pfa)".
  • 3 files match defined criteria (14,256 LOC, 6.8% vs. main code). All matches are in *.eps files.


*.eps14256 LOC (100%) 3 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 ".*[.]gradle".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]gitattributes".
    • files with paths like ".*[.]bat".
    • files with paths like ".*[.]sh".
  • 205 files match defined criteria (7,898 LOC, 3.7% vs. main code):
    • 201 *.gradle files (7,606 LOC)
    • 4 *.bat files (292 LOC)
  • " *.gradle" is biggest, containing 96.3% of LOC.
  • " *.bat" is smallest, containing 3.7% of LOC.


*.gradle7606 LOC (96%) 201 files
*.bat292 LOC (3%) 4 files
Other Code
properties
gsp
xsd
txt
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]adoc".
    • files with paths like ".*/asciidoc/.*".
    • files with paths like ".*[.]svg".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]json".
    • files with paths like ".*/[Dd]emos?/.*".
    • files with paths like ".*/resources/.*[.]xsd".
  • 1473 files match defined criteria (74,865 LOC, 35.5% vs. main code):
    • 580 *.adoc files (35,703 LOC)
    • 439 *.properties files (22,743 LOC)
    • 243 *.groovy files (7,380 LOC)
    • 62 *.svg files (3,841 LOC)
    • 84 *.md files (2,033 LOC)
    • 8 *.css files (1,218 LOC)
    • 24 *.gsp files (783 LOC)
    • 8 *.xsd files (504 LOC)
    • 10 *.gradle files (385 LOC)
    • 6 *.txt files (160 LOC)
    • 6 *.xml files (84 LOC)
    • 2 *.js files (18 LOC)
    • 1 *.jsp files (13 LOC)
  • " *.adoc" is biggest, containing 47.69% of LOC.
  • " *.jsp" is smallest, containing 0.02% of LOC.


*.adoc35703 LOC (47%) 580 files
*.properties22743 LOC (30%) 439 files
*.groovy7380 LOC (9%) 243 files
*.svg3841 LOC (5%) 62 files
*.md2033 LOC (2%) 84 files
*.css1218 LOC (1%) 8 files
*.gsp783 LOC (1%) 24 files
*.xsd504 LOC (<1%) 8 files
*.gradle385 LOC (<1%) 10 files
*.txt160 LOC (<1%) 6 files
*.xml84 LOC (<1%) 6 files
*.js18 LOC (<1%) 2 files
*.jsp13 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-07 15:23