microsoft / 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 700 files with 65,090 lines of code.
    • 4 very long files (5,878 lines of code)
    • 13 long files (8,649 lines of code)
    • 64 medium size files (18,171 lines of codeclsfd_ftr_w_mp_ins)
    • 110 small files (15,479 lines of code)
    • 509 very small files (16,913 lines of code)
9% | 13% | 27% | 23% | 25%
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
go9% | 13% | 27% | 23% | 26%
fish0% | 0% | 100% | 0% | 0%
psm10% | 0% | 0% | 100% | 0%
c0% | 0% | 0% | 0% | 100%
nanorc0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
daemon18% | 15% | 23% | 24% | 17%
profiles89% | 0% | 0% | 0% | 10%
integration-cli39% | 0% | 34% | 17% | 8%
pkg0% | 15% | 15% | 24% | 44%
container0% | 47% | 35% | 0% | 17%
distribution0% | 21% | 51% | 16% | 9%
runconfig0% | 50% | 0% | 0% | 49%
registry0% | 37% | 0% | 49% | 13%
builder0% | 19% | 39% | 28% | 12%
layer0% | 34% | 31% | 26% | 7%
api0% | 0% | 33% | 32% | 33%
libcontainerd0% | 0% | 54% | 15% | 30%
image0% | 0% | 64% | 20% | 14%
volume0% | 0% | 40% | 25% | 33%
contrib0% | 0% | 53% | 28% | 18%
migrate0% | 0% | 100% | 0% | 0%
docker0% | 0% | 51% | 0% | 48%
cliconfig0% | 0% | 48% | 29% | 21%
reference0% | 0% | 56% | 43% | 0%
opts0% | 0% | 58% | 30% | 10%
oci0% | 0% | 0% | 90% | 9%
cli0% | 0% | 0% | 66% | 33%
utils0% | 0% | 0% | 0% | 100%
restartmanager0% | 0% | 0% | 0% | 100%
dockerversion0% | 0% | 0% | 0% | 100%
errors0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
deviceset.go
in daemon/graphdriver/devmapper
1933 103
seccomp_default.go
in profiles/seccomp
1645 1
daemon.go
in daemon
1263 69
docker_utils.go
in integration-cli
1037 81
daemon_unix.go
in daemon
916 35
flag.go
in pkg/mflag
815 125
archive.go
in pkg/archive
778 28
container.go
in container
720 40
pull_v2.go
in distribution
657 21
parse.go
in runconfig/opts
655 14
windows.go
in daemon/graphdriver/windows
631 34
devmapper.go
in pkg/devicemapper
620 47
session.go
in registry
609 24
container_operations.go
in daemon
594 17
oci_linux.go
in daemon
591 19
internals.go
in builder/dockerfile
543 14
layer_store.go
in layer
520 25
trust.go
in api/client
440 17
migratev1.go
in migrate/v1
427 11
list.go
in daemon
420 10
graphdb.go
in pkg/graphdb
419 23
aufs.go
in daemon/graphdriver/aufs
417 28
container_routes.go
in api/server/router/container
404 20
daemon.go
in integration-cli
392 20
store.go
in volume/store
388 20
dispatchers.go
in builder/dockerfile
379 19
daemon.go
in docker
366 10
remote_linux.go
in libcontainerd
363 17
fish
docker.fish
in contrib/completion/fish
356 -
client_linux.go
in libcontainerd
354 19
push_v1.go
in distribution
352 14
daemon_windows.go
in daemon
347 30
client_windows.go
in libcontainerd
342 11
overlay.go
in daemon/graphdriver/overlay
332 18
push_v2.go
in distribution
323 11
load.go
in image/tarexport
322 9
container_unix.go
in container
317 18
download.go
in distribution/xfer
314 5
network.go
in api/client
310 13
build.go
in api/client
305 4
changes.go
in pkg/archive
303 16
pull_v1.go
in distribution
302 11
cloudwatchlogs.go
in daemon/logger/awslogs
292 14
container_operations_unix.go
in daemon
291 16
zfs.go
in daemon/graphdriver/zfs
277 19
trust_server.go
in integration-cli
277 18
save.go
in image/tarexport
270 5
copy.go
in pkg/archive
269 15
image_routes.go
in api/server/router/image
266 12
filestore.go
in layer
266 28
Files With Most Units (Top 20)
File# lines# units
flag.go
in pkg/mflag
815 125
deviceset.go
in daemon/graphdriver/devmapper
1933 103
docker_utils.go
in integration-cli
1037 81
daemon.go
in daemon
1263 69
devmapper.go
in pkg/devicemapper
620 47
container.go
in container
720 40
daemon_unix.go
in daemon
916 35
windows.go
in daemon/graphdriver/windows
631 34
daemon_windows.go
in daemon
347 30
aufs.go
in daemon/graphdriver/aufs
417 28
filestore.go
in layer
266 28
archive.go
in pkg/archive
778 28
layer_store.go
in layer
520 25
session.go
in registry
609 24
docker_cli_cp_utils.go
in integration-cli
236 23
opts.go
in opts
201 23
devmapper_wrapper.go
in pkg/devicemapper
182 23
graphdb.go
in pkg/graphdb
419 23
custom.go
in api/client/formatter
207 22
btrfs.go
in daemon/graphdriver/btrfs
251 22
Files With Long Lines (Top 20)

There are 186 files with lines longer than 120 characters. In total, there are 672 long lines.

File# lines# units# long lines
fish
docker.fish
in contrib/completion/fish
356 - 128
daemon_unix.go
in daemon
916 35 23
deviceset.go
in daemon/graphdriver/devmapper
1933 103 23
container_routes.go
in api/server/router/container
404 20 22
trust.go
in api/client
440 17 17
config.go
in daemon
265 9 16
config_unix.go
in daemon
65 1 13
session.go
in registry
609 24 13
daemon.go
in daemon
1263 69 12
image_routes.go
in api/server/router/image
266 12 11
parse.go
in runconfig/opts
655 14 10
pull_v1.go
in distribution
302 11 9
pull_v2.go
in distribution
657 21 9
push_v2.go
in distribution
323 11 9
errors.go
in runconfig
22 - 9
posh-docker.psm1
in contrib/completion/powershell
156 - 8
build.go
in api/client
305 4 7
container_operations.go
in daemon
594 17 7
links.go
in daemon/links
104 4 7
push_v1.go
in distribution
352 14 7