facebookincubator / go2chef
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 44 files with 3,305 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 1 medium size files (240 lines of codeclsfd_ftr_w_mp_ins)
    • 11 small files (1,611 lines of code)
    • 32 very small files (1,454 lines of code)
0% | 0% | 7% | 48% | 43%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
go0% | 0% | 7% | 48% | 43%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
plugin/step0% | 0% | 14% | 50% | 34%
plugin/source0% | 0% | 0% | 52% | 47%
scripts0% | 0% | 0% | 100% | 0%
ROOT0% | 0% | 0% | 29% | 70%
cli0% | 0% | 0% | 100% | 0%
plugin/lib0% | 0% | 0% | 100% | 0%
plugin/logger0% | 0% | 0% | 0% | 100%
plugin/config0% | 0% | 0% | 0% | 100%
util/plugconf0% | 0% | 0% | 0% | 100%
util/temp0% | 0% | 0% | 0% | 100%
util0% | 0% | 0% | 0% | 100%
util/testutil0% | 0% | 0% | 0% | 100%
util/hashfile0% | 0% | 0% | 0% | 100%
Longest Files (Top 44)
File# lines# units
msi_windows.go
in plugin/step/install/windows/msi
240 11
apt.go
in plugin/step/install/linux/apt
188 11
dnf.go
in plugin/step/install/linux/dnf
188 13
command.go
in plugin/step/command
172 11
pkg.go
in plugin/step/install/darwin/pkg
171 13
http.go
in plugin/source/http
165 8
remote.go
in scripts
148 5
config.go
in root
129 7
cli.go
in cli
125 8
tls.go
in plugin/lib/certs
118 8
s3.go
in plugin/source/s3
105 7
group.go
in plugin/step/group
102 8
logger.go
in root
100 9
secretsmanager.go
in plugin/source/secretsmanager
99 7
stdlib.go
in plugin/logger/stdlib
87 14
bundle.go
in plugin/step/bundle
83 8
multi.go
in plugin/source/multi
77 7
global.go
in root
68 6
extcommand.go
in plugin/step/bundle
68 3
sanity_check.go
in plugin/step/sanitycheck
68 9
sanity_check.go
in plugin/step/winsanitycheck
67 9
66 13
local.go
in plugin/source/local
64 7
plugconf.go
in util/plugconf
61 6
depnotify.go
in plugin/step/depnotify
61 8
file.go
in plugin/step/file
59 8
dirs.go
in util/temp
45 3
fs.go
in util
35 3
http.go
in util/testutil
34 1
root_windows.go
in plugin/step/winsanitycheck
32 1
local.go
in plugin/config/local
31 3
http.go
in plugin/config/http
31 3
msi_lock_windows.go
in plugin/step/winsanitycheck
30 3
msi_lock_windows.go
in plugin/step/sanitycheck
30 3
root.go
in plugin/step/winsanitycheck
22 1
root.go
in plugin/step/sanitycheck
22 1
step.go
in root
22 2
source.go
in root
21 2
hashfile.go
in util/hashfile
20 1
embed.go
in plugin/config/embed
18 3
17 1
8 -
root_windows.go
in plugin/step/sanitycheck
7 1
msi.go
in plugin/step/install/windows/msi
1 -
Files With Most Units (Top 42)
File# lines# units
stdlib.go
in plugin/logger/stdlib
87 14
dnf.go
in plugin/step/install/linux/dnf
188 13
pkg.go
in plugin/step/install/darwin/pkg
171 13
66 13
apt.go
in plugin/step/install/linux/apt
188 11
msi_windows.go
in plugin/step/install/windows/msi
240 11
command.go
in plugin/step/command
172 11
logger.go
in root
100 9
sanity_check.go
in plugin/step/winsanitycheck
67 9
sanity_check.go
in plugin/step/sanitycheck
68 9
http.go
in plugin/source/http
165 8
file.go
in plugin/step/file
59 8
group.go
in plugin/step/group
102 8
bundle.go
in plugin/step/bundle
83 8
depnotify.go
in plugin/step/depnotify
61 8
tls.go
in plugin/lib/certs
118 8
cli.go
in cli
125 8
config.go
in root
129 7
secretsmanager.go
in plugin/source/secretsmanager
99 7
s3.go
in plugin/source/s3
105 7
multi.go
in plugin/source/multi
77 7
local.go
in plugin/source/local
64 7
global.go
in root
68 6
plugconf.go
in util/plugconf
61 6
remote.go
in scripts
148 5
dirs.go
in util/temp
45 3
fs.go
in util
35 3
embed.go
in plugin/config/embed
18 3
local.go
in plugin/config/local
31 3
http.go
in plugin/config/http
31 3
msi_lock_windows.go
in plugin/step/winsanitycheck
30 3
extcommand.go
in plugin/step/bundle
68 3
msi_lock_windows.go
in plugin/step/sanitycheck
30 3
step.go
in root
22 2
source.go
in root
21 2
hashfile.go
in util/hashfile
20 1
http.go
in util/testutil
34 1
root_windows.go
in plugin/step/winsanitycheck
32 1
root.go
in plugin/step/winsanitycheck
22 1
root_windows.go
in plugin/step/sanitycheck
7 1
root.go
in plugin/step/sanitycheck
22 1
17 1
Files With Long Lines (Top 7)

