apache / kylin
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
txt
prefs
jsonl
editorconfig
babelrc
eslintignore
sc
orc
gitconfig
ini
cfg
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.

main355527 LOC (22%) 3,242 files
test206779 LOC (13%) 3,268 files
generated0 LOC (0%) 0 files
build and deployment15801 LOC (1%) 122 files
other986164 LOC (63%) 3,860 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
cfg
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 3242 files match defined criteria (355,527 LOC, 100.0% vs. main code):
    • 2,482 *.java files (231,844 LOC)
    • 150 *.vue files (66,761 LOC)
    • 276 *.scala files (26,729 LOC)
    • 228 *.js files (20,309 LOC)
    • 75 *.xml files (6,118 LOC)
    • 6 *.less files (1,828 LOC)
    • 6 *.ftl files (960 LOC)
    • 15 *.yaml files (738 LOC)
    • 2 *.sql files (206 LOC)
    • 1 *.html files (29 LOC)
    • 1 *.cfg files (5 LOC)
  • " *.java" is biggest, containing 65.21% of LOC.
  • " *.cfg" is smallest, containing 0% of LOC.


*.java231844 LOC (65%) 2,482 files
*.vue66761 LOC (18%) 150 files
*.scala26729 LOC (7%) 276 files
*.js20309 LOC (5%) 228 files
*.xml6118 LOC (1%) 75 files
*.less1828 LOC (<1%) 6 files
*.ftl960 LOC (<1%) 6 files
*.yaml738 LOC (<1%) 15 files
*.sql206 LOC (<1%) 2 files
*.html29 LOC (<1%) 1 file
*.cfg5 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
orc
sc
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*__test__.*".
    • files with paths like ".*[.]spec[.]js".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*/jest[.][a-zA-Z0-9\.]+".
    • files with paths like ".*/test_.*".
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/testing[.].*".
    • files with paths like ".*/mock[a-zA-Z0-9_\- ]+/.*".
  • 3268 files match defined criteria (206,779 LOC, 58.2% vs. main code):
    • 969 *.java files (163,180 LOC)
    • 2,124 *.sql files (21,955 LOC)
    • 136 *.scala files (13,406 LOC)
    • 30 *.xml files (7,121 LOC)
    • 7 *.js files (1,101 LOC)
    • 1 *.orc files (15 LOC)
    • 1 *.sc files (1 LOC)
  • " *.java" is biggest, containing 78.92% of LOC.
  • " *.sc" is smallest, containing 0% of LOC.


*.java163180 LOC (78%) 969 files
*.sql21955 LOC (10%) 2,124 files
*.scala13406 LOC (6%) 136 files
*.xml7121 LOC (3%) 30 files
*.js1101 LOC (<1%) 7 files
*.orc15 LOC (<1%) 1 file
*.sc1 LOC (<1%) 1 file
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 ".*/package[.]json".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*([.]|/)webpack([.]|/).*".
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*/[.]gitconfig".
    • files with paths like ".*/assembly[.]xml".
    • files with paths like ".*[.]sh".
  • 122 files match defined criteria (15,801 LOC, 4.4% vs. main code):
    • 53 *.xml files (12,185 LOC)
    • 66 *.sh files (3,405 LOC)
    • 3 *.js files (211 LOC)
  • " *.xml" is biggest, containing 77.12% of LOC.
  • " *.js" is smallest, containing 1.34% of LOC.


*.xml12185 LOC (77%) 53 files
*.sh3405 LOC (21%) 66 files
*.js211 LOC (1%) 3 files
Other Code
properties
txt
ini
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 ".*[.]svg".
    • files with paths like ".*[.]json".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*/[.]eslintignore".
    • files with paths like ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]txt".
    • files with paths like ".*/[Dd]emos?/.*".
    • files with paths like ".*[.]ini".
    • files with paths like ".*/checkstyle.*".
  • 3860 files match defined criteria (986,164 LOC, 277.4% vs. main code):
    • 3,772 *.json files (968,525 LOC)
    • 45 *.properties files (9,361 LOC)
    • 11 *.txt files (4,518 LOC)
    • 10 *.xml files (1,763 LOC)
    • 11 *.md files (1,637 LOC)
    • 9 *.svg files (251 LOC)
    • 1 *.sql files (105 LOC)
    • 1 *.ini files (4 LOC)
  • " *.json" is biggest, containing 98.21% of LOC.
  • " *.ini" is smallest, containing 0% of LOC.


*.json968525 LOC (98%) 3,772 files
*.properties9361 LOC (<1%) 45 files
*.txt4518 LOC (<1%) 11 files
*.xml1763 LOC (<1%) 10 files
*.md1637 LOC (<1%) 11 files
*.svg251 LOC (<1%) 9 files
*.sql105 LOC (<1%) 1 file
*.ini4 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-07 15:46