aws / aws-cdk-cli
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
npmignore
gitattributes
prettierignore
mod
fs
csproj
fsproj
snap
mjs
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.

main39961 LOC (35%) 525 files
test49668 LOC (44%) 461 files
generated12 LOC (<1%) 1 file
build and deployment240 LOC (<1%) 16 files
other22533 LOC (20%) 340 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
fs
fsproj
mjs
mod
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 525 files match defined criteria (39,961 LOC, 100.0% vs. main code):
    • 472 *.ts files (37,658 LOC)
    • 18 *.js files (1,214 LOC)
    • 2 *.yaml files (669 LOC)
    • 3 *.go files (82 LOC)
    • 6 *.cs files (64 LOC)
    • 4 *.java files (57 LOC)
    • 8 *.py files (56 LOC)
    • 1 *.bash files (40 LOC)
    • 4 *.fs files (31 LOC)
    • 2 *.fsproj files (30 LOC)
    • 1 *.mjs files (28 LOC)
    • 1 *.xml files (15 LOC)
    • 2 *.mod files (14 LOC)
    • 1 *.graphql files (3 LOC)
  • " *.ts" is biggest, containing 94.24% of LOC.
  • " *.graphql" is smallest, containing 0.01% of LOC.


*.ts37658 LOC (94%) 472 files
*.js1214 LOC (3%) 18 files
*.yaml669 LOC (1%) 2 files
*.go82 LOC (<1%) 3 files
*.cs64 LOC (<1%) 6 files
*.java57 LOC (<1%) 4 files
*.py56 LOC (<1%) 8 files
*.bash40 LOC (<1%) 1 file
*.fs31 LOC (<1%) 4 files
*.fsproj30 LOC (<1%) 2 files
*.mjs28 LOC (<1%) 1 file
*.xml15 LOC (<1%) 1 file
*.mod14 LOC (<1%) 2 files
*.graphql3 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
snap
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[-]tests/.*".
    • files with paths like ".*/jest[.][a-zA-Z0-9\.]+".
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*[.]snap".
    • files with paths like ".*/test[-]data/.*".
    • files with paths like ".*/test_.*".
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/test[-]resources/.*".
  • 461 files match defined criteria (49,668 LOC, 124.3% vs. main code):
    • 389 *.ts files (48,964 LOC)
    • 38 *.js files (292 LOC)
    • 4 *.go files (107 LOC)
    • 2 *.yaml files (89 LOC)
    • 8 *.py files (68 LOC)
    • 3 *.java files (67 LOC)
    • 14 *.sh files (39 LOC)
    • 1 *.cs files (33 LOC)
    • 2 *.snap files (9 LOC)
  • " *.ts" is biggest, containing 98.58% of LOC.
  • " *.snap" is smallest, containing 0.02% of LOC.


*.ts48964 LOC (98%) 389 files
*.js292 LOC (<1%) 38 files
*.go107 LOC (<1%) 4 files
*.yaml89 LOC (<1%) 2 files
*.py68 LOC (<1%) 8 files
*.java67 LOC (<1%) 3 files
*.sh39 LOC (<1%) 14 files
*.cs33 LOC (<1%) 1 file
*.snap9 LOC (<1%) 2 files
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/package[-]lock[.]json".
  • 1 file matches defined criteria (12 LOC, 0.0% vs. main code). All matches are in *.json files.


*.json12 LOC (100%) 1 file
Build and Deployment Code
Source code used to configure or support build and deployment process.
csproj
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/package[.]json".
    • files with paths like ".*/package[-]lock[.]json".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]sh".
    • files with paths like ".*/[.]gitattributes".
    • files with paths like ".*[.]bat".
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*[.]csproj".
  • 16 files match defined criteria (240 LOC, 0.6% vs. main code):
    • 2 *.xml files (104 LOC)
    • 9 *.sh files (90 LOC)
    • 3 *.bat files (24 LOC)
    • 2 *.csproj files (22 LOC)
  • " *.xml" is biggest, containing 43.33% of LOC.
  • " *.csproj" is smallest, containing 9.17% of LOC.


*.xml104 LOC (43%) 2 files
*.sh90 LOC (37%) 9 files
*.bat24 LOC (10%) 3 files
*.csproj22 LOC (9%) 2 files
Other Code
txt
mod
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]md".
    • files with paths like ".*/[.]npmignore".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[.]prettierignore".
    • files with paths like ".*[.]txt".
    • files with paths like ".*/go[.]mod".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]svg".
  • 340 files match defined criteria (22,533 LOC, 56.4% vs. main code):
    • 284 *.json files (17,724 LOC)
    • 38 *.md files (4,759 LOC)
    • 15 *.txt files (26 LOC)
    • 2 *.mod files (23 LOC)
    • 1 *.svg files (1 LOC)
  • " *.json" is biggest, containing 78.66% of LOC.
  • " *.svg" is smallest, containing 0% of LOC.


*.json17724 LOC (78%) 284 files
*.md4759 LOC (21%) 38 files
*.txt26 LOC (<1%) 15 files
*.mod23 LOC (<1%) 2 files
*.svg1 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-04 01:02