There are 7 files with lines longer than 120 characters. In total, there are 11 long lines.

File# lines# units# long lines
dnf.go
in plugin/step/install/linux/dnf
188 13 3
apt.go
in plugin/step/install/linux/apt
188 11 2
pkg.go
in plugin/step/install/darwin/pkg
171 13 2
http.go
in plugin/source/http
165 8 1
msi_windows.go
in plugin/step/install/windows/msi
240 11 1
cli.go
in cli
125 8 1
remote.go
in scripts
148 5 1
Correlations

File Size vs. Commits (all time): 18 points

plugin/step/command/command.go x: 2 commits (all time) y: 172 lines of code plugin/source/s3/s3.go x: 5 commits (all time) y: 105 lines of code multilogger.go x: 1 commits (all time) y: 66 lines of code plugin/source/http/http.go x: 3 commits (all time) y: 165 lines of code plugin/step/install/windows/msi/msi_windows.go x: 2 commits (all time) y: 240 lines of code plugin/step/winsanitycheck/sanity_check.go x: 1 commits (all time) y: 67 lines of code util/hashfile/hashfile.go x: 2 commits (all time) y: 20 lines of code plugin/step/install/linux/dnf/dnf.go x: 3 commits (all time) y: 188 lines of code cli/cli.go x: 2 commits (all time) y: 125 lines of code plugin/step/depnotify/depnotify.go x: 1 commits (all time) y: 61 lines of code plugin/step/group/group.go x: 1 commits (all time) y: 102 lines of code logger.go x: 1 commits (all time) y: 100 lines of code plugin/step/file/file.go x: 2 commits (all time) y: 59 lines of code plugin/source/secretsmanager/secretsmanager.go x: 3 commits (all time) y: 99 lines of code global.go x: 1 commits (all time) y: 68 lines of code plugin/step/install/linux/apt/apt.go x: 1 commits (all time) y: 188 lines of code plugin/source/local/local.go x: 1 commits (all time) y: 64 lines of code util/testutil/http.go x: 1 commits (all time) y: 34 lines of code
240.0
lines of code
  min: 20.0
  average: 106.83
  25th percentile: 63.25
  median: 99.5
  75th percentile: 166.75
  max: 240.0
0 5.0
commits (all time)
min: 1.0 | average: 1.83 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.25 | max: 5.0

File Size vs. Contributors (all time): 18 points

plugin/step/command/command.go x: 2 contributors (all time) y: 172 lines of code plugin/source/s3/s3.go x: 5 contributors (all time) y: 105 lines of code multilogger.go x: 1 contributors (all time) y: 66 lines of code plugin/source/http/http.go x: 3 contributors (all time) y: 165 lines of code plugin/step/install/windows/msi/msi_windows.go x: 1 contributors (all time) y: 240 lines of code plugin/step/winsanitycheck/sanity_check.go x: 1 contributors (all time) y: 67 lines of code util/hashfile/hashfile.go x: 2 contributors (all time) y: 20 lines of code plugin/step/install/linux/dnf/dnf.go x: 3 contributors (all time) y: 188 lines of code cli/cli.go x: 1 contributors (all time) y: 125 lines of code plugin/step/depnotify/depnotify.go x: 1 contributors (all time) y: 61 lines of code plugin/step/group/group.go x: 1 contributors (all time) y: 102 lines of code logger.go x: 1 contributors (all time) y: 100 lines of code plugin/step/file/file.go x: 2 contributors (all time) y: 59 lines of code plugin/source/secretsmanager/secretsmanager.go x: 2 contributors (all time) y: 99 lines of code global.go x: 1 contributors (all time) y: 68 lines of code plugin/step/install/linux/apt/apt.go x: 1 contributors (all time) y: 188 lines of code plugin/source/local/local.go x: 1 contributors (all time) y: 64 lines of code util/testutil/http.go x: 1 contributors (all time) y: 34 lines of code
240.0
lines of code
  min: 20.0
  average: 106.83
  25th percentile: 63.25
  median: 99.5
  75th percentile: 166.75
  max: 240.0
0 5.0
contributors (all time)
min: 1.0 | average: 1.67 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 2.0 | max: 5.0

File Size vs. Commits (30 days): 0 points

No data for "commits (30d)" vs. "lines of code".

File Size vs. Contributors (30 days): 0 points

No data for "contributors (30d)" vs. "lines of code".


File Size vs. Commits (90 days): 1 points

plugin/step/command/command.go x: 1 commits (90d) y: 172 lines of code
172.0
lines of code
  min: 172.0
  average: 172.0
  25th percentile: 172.0
  median: 172.0
  75th percentile: 172.0
  max: 172.0
0 1.0
commits (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Contributors (90 days): 1 points

plugin/step/command/command.go x: 1 contributors (90d) y: 172 lines of code
172.0
lines of code
  min: 172.0
  average: 172.0
  25th percentile: 172.0
  median: 172.0
  75th percentile: 172.0
  max: 172.0
0 1.0
contributors (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0