aws / aws-sdk-js-v3
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
feature
mjs
plist
properties
txt
hbs
gitattributes
watchmanconfig
pro
jsonc
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.

main2633276 LOC (70%) 29,178 files
test40093 LOC (1%) 557 files
generated0 LOC (0%) 0 files
build and deployment70 LOC (<1%) 2 files
other1058930 LOC (28%) 4,298 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
mjs
hbs
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 29178 files match defined criteria (2,633,276 LOC, 100.0% vs. main code):
    • 28,942 *.ts files (2,617,986 LOC)
    • 73 *.java files (9,062 LOC)
    • 140 *.js files (5,505 LOC)
    • 4 *.kts files (381 LOC)
    • 15 *.mjs files (289 LOC)
    • 1 *.yaml files (25 LOC)
    • 2 *.hbs files (19 LOC)
    • 1 *.xml files (9 LOC)
  • " *.ts" is biggest, containing 99.42% of LOC.
  • " *.xml" is smallest, containing 0% of LOC.


*.ts2617986 LOC (99%) 28,942 files
*.java9062 LOC (<1%) 73 files
*.js5505 LOC (<1%) 140 files
*.kts381 LOC (<1%) 4 files
*.mjs289 LOC (<1%) 15 files
*.yaml25 LOC (<1%) 1 file
*.hbs19 LOC (<1%) 2 files
*.xml9 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
feature
mjs
jsonc
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/vitest[.].*".
    • files with paths like ".*/jest[.][a-zA-Z0-9\.]+".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*[.]spec[.]ts".
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*/__mock[a-zA-Z0-9_\- ]+/.*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*/e2e/.*".
    • files with paths like ".*[.]spec[.]js".
    • files with paths like ".*__tests__.*".
    • files with paths like ".*[-]tests/.*".
    • files with paths like ".*[.]feature".
  • 557 files match defined criteria (40,093 LOC, 1.5% vs. main code):
    • 436 *.ts files (37,183 LOC)
    • 58 *.feature files (1,040 LOC)
    • 11 *.java files (721 LOC)
    • 28 *.js files (504 LOC)
    • 2 *.tsx files (162 LOC)
    • 3 *.gradle files (117 LOC)
    • 6 *.mjs files (90 LOC)
    • 3 *.m files (82 LOC)
    • 1 *.bat files (76 LOC)
    • 2 *.kts files (54 LOC)
    • 4 *.xml files (37 LOC)
    • 1 *.bzl files (17 LOC)
    • 1 *.h files (5 LOC)
    • 1 *.jsonc files (5 LOC)
  • " *.ts" is biggest, containing 92.74% of LOC.
  • " *.jsonc" is smallest, containing 0.01% of LOC.


*.ts37183 LOC (92%) 436 files
*.feature1040 LOC (2%) 58 files
*.java721 LOC (1%) 11 files
*.js504 LOC (1%) 28 files
*.tsx162 LOC (<1%) 2 files
*.gradle117 LOC (<1%) 3 files
*.mjs90 LOC (<1%) 6 files
*.m82 LOC (<1%) 3 files
*.bat76 LOC (<1%) 1 file
*.kts54 LOC (<1%) 2 files
*.xml37 LOC (<1%) 4 files
*.bzl17 LOC (<1%) 1 file
*.h5 LOC (<1%) 1 file
*.jsonc5 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 ".*[.]bat".
    • files with paths like ".*[.]sh".
    • files with paths like ".*/AndroidManifest[.]xml".
    • files with paths like ".*[.]gradle".
    • files with paths like ".*/[.]gitattributes".
  • 2 files match defined criteria (70 LOC, 0.0% vs. main code):
    • 1 *.bat files (68 LOC)
    • 1 *.sh files (2 LOC)
  • " *.bat" is biggest, containing 97.14% of LOC.
  • " *.sh" is smallest, containing 2.86% of LOC.


*.bat68 LOC (97%) 1 file
*.sh2 LOC (2%) 1 file
Other Code
plist
properties
txt
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 ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*/[.]prettierignore".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/checkstyle[.]xml".
    • files with paths like ".*/checkstyle.*".
    • files with paths like ".*[.]plist".
    • files with paths like ".*[.]xib".
    • files with paths like ".*[.]txt".
  • 4298 files match defined criteria (1,058,930 LOC, 40.2% vs. main code):
    • 1,119 *.md files (740,098 LOC)
    • 3,167 *.json files (318,443 LOC)
    • 5 *.plist files (166 LOC)
    • 2 *.xml files (158 LOC)
    • 1 *.xib files (42 LOC)
    • 3 *.properties files (22 LOC)
    • 1 *.txt files (1 LOC)
  • " *.md" is biggest, containing 69.89% of LOC.
  • " *.txt" is smallest, containing 0% of LOC.


*.md740098 LOC (69%) 1,119 files
*.json318443 LOC (30%) 3,167 files
*.plist166 LOC (<1%) 5 files
*.xml158 LOC (<1%) 2 files
*.xib42 LOC (<1%) 1 file
*.properties22 LOC (<1%) 3 files
*.txt1 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-03 22:24