awslabs / aws-go-multi-module-repository-tools
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 45 files with 4,298 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 4 medium size files (1,177 lines of codeclsfd_ftr_w_mp_ins)
    • 12 small files (1,833 lines of code)
    • 29 very small files (1,288 lines of code)
0% | 0% | 27% | 42% | 29%
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% | 27% | 42% | 29%
toml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
release0% | 0% | 69% | 30% | 0%
internal/semver0% | 0% | 100% | 0% | 0%
gomod0% | 0% | 51% | 23% | 25%
cmd/changelog0% | 0% | 44% | 0% | 55%
cmd/generatechangelog0% | 0% | 0% | 81% | 18%
changelog0% | 0% | 0% | 90% | 9%
cmd/makerelative0% | 0% | 0% | 100% | 0%
cmd/eachmodule0% | 0% | 0% | 72% | 27%
cmd/gomodgen0% | 0% | 0% | 100% | 0%
cmd/updatemodulemeta0% | 0% | 0% | 100% | 0%
git0% | 0% | 0% | 68% | 31%
cmd/annotatestablegen0% | 0% | 0% | 100% | 0%
ROOT0% | 0% | 0% | 0% | 100%
cmd/moduleversion0% | 0% | 0% | 0% | 100%
cmd/calculaterelease0% | 0% | 0% | 0% | 100%
cmd/editmoduledependency0% | 0% | 0% | 0% | 100%
cmd/updaterequires0% | 0% | 0% | 0% | 100%
manifest0% | 0% | 0% | 0% | 100%
cmd/tagrelease0% | 0% | 0% | 0% | 100%
Longest Files (Top 45)
File# lines# units
release.go
in release
391 16
semver.go
in internal/semver
331 23
module_tree.go
in gomod
250 31
create.go
in cmd/changelog
205 4
main.go
in cmd/makerelative
197 11
main.go
in cmd/eachmodule
196 6
main.go
in cmd/gomodgen
187 7
calculate.go
in release
170 3
main.go
in cmd/updatemodulemeta
167 6
summary.go
in cmd/generatechangelog
161 8
annotation.go
in changelog
146 9
main.go
in cmd/generatechangelog
140 7
git.go
in git
120 9
type.go
in changelog
117 8
main.go
in cmd/annotatestablegen
117 3
module.go
in gomod
115 10
main.go
in cmd/moduleversion
95 4
main.go
in cmd/calculaterelease
85 4
main.go
in cmd/editmoduledependency
81 4
main.go
in cmd/updaterequires
77 5
cmd.go
in cmd/eachmodule
74 2
manifest.go
in manifest
73 5
template.go
in cmd/generatechangelog
70 -
version.go
in gomod
64 1
main.go
in cmd/changelog
64 5
main.go
in cmd/tagrelease
61 3
config.go
in root
59 4
diff.go
in gomod
58 4
repo_root.go
in root
52 3
remove.go
in cmd/changelog
47 1
edit.go
in cmd/changelog
38 1
walk.go
in root
37 3
view.go
in cmd/changelog
36 1
diff.go
in git
35 3
editor.go
in cmd/changelog
35 1
list.go
in cmd/changelog
34 1
editor.go
in root
29 1
template.go
in changelog
28 2
uuid.go
in root
18 1
util.go
in root
12 1
add.go
in git
9 1
commit.go
in git
6 1
tag.go
in git
6 1
modman.toml
in root
3 -
go_module_metadata.go
in root
2 -
Files With Most Units (Top 20)
File# lines# units
module_tree.go
in gomod
250 31
semver.go
in internal/semver
331 23
release.go
in release
391 16
main.go
in cmd/makerelative
197 11
module.go
in gomod
115 10
git.go
in git
120 9
annotation.go
in changelog
146 9
type.go
in changelog
117 8
summary.go
in cmd/generatechangelog
161 8
main.go
in cmd/generatechangelog
140 7
main.go
in cmd/gomodgen
187 7
main.go
in cmd/updatemodulemeta
167 6
main.go
in cmd/eachmodule
196 6
manifest.go
in manifest
73 5
main.go
in cmd/updaterequires
77 5
main.go
in cmd/changelog
64 5
diff.go
in gomod
58 4
create.go
in cmd/changelog
205 4
main.go
in cmd/moduleversion
95 4
main.go
in cmd/editmoduledependency
81 4
Files With Long Lines (Top 9)

There are 9 files with lines longer than 120 characters. In total, there are 20 long lines.

File# lines# units# long lines
release.go
in release
391 16 6
create.go
in cmd/changelog
205 4 4
annotation.go
in changelog
146 9 2
main.go
in cmd/generatechangelog
140 7 2
main.go
in cmd/gomodgen
187 7 2
calculate.go
in release
170 3 1
main.go
in cmd/updaterequires
77 5 1
list.go
in cmd/changelog
34 1 1
main.go
in cmd/calculaterelease
85 4 1