gitlab-org / linguist
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
v
coffee
fth
gsp
lfe
txt
rl
fish
elm
pd_lua
scrbl
p
t
xtend
opa
el
glsl
gst
gsx
patch
tea
ccp
nim
vark
pogo
sce
scd
sci
editorconfig
gemrc
sass
ik
ceylon
ahk
profile
lasso9
mxt
forth
zshrc
mediawiki
maxpat
zprofile
moon
volt
omgrofl
abap
pasm
nsh
jl
nsi
login
sc
sml
lgt
sl
lasso
dpr
haml
cl
txl
n
asc
fcgi
s
xpl
cob
zlogin
vimrc
cshrc
monkey
htaccess
ls
zshenv
rabl
nut
ecl
pluginspec
xqm
handlebars
pir
wisp
las
ml
bash_profile
cpy
edn
rdoc
sps
gvimrc
hbs
eliom
bashrc
nu
fp
sig
zlogout
tst
gitconfig
org
ant
ino
litcoffee
xc
gs
cbl
ivy
pde
vhd
bash_logout
creole
xslt
rake
maxhelp
po
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.

main714 LOC (<1%) 10 files
test768 LOC (<1%) 8 files
generated4181 LOC (4%) 8 files
build and deployment0 LOC (0%) 0 files
other80428 LOC (93%) 384 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 10 files match defined criteria (714 LOC, 100.0% vs. main code):
    • 9 *.rb files (697 LOC)
    • 1 *.gemspec files (17 LOC)
  • " *.rb" is biggest, containing 97.62% of LOC.
  • " *.gemspec" is smallest, containing 2.38% of LOC.


*.rb697 LOC (97%) 9 files
*.gemspec17 LOC (2%) 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 ".*/test_.*".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*_test[.].*".
    • files with paths like ".*/[Tt]est/.*".
  • 8 files match defined criteria (768 LOC, 107.6% vs. main code). All matches are in *.rb files.


*.rb768 LOC (100%) 8 files
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with any line of content like "//[ ]*Generated by .*".
    • files with paths like ".*[.](py|java|h|cc|cpp|m|rb|php)" AND any line of content like ".*Generated by the protocol buffer compiler[.][ ]+DO NOT EDIT[!].*".
    • files with paths like ".*[.](c|cpp)" AND any line of content like ".*Generated by Cython.*".
  • 8 files match defined criteria (4,181 LOC, 585.6% vs. main code):
    • 1 *.cpp files (3,123 LOC)
    • 1 *.java files (436 LOC)
    • 1 *.cc files (265 LOC)
    • 1 *.h files (161 LOC)
    • 1 *.rb files (82 LOC)
    • 2 *.js files (76 LOC)
    • 1 *.py files (38 LOC)
  • " *.cpp" is biggest, containing 74.7% of LOC.
  • " *.py" is smallest, containing 0.91% of LOC.


