kubernetes / kubectl
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 253 files with 64,383 lines of code.
    • 8 very long files (29,223 lines of code)
    • 8 long files (5,073 lines of code)
    • 52 medium size files (15,420 lines of codeclsfd_ftr_w_mp_ins)
    • 62 small files (9,035 lines of code)
    • 123 very small files (5,632 lines of code)
45% | 7% | 23% | 14% | 8%
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
po99% | 0% | 0% | 0% | <1%
go12% | 12% | 38% | 22% | 13%
py0% | 0% | 0% | 0% | 100%
mo0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
pkg/util89% | 0% | <1% | 3% | 6%
pkg/describe99% | 0% | 0% | 0% | <1%
pkg/cmd0% | 19% | 49% | 23% | 7%
pkg/polymorphichelpers0% | 0% | 41% | 30% | 28%
pkg/drain0% | 0% | 55% | 28% | 15%
pkg/generate0% | 0% | 46% | 50% | 3%
pkg/metricsutil0% | 0% | 100% | 0% | 0%
pkg/apply0% | 0% | 16% | 29% | 53%
pkg/proxy0% | 0% | 100% | 0% | 0%
pkg/explain0% | 0% | 0% | 47% | 52%
pkg/scale0% | 0% | 0% | 100% | 0%
pkg/scheme0% | 0% | 0% | 0% | 100%
pkg/validation0% | 0% | 0% | 0% | 100%
pkg/rawhttp0% | 0% | 0% | 0% | 100%
pkg/apps0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
describe.go
in pkg/describe
4803 228
po
k8s.po
in pkg/util/i18n/translations/kubectl/en_US/LC_MESSAGES
4749 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/default/LC_MESSAGES
4749 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/ja_JP/LC_MESSAGES
3130 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/zh_CN/LC_MESSAGES
3053 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/pt_BR/LC_MESSAGES
3016 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/it_IT/LC_MESSAGES
3015 -
po
k8s.po
in pkg/util/i18n/translations/kubectl/de_DE/LC_MESSAGES
2708 -
editoptions.go
in pkg/cmd/util/editor
717 22
get.go
in pkg/cmd/get
709 24
debug.go
in pkg/cmd/debug
637 20
fake.go
in pkg/cmd/testing
628 55
helpers.go
in pkg/cmd/util
620 57
diff.go
in pkg/cmd/diff
604 30
run.go
in pkg/cmd/run
601 16
apply.go
in pkg/cmd/apply
557 17
wait.go
in pkg/cmd/wait
484 21
cp.go
in pkg/cmd/cp
443 16
set_env.go
in pkg/cmd/set
439 8
label.go
in pkg/cmd/label
388 9
rollback.go
in pkg/polymorphichelpers
375 26
create.go
in pkg/cmd/create
371 10
cmd.go
in pkg/cmd
364 10
drain.go
in pkg/cmd/drain
362 11
annotate.go
in pkg/cmd/annotate
358 9
create_authinfo.go
in pkg/cmd/config
353 6
logs.go
in pkg/cmd/logs
349 12
delete.go
in pkg/cmd/delete
348 7
create_ingress.go
in pkg/cmd/create
348 15
drain.go
in pkg/drain
346 11
create_role.go
in pkg/cmd/create
345 9
cani.go
in pkg/cmd/auth
343 13
sorter.go
in pkg/cmd/get
342 15
replace.go
in pkg/cmd/replace
326 6
create_service.go
in pkg/cmd/create
326 11
create_configmap.go
in pkg/cmd/create
326 12
history.go
in pkg/polymorphichelpers
323 22
create_secret.go
in pkg/cmd/create
322 13
portforward.go
in pkg/cmd/portforward
321 11
run.go
in pkg/generate/versioned
311 13
taint.go
in pkg/cmd/taint
302 6
expose.go
in pkg/cmd/expose
300 4
events.go
in pkg/cmd/events
284 15
patch.go
in pkg/cmd/patch
283 7
reconcile.go
in pkg/cmd/auth
282 7
exec.go
in pkg/cmd/exec
282 6
certificates.go
in pkg/cmd/certificates
266 10
set_subject.go
in pkg/cmd/set
261 8
metrics_printer.go
in pkg/metricsutil
256 24
templater.go
in pkg/util/templates
255 21
Files With Most Units (Top 20)
File# lines# units
describe.go
in pkg/describe
4803 228
helpers.go
in pkg/cmd/util
620 57
fake.go
in pkg/cmd/testing
628 55
markdown.go
in pkg/util/templates
108 36
diff.go
in pkg/cmd/diff
604 30
element.go
in pkg/apply
233 27
rollback.go
in pkg/polymorphichelpers
375 26
metrics_printer.go
in pkg/metricsutil
256 24
get.go
in pkg/cmd/get
709 24
editoptions.go
in pkg/cmd/util/editor
717 22
history.go
in pkg/polymorphichelpers
323 22
wait.go
in pkg/cmd/wait
484 21
templater.go
in pkg/util/templates
255 21
debug.go
in pkg/cmd/debug
637 20
openapi.go
in pkg/apply/parse
156 20
zz_generated.deepcopy.go
in pkg/cmd/testing
112 18
filespec.go
in pkg/cmd/cp
91 18
apply.go
in pkg/cmd/apply
557 17
cp.go
in pkg/cmd/cp
443 16
env_resolve.go
in pkg/cmd/set/env
210 16
Files With Long Lines (Top 20)

There are 133 files with lines longer than 120 characters. In total, there are 859 long lines.

File# lines# units# long lines
describe.go
in pkg/describe
4803 228 124
run.go
in pkg/cmd/run
601 16 24
get.go
in pkg/cmd/get
709 24 21
helpers.go
in pkg/cmd/util
620 57 21
debug.go
in pkg/cmd/debug
637 20 21
expose.go
in pkg/cmd/expose
300 4 19
delete_flags.go
in pkg/cmd/delete
200 5 18
fake.go
in pkg/cmd/testing
628 55 17
drain.go
in pkg/cmd/drain
362 11 16
apply.go
in pkg/cmd/apply
557 17 15
clusterinfo_dump.go
in pkg/cmd/clusterinfo
242 4 15
logs.go
in pkg/cmd/logs
349 12 13
create_authinfo.go
in pkg/cmd/config
353 6 13
rollout_status.go
in pkg/polymorphichelpers
112 4 13
proxy.go
in pkg/cmd/proxy
175 5 12
patcher.go
in pkg/cmd/apply
192 6 12
certificates.go
in pkg/cmd/certificates
266 10 11
scale.go
in pkg/scale
150 9 11
rollback.go
in pkg/polymorphichelpers
375 26 11
label.go
in pkg/cmd/label
388 9 10