apache / incubator-streampark
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
editorconfig
tpl
cmd
gitattributes
stylelintignore
eslintignore
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.

main111934 LOC (88%) 1,368 files
test3971 LOC (3%) 48 files
generated0 LOC (0%) 0 files
build and deployment5336 LOC (4%) 60 files
other5778 LOC (4%) 204 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
tpl
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 1368 files match defined criteria (111,934 LOC, 100.0% vs. main code):
    • 189 *.vue files (23,859 LOC)
    • 360 *.java files (22,493 LOC)
    • 378 *.ts files (22,232 LOC)
    • 315 *.scala files (20,398 LOC)
    • 16 *.yml files (10,548 LOC)
    • 12 *.sql files (3,367 LOC)
    • 34 *.less files (2,717 LOC)
    • 21 *.tsx files (2,653 LOC)
    • 4 *.ftl files (1,393 LOC)
    • 26 *.xml files (1,317 LOC)
    • 4 *.js files (487 LOC)
    • 7 *.yaml files (257 LOC)
    • 1 *.html files (150 LOC)
    • 1 *.tpl files (63 LOC)
  • " *.vue" is biggest, containing 21.32% of LOC.
  • " *.tpl" is smallest, containing 0.06% of LOC.


*.vue23859 LOC (21%) 189 files
*.java22493 LOC (20%) 360 files
*.ts22232 LOC (19%) 378 files
*.scala20398 LOC (18%) 315 files
*.yml10548 LOC (9%) 16 files
*.sql3367 LOC (3%) 12 files
*.less2717 LOC (2%) 34 files
*.tsx2653 LOC (2%) 21 files
*.ftl1393 LOC (1%) 4 files
*.xml1317 LOC (1%) 26 files
*.js487 LOC (<1%) 4 files
*.yaml257 LOC (<1%) 7 files
*.html150 LOC (<1%) 1 file
*.tpl63 LOC (<1%) 1 file
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 ".*/[Tt]est/.*".
  • 48 files match defined criteria (3,971 LOC, 3.5% vs. main code):
    • 19 *.scala files (2,030 LOC)
    • 28 *.java files (1,925 LOC)
    • 1 *.yml files (16 LOC)
  • " *.scala" is biggest, containing 51.12% of LOC.
  • " *.yml" is smallest, containing 0.4% of LOC.


*.scala2030 LOC (51%) 19 files
*.java1925 LOC (48%) 28 files
*.yml16 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 ".*/pom[.]xml".
    • files with paths like ".*/docker[-]compose[.]yaml".
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/package[.]json".
    • files with paths like ".*/assembly[.]xml".
    • files with paths like ".*/[.]gitattributes".
  • 60 files match defined criteria (5,336 LOC, 4.8% vs. main code):
    • 56 *.xml files (4,851 LOC)
    • 3 *.sh files (439 LOC)
    • 1 *.yaml files (46 LOC)
  • " *.xml" is biggest, containing 90.91% of LOC.
  • " *.yaml" is smallest, containing 0.86% of LOC.


*.xml4851 LOC (90%) 56 files
*.sh439 LOC (8%) 3 files
*.yaml46 LOC (<1%) 1 file
Other Code
txt
properties
tpl
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]txt".
    • files with paths like ".*/LICENSE[.][a-z0-9]+".
    • files with paths like ".*/checkstyle.*".
    • files with paths like ".*/checkstyle[.]xml".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]stylelintignore".
    • files with paths like ".*/[.]prettierignore".
    • files with paths like ".*/[.]eslintignore".
    • files with paths like ".*[.]svg".
  • 204 files match defined criteria (5,778 LOC, 5.2% vs. main code):
    • 164 *.txt files (4,028 LOC)
    • 25 *.svg files (848 LOC)
    • 2 *.xml files (265 LOC)
    • 3 *.json files (261 LOC)
    • 5 *.properties files (240 LOC)
    • 4 *.md files (107 LOC)
    • 1 *.tpl files (29 LOC)
  • " *.txt" is biggest, containing 69.71% of LOC.
  • " *.tpl" is smallest, containing 0.5% of LOC.


*.txt4028 LOC (69%) 164 files
*.svg848 LOC (14%) 25 files
*.xml265 LOC (4%) 2 files
*.json261 LOC (4%) 3 files
*.properties240 LOC (4%) 5 files
*.md107 LOC (1%) 4 files
*.tpl29 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2023-08-10 22:13