*.cpp3123 LOC (74%) 1 file
*.java436 LOC (10%) 1 file
*.cc265 LOC (6%) 1 file
*.h161 LOC (3%) 1 file
*.rb82 LOC (1%) 1 file
*.js76 LOC (1%) 2 files
*.py38 LOC (<1%) 1 file
Other Code
las
v
coffee
moon
glsl
fth
el
lfe
maxpat
maxhelp
sps
lasso
nsi
elm
lasso9
rl
fish
xtend
abap
wisp
org
monkey
pd_lua
sl
p
rdoc
litcoffee
fcgi
gs
volt
edn
ml
txl
s
fp
xqm
sml
mediawiki
nut
gsp
scd
nsh
sc
scrbl
mxt
pogo
ecl
eliom
ls
creole
omgrofl
pde
jl
t
sig
pluginspec
nu
xslt
ivy
po
opa
sci
ceylon
cl
rabl
ant
xpl
vhd
dpr
xc
sass
hbs
n
gsx
asc
cpy
lgt
handlebars
ino
ccp
cob
gst
patch
pasm
txt
pir
cbl
vark
forth
haml
rake
nim
ik
tst
tea
sce
ahk
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 ".*/[.]gitignore".
    • files with paths like ".*/[Ss]amples/.*".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*[.]patch".
    • files with paths like ".*/[.]htaccess".
    • files with paths like ".*[.]po".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]bash_[a-z]+".
    • files with paths like ".*[.]adoc".
    • files with paths like ".*[.]txt".
  • 384 files match defined criteria (80,428 LOC, 11264.4% vs. main code):
    • 74 *.m files (18,578 LOC)
    • 16 *.c files (11,106 LOC)
    • 1 *.las files (7,556 LOC)
    • 25 *.v files (6,065 LOC)
    • 11 *.js files (4,922 LOC)
    • 5 *.php files (3,604 LOC)
    • 5 *.cpp files (3,516 LOC)
    • 26 *.h files (3,430 LOC)
    • 11 *.cls files (2,469 LOC)
    • 8 *.rb files (2,238 LOC)
    • 6 *.java files (1,864 LOC)
    • 3 *.pm files (1,495 LOC)
    • 3 *.cc files (1,258 LOC)
    • 9 *.coffee files (1,139 LOC)
    • 1 *.rs files (1,000 LOC)
    • 4 *.py files (908 LOC)
    • 1 *.moon files (747 LOC)
    • 2 *.glsl files (643 LOC)
    • 13 *.pl files (461 LOC)
    • 6 *.fth files (441 LOC)
    • 2 *.el files (433 LOC)
    • 4 *.lfe files (411 LOC)
    • 6 *.applescript files (352 LOC)
    • 1 *.maxpat files (337 LOC)
    • 1 *.maxhelp files (336 LOC)
    • 1 *.sps files (323 LOC)
    • 1 *.lasso files (269 LOC)
    • 1 *.nsi files (206 LOC)
    • 3 *.elm files (195 LOC)
    • 1 *.lasso9 files (192 LOC)
    • 3 *.rl files (190 LOC)
    • 3 *.fish files (189 LOC)
    • 2 *.erl files (185 LOC)
    • 2 *.xtend files (131 LOC)
    • 1 *.abap files (128 LOC)
    • 1 *.wisp files (126 LOC)
    • 1 *.org files (125 LOC)
    • 1 *.monkey files (119 LOC)
    • 3 *.pd_lua files (118 LOC)
    • 1 *.awk files (117 LOC)
    • 1 *.sl files (106 LOC)
    • 2 *.p files (105 LOC)
    • 1 *.rdoc files (91 LOC)
    • 1 *.litcoffee files (85 LOC)
    • 1 *.fcgi files (80 LOC)
    • 1 *.gs files (79 LOC)
    • 4 *.json files (78 LOC)
    • 1 *.volt files (77 LOC)
    • 1 *.edn files (76 LOC)
    • 1 *.ml files (68 LOC)
    • 1 *.txl files (67 LOC)
    • 1 *.s files (63 LOC)
    • 1 *.sbt files (62 LOC)
    • 1 *.fp files (59 LOC)
    • 1 *.xqm files (55 LOC)
    • 1 *.sml files (53 LOC)
    • 2 *.bash files (49 LOC)
    • 1 *.mediawiki files (47 LOC)
    • 2 *.md files (46 LOC)
    • 1 *.nut files (45 LOC)
    • 5 *.gsp files (42 LOC)
    • 1 *.scd files (41 LOC)
    • 1 *.nsh files (41 LOC)
    • 1 *.sc files (40 LOC)
    • 1 *.kt files (40 LOC)
    • 2 *.scrbl files (40 LOC)
    • 1 *.mxt files (39 LOC)
    • 1 *.pogo files (34 LOC)
    • 1 *.ecl files (34 LOC)
    • 1 *.eliom files (34 LOC)
    • 1 *.cu files (32 LOC)
    • 1 *.ls files (32 LOC)
    • 1 *.creole files (29 LOC)
    • 1 *.omgrofl files (28 LOC)
    • 1 *.pde files (28 LOC)
    • 3 *.ts files (26 LOC)
    • 3 *.sh files (25 LOC)
    • 1 *.jl files (24 LOC)
    • 2 *.t files (24 LOC)
    • 1 *.sig files (24 LOC)
    • 2 *.scss files (22 LOC)
    • 1 *.pluginspec files (22 LOC)
    • 1 *.nu files (22 LOC)
    • 1 *.xslt files (22 LOC)
    • 1 *.ivy files (20 LOC)
    • 1 *.po files (20 LOC)
    • 2 *.opa files (19 LOC)
    • 1 *.adoc files (16 LOC)
    • 1 *.sci files (14 LOC)
    • 1 *.dart files (14 LOC)
    • 1 *.ceylon files (13 LOC)
    • 1 *.cl files (13 LOC)
    • 1 *.rabl files (12 LOC)
    • 1 *.less files (12 LOC)
    • 1 *.ant files (12 LOC)
    • 1 *.gradle files (11 LOC)
    • 1 *.xpl files (11 LOC)
    • 1 *.vhd files (11 LOC)
    • 1 *.dpr files (10 LOC)
    • 1 *.xc files (10 LOC)
    • 1 *.sass files (9 LOC)
    • 1 *.hbs files (9 LOC)
    • 1 *.asciidoc files (9 LOC)
    • 1 *.n files (8 LOC)
    • 1 *.gsx files (7 LOC)
    • 1 *.hpp files (7 LOC)
    • 1 *.asc files (7 LOC)
    • 1 *.cpy files (7 LOC)
    • 1 *.lgt files (6 LOC)
    • 1 *.handlebars files (6 LOC)
    • 1 *.ino files (6 LOC)
    • 1 *.ccp files (5 LOC)
    • 1 *.r files (5 LOC)
    • 1 *.cob files (5 LOC)
    • 1 *.gst files (4 LOC)
    • 1 *.patch files (4 LOC)
    • 1 *.pasm files (4 LOC)
    • 3 *.txt files (4 LOC)
    • 1 *.psm1 files (4 LOC)
    • 1 *.pir files (4 LOC)
    • 1 *.cbl files (4 LOC)
    • 1 *.vark files (3 LOC)
    • 1 *.forth files (3 LOC)
    • 1 *.haml files (3 LOC)
    • 1 *.escript files (3 LOC)
    • 1 *.rake files (3 LOC)
    • 1 *.nim files (2 LOC)
    • 1 *.ik files (2 LOC)
    • 1 *.ps1 files (2 LOC)
    • 1 *.tst files (2 LOC)
    • 1 *.tea files (1 LOC)
    • 1 *.sce files (1 LOC)
    • 1 *.ahk files (1 LOC)
    • 1 *.zsh files (1 LOC)
    • 1 *.sql files (1 LOC)
  • " *.m" is biggest, containing 23.1% of LOC.
  • " *.sql" is smallest, containing 0% of LOC.


