apache / seatunnel
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
properties
cmd
orc
mdx
gitattributes
tpl
gitmodules
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.

main237969 LOC (61%) 3,063 files
test111672 LOC (29%) 840 files
generated0 LOC (0%) 0 files
build and deployment14537 LOC (3%) 246 files
other20028 LOC (5%) 202 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
tpl
cmd
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 3063 files match defined criteria (237,969 LOC, 100.0% vs. main code):
    • 2,971 *.java files (234,327 LOC)
    • 16 *.tsx files (1,182 LOC)
    • 23 *.yaml files (968 LOC)
    • 36 *.ts files (545 LOC)
    • 3 *.xml files (380 LOC)
    • 3 *.py files (328 LOC)
    • 6 *.scss files (132 LOC)
    • 1 *.tpl files (58 LOC)
    • 1 *.cmd files (19 LOC)
    • 2 *.js files (17 LOC)
    • 1 *.html files (13 LOC)
  • " *.java" is biggest, containing 98.47% of LOC.
  • " *.html" is smallest, containing 0.01% of LOC.


*.java234327 LOC (98%) 2,971 files
*.tsx1182 LOC (<1%) 16 files
*.yaml968 LOC (<1%) 23 files
*.ts545 LOC (<1%) 36 files
*.xml380 LOC (<1%) 3 files
*.py328 LOC (<1%) 3 files
*.scss132 LOC (<1%) 6 files
*.tpl58 LOC (<1%) 1 file
*.cmd19 LOC (<1%) 1 file
*.js17 LOC (<1%) 2 files
*.html13 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
orc
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*/e2e/.*".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[.]spec[.]ts".
    • files with paths like ".*/vitest[.].*".
    • files with paths like ".*/test_.*".
    • files with paths like ".*/test[.].*".
  • 840 files match defined criteria (111,672 LOC, 46.9% vs. main code):
    • 698 *.java files (104,883 LOC)
    • 70 *.sql files (4,175 LOC)
    • 40 *.yaml files (818 LOC)
    • 3 *.toml files (678 LOC)
    • 5 *.orc files (597 LOC)
    • 11 *.xml files (239 LOC)
    • 7 *.ts files (190 LOC)
    • 4 *.js files (60 LOC)
    • 2 *.sh files (32 LOC)
  • " *.java" is biggest, containing 93.92% of LOC.
  • " *.sh" is smallest, containing 0.03% of LOC.


*.java104883 LOC (93%) 698 files
*.sql4175 LOC (3%) 70 files
*.yaml818 LOC (<1%) 40 files
*.toml678 LOC (<1%) 3 files
*.orc597 LOC (<1%) 5 files
*.xml239 LOC (<1%) 11 files
*.ts190 LOC (<1%) 7 files
*.js60 LOC (<1%) 4 files
*.sh32 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 ".*[.]sh".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]gitmodules".
    • files with paths like ".*/[.]gitattributes".
    • files with paths like ".*/package[.]json".
  • 246 files match defined criteria (14,537 LOC, 6.1% vs. main code):
    • 241 *.xml files (14,396 LOC)
    • 5 *.sh files (141 LOC)
  • " *.xml" is biggest, containing 99.03% of LOC.
  • " *.sh" is smallest, containing 0.97% of LOC.


*.xml14396 LOC (99%) 241 files
*.sh141 LOC (<1%) 5 files
Other Code
txt
properties
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]txt".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]mdx".
    • files with paths like ".*[.]svg".
  • 202 files match defined criteria (20,028 LOC, 8.4% vs. main code):
    • 116 *.txt files (11,063 LOC)
    • 35 *.json files (6,115 LOC)
    • 38 *.properties files (1,715 LOC)
    • 13 *.md files (1,135 LOC)
  • " *.txt" is biggest, containing 55.24% of LOC.
  • " *.md" is smallest, containing 5.67% of LOC.


*.txt11063 LOC (55%) 116 files
*.json6115 LOC (30%) 35 files
*.properties1715 LOC (8%) 38 files
*.md1135 LOC (5%) 13 files
Analyzers
Info about analyzers used for source code examinations.


2025-05-07 17:00