bazelbuild / rules_docker
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 119 files with 12,063 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (889 lines of code)
    • 15 medium size files (4,503 lines of codeclsfd_ftr_w_mp_ins)
    • 24 small files (3,493 lines of code)
    • 79 very small files (3,178 lines of code)
0% | 7% | 37% | 28% | 26%
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
bzl0% | 11% | 37% | 27% | 23%
go0% | 0% | 28% | 37% | 33%
py0% | 0% | 60% | 32% | 7%
tpl0% | 0% | 34% | 0% | 65%
yaml0% | 0% | 0% | 85% | 14%
java0% | 0% | 0% | 0% | 100%
yml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
container0% | 15% | 46% | 22% | 15%
docker0% | 0% | 45% | 38% | 16%
java0% | 0% | 88% | 0% | 11%
lang0% | 0% | 100% | 0% | 0%
toolchains0% | 0% | 86% | 0% | 13%
contrib0% | 0% | 0% | 43% | 56%
repositories0% | 0% | 0% | 51% | 48%
nodejs0% | 0% | 0% | 86% | 13%
skylib0% | 0% | 0% | 38% | 61%
go0% | 0% | 0% | 71% | 28%
python0% | 0% | 0% | 82% | 17%
python30% | 0% | 0% | 82% | 17%
cc0% | 0% | 0% | 0% | 100%
testing0% | 0% | 0% | 0% | 100%
groovy0% | 0% | 0% | 0% | 100%
kotlin0% | 0% | 0% | 0% | 100%
scala0% | 0% | 0% | 0% | 100%
rust0% | 0% | 0% | 0% | 100%
d0% | 0% | 0% | 0% | 100%
oci0% | 0% | 0% | 0% | 100%
stamp0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
image.bzl
in container
889 -
run.bzl
in docker/util
446 -
config.go
in container/go/pkg/compat
403 21
image.bzl
in java
386 -
layer.bzl
in container
361 -
toolchain_container.bzl
in docker/toolchain_container
338 -
build_tar.py
in container
330 17
image.bzl
in lang
297 -
layer_tools.bzl
in container
285 -
archive.py
in container
280 13
pull.bzl
in container
252 -
tpl
incremental_load.sh.tpl
in container
236 -
toolchain.bzl
in toolchains/docker
235 -
reader.go
in container/go/pkg/compat
231 16
push.bzl
in container
216 -
install_pkgs.bzl
in docker/package_managers
207 -
download_pkgs.bzl
in docker/package_managers
195 -
image.go
in container/go/pkg/compat
193 22
import.bzl
in container
184 -
security_check.py
in docker/security
182 13
repositories.bzl
in repositories
181 -
debian_pkg_tar.bzl
in docker/toolchain_container
173 -
pusher.go
in container/go/cmd/pusher
170 5
test.bzl
in contrib
170 -
image.bzl
in nodejs
160 -
apt_key.bzl
in docker/package_managers
151 -
config_stripper.py
in docker/util
148 4
passwd.bzl
in contrib
143 -
push-all.bzl
in contrib
140 -
image.go
in container/go/pkg/oci
139 11
bundle.bzl
in container
137 -
zip.bzl
in skylib
124 -
image.bzl
in go
120 -
join_layers.go
in container/go/cmd/join_layers
119 4
image.bzl
in python
116 -
cloudbuild.yaml
in container/go
113 -
dockerfile_build.bzl
in contrib
113 -
image.bzl
in python3
112 -
puller.go
in container/go/cmd/puller
109 3
create_image_config.go
in container/go/cmd/create_image_config
101 1
write.go
in container/go/pkg/compat
97 5
security_check.bzl
in docker/security
94 -
image.bzl
in groovy
91 -
image.bzl
in cc
91 -
image.bzl
in kotlin
90 -
update_deps.go
in container/go/cmd/update_deps
86 1
image.bzl
in scala
85 -
providers.bzl
in container
85 -
metadata_merge.go
in contrib/go/cmd/metadata_merge
84 5
load.bzl
in container
80 -
Files With Most Units (Top 20)
File# lines# units
image.go
in container/go/pkg/compat
193 22
config.go
in container/go/pkg/compat
403 21
build_tar.py
in container
330 17
reader.go
in container/go/pkg/compat
231 16
archive.py
in container
280 13
security_check.py
in docker/security
182 13
image.go
in container/go/pkg/oci
139 11
pusher.go
in container/go/cmd/pusher
170 5
write.go
in container/go/pkg/compat
97 5
metadata_merge.go
in contrib/go/cmd/metadata_merge
84 5
join_layers.go
in container/go/cmd/join_layers
119 4
config_stripper.py
in docker/util
148 4
puller.go
in container/go/cmd/puller
109 3
utils.go
in container/go/pkg/utils
15 3
loader.go
in container/go/cmd/loader
36 2
packages_metadata.go
in contrib/go/cmd/packages_metadata
77 2
zipper.go
in container/go/cmd/zipper
65 1
create_image_config.go
in container/go/cmd/create_image_config
101 1
update_deps.go
in container/go/cmd/update_deps
86 1
digester.go
in container/go/cmd/digester
49 1
Files With Long Lines (Top 20)

There are 24 files with lines longer than 120 characters. In total, there are 86 long lines.

File# lines# units# long lines
repositories.bzl
in repositories
181 - 14
join_layers.go
in container/go/cmd/join_layers
119 4 10
puller.go
in container/go/cmd/puller
109 3 9
pusher.go
in container/go/cmd/pusher
170 5 9
create_image_config.go
in container/go/cmd/create_image_config
101 1 5
digester.go
in container/go/cmd/digester
49 1 4
config.go
in container/go/pkg/compat
403 21 4
download_pkgs.bzl
in docker/package_managers
195 - 4
image.bzl
in nodejs
160 - 4
extract_config.go
in container/go/cmd/extract_config
42 1 3
reader.go
in container/go/pkg/compat
231 16 3
pull.bzl
in container
252 - 2
flattener.go
in container/go/cmd/flattener
55 1 2
install_pkgs.bzl
in docker/package_managers
207 - 2
packages_metadata.go
in contrib/go/cmd/packages_metadata
77 2 2
build_tar.py
in container
330 17 1
push.bzl
in container
216 - 1
toolchain_container.bzl
in docker/toolchain_container
338 - 1
image.bzl
in python
116 - 1
image.bzl
in python3
112 - 1