*.m18578 LOC (23%) 74 files
*.c11106 LOC (13%) 16 files
*.las7556 LOC (9%) 1 file
*.v6065 LOC (7%) 25 files
*.js4922 LOC (6%) 11 files
*.php3604 LOC (4%) 5 files
*.cpp3516 LOC (4%) 5 files
*.h3430 LOC (4%) 26 files
*.cls2469 LOC (3%) 11 files
*.rb2238 LOC (2%) 8 files
*.java1864 LOC (2%) 6 files
*.pm1495 LOC (1%) 3 files
*.cc1258 LOC (1%) 3 files
*.coffee1139 LOC (1%) 9 files
*.rs1000 LOC (1%) 1 file
*.py908 LOC (1%) 4 files
*.moon747 LOC (<1%) 1 file
*.glsl643 LOC (<1%) 2 files
*.pl461 LOC (<1%) 13 files
*.fth441 LOC (<1%) 6 files
*.el433 LOC (<1%) 2 files
*.lfe411 LOC (<1%) 4 files
*.applescript352 LOC (<1%) 6 files
*.maxpat337 LOC (<1%) 1 file
*.maxhelp336 LOC (<1%) 1 file
*.sps323 LOC (<1%) 1 file
*.lasso269 LOC (<1%) 1 file
*.nsi206 LOC (<1%) 1 file
*.elm195 LOC (<1%) 3 files
*.lasso9192 LOC (<1%) 1 file
*.rl190 LOC (<1%) 3 files
*.fish189 LOC (<1%) 3 files
*.erl185 LOC (<1%) 2 files
*.xtend131 LOC (<1%) 2 files
*.abap128 LOC (<1%) 1 file
*.wisp126 LOC (<1%) 1 file
*.org125 LOC (<1%) 1 file
*.monkey119 LOC (<1%) 1 file
*.pd_lua118 LOC (<1%) 3 files
*.awk117 LOC (<1%) 1 file
*.sl106 LOC (<1%) 1 file
*.p105 LOC (<1%) 2 files
*.rdoc91 LOC (<1%) 1 file
*.litcoffee85 LOC (<1%) 1 file
*.fcgi80 LOC (<1%) 1 file
*.gs79 LOC (<1%) 1 file
*.json78 LOC (<1%) 4 files
*.volt77 LOC (<1%) 1 file
*.edn76 LOC (<1%) 1 file
*.ml68 LOC (<1%) 1 file
*.txl67 LOC (<1%) 1 file
*.s63 LOC (<1%) 1 file
*.sbt62 LOC (<1%) 1 file
*.fp59 LOC (<1%) 1 file
*.xqm55 LOC (<1%) 1 file
*.sml53 LOC (<1%) 1 file
*.bash49 LOC (<1%) 2 files
*.mediawiki47 LOC (<1%) 1 file
*.md46 LOC (<1%) 2 files
*.nut45 LOC (<1%) 1 file
*.gsp42 LOC (<1%) 5 files
*.scd41 LOC (<1%) 1 file
*.nsh41 LOC (<1%) 1 file
*.sc40 LOC (<1%) 1 file
*.kt40 LOC (<1%) 1 file
*.scrbl40 LOC (<1%) 2 files
*.mxt39 LOC (<1%) 1 file
*.pogo34 LOC (<1%) 1 file
*.ecl34 LOC (<1%) 1 file
*.eliom34 LOC (<1%) 1 file
*.cu32 LOC (<1%) 1 file
*.ls32 LOC (<1%) 1 file
*.creole29 LOC (<1%) 1 file
*.omgrofl28 LOC (<1%) 1 file
*.pde28 LOC (<1%) 1 file
*.ts26 LOC (<1%) 3 files
*.sh25 LOC (<1%) 3 files
*.jl24 LOC (<1%) 1 file
*.t24 LOC (<1%) 2 files
*.sig24 LOC (<1%) 1 file
*.scss22 LOC (<1%) 2 files
*.pluginspec22 LOC (<1%) 1 file
*.nu22 LOC (<1%) 1 file
*.xslt22 LOC (<1%) 1 file
*.ivy20 LOC (<1%) 1 file
*.po20 LOC (<1%) 1 file
*.opa19 LOC (<1%) 2 files
*.adoc16 LOC (<1%) 1 file
*.sci14 LOC (<1%) 1 file
*.dart14 LOC (<1%) 1 file
*.ceylon13 LOC (<1%) 1 file
*.cl13 LOC (<1%) 1 file
*.rabl12 LOC (<1%) 1 file
*.less12 LOC (<1%) 1 file
*.ant12 LOC (<1%) 1 file
*.gradle11 LOC (<1%) 1 file
*.xpl11 LOC (<1%) 1 file
*.vhd11 LOC (<1%) 1 file
*.dpr10 LOC (<1%) 1 file
*.xc10 LOC (<1%) 1 file
*.sass9 LOC (<1%) 1 file
*.hbs9 LOC (<1%) 1 file
*.asciidoc9 LOC (<1%) 1 file
*.n8 LOC (<1%) 1 file
*.gsx7 LOC (<1%) 1 file
*.hpp7 LOC (<1%) 1 file
*.asc7 LOC (<1%) 1 file
*.cpy7 LOC (<1%) 1 file
*.lgt6 LOC (<1%) 1 file
*.handlebars6 LOC (<1%) 1 file
*.ino6 LOC (<1%) 1 file
*.ccp5 LOC (<1%) 1 file
*.r5 LOC (<1%) 1 file
*.cob5 LOC (<1%) 1 file
*.gst4 LOC (<1%) 1 file
*.patch4 LOC (<1%) 1 file
*.pasm4 LOC (<1%) 1 file
*.txt4 LOC (<1%) 3 files
*.psm14 LOC (<1%) 1 file
*.pir4 LOC (<1%) 1 file
*.cbl4 LOC (<1%) 1 file
*.vark3 LOC (<1%) 1 file
*.forth3 LOC (<1%) 1 file
*.haml3 LOC (<1%) 1 file
*.escript3 LOC (<1%) 1 file
*.rake3 LOC (<1%) 1 file
*.nim2 LOC (<1%) 1 file
*.ik2 LOC (<1%) 1 file
*.ps12 LOC (<1%) 1 file
*.tst2 LOC (<1%) 1 file
*.tea1 LOC (<1%) 1 file
*.sce1 LOC (<1%) 1 file
*.ahk1 LOC (<1%) 1 file
*.zsh1 LOC (<1%) 1 file
*.sql1 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-16 13:50