File Size Overall
  • There are 50 files with 8,682 lines of code.
    • 1 very long files (1,151 lines of code)
    • 1 long files (921 lines of code)
    • 13 medium size files (4,037 lines of code)
    • 9 small files (1,282 lines of code)
    • 26 very small files (1,291 lines of code)
13% | 10% | 46% | 14% | 14%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
go14% | 11% | 40% | 16% | 15%
py0% | 0% | 99% | 0% | <1%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
storage51% | 0% | 37% | 8% | 2%
command0% | 19% | 48% | 18% | 13%
benchmark0% | 0% | 99% | 0% | <1%
bench0% | 0% | 100% | 0% | 0%
log0% | 0% | 0% | 40% | 59%
useragent0% | 0% | 0% | 100% | 0%
parallel0% | 0% | 0% | 0% | 100%
orderedwriter0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
progressbar0% | 0% | 0% | 0% | 100%
error0% | 0% | 0% | 0% | 100%
strutil0% | 0% | 0% | 0% | 100%
version0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
s3.go
in storage
1151 42
cp.go
in command
921 24
bench.py
in benchmark
467 26
sync.go
in command
453 10
ant_bench.py
in bench
444 17
select.go
in command
365 6
322 18
url.go
in storage/url
320 28
pipe.go
in command
285 8
ls.go
in command
270 7
app.go
in command
253 4
rm.go
in command
231 4
du.go
in command
219 7
fs.go
in storage
207 16
stat.go
in command
201 6
storage.go
in storage
194 19
183 8
run.go
in command
179 8
flag.go
in command
132 17
cat.go
in command
132 3
128 4
log.go
in log
118 14
presign.go
in command
110 3
useragent.go
in useragent
106 3
mb.go
in command
100 3
88 10
stat.go
in log/stat
85 6
context.go
in command
85 3
orderedwriter.go
in orderedwriter
80 2
error.go
in command
77 3
rb.go
in command
74 2
expand.go
in command
72 2
parallel.go
in parallel
64 8
progressbar.go
in progressbar
58 13
error.go
in error
58 5
strutil.go
in strutil
56 6
validation.go
in command
55 4
53 -
notifier.go
in storage
51 3
wildcard.go
in command
51 3
mv.go
in command
50 1
33 3
fdlimit_unix.go
in parallel/fdlimit
22 1
main.go
in root
21 1
version.go
in command
17 1
global.go
in parallel
13 3
version.go
in version
13 1
dependabot.yml
in .github
12 -
fdlimit_windows.go
in parallel/fdlimit
2 1
__init__.py
in benchmark
1 -
Large Files That Change Often (Top 5)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
File# lines≈ tokens
to read
# changes
(1y)
≈ lines edited
per change
lines read per
line changed
s3.go
in storage
1151 ~7k–20k 2 ~30 ~30
stat.go
in command
201 ~1k–3k 4 ~150 ~2
app.go
in command
253 ~1.5k–5k 3 ~15 ~20
322 ~2k–5k 2 ~100 ~3
main.go
in root
21 under 1k 2 ~50 ~0

Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).

Files With Most Units (Top 47)
File# lines# units
s3.go
in storage
1151 42
url.go
in storage/url
320 28
bench.py
in benchmark
467 26
cp.go
in command
921 24
storage.go
in storage
194 19
322 18
ant_bench.py
in bench
444 17
flag.go
in command
132 17
fs.go
in storage
207 16
log.go
in log
118 14
progressbar.go
in progressbar
58 13
88 10
sync.go
in command
453 10
parallel.go
in parallel
64 8
run.go
in command
179 8
183 8
pipe.go
in command
285 8
du.go
in command
219 7
ls.go
in command
270 7
strutil.go
in strutil
56 6
stat.go
in log/stat
85 6
stat.go
in command
201 6
select.go
in command
365 6
error.go
in error
58 5
rm.go
in command
231 4
128 4
app.go
in command
253 4
validation.go
in command
55 4
global.go
in parallel
13 3
useragent.go
in useragent
106 3
notifier.go
in storage
51 3
33 3
error.go
in command
77 3
cat.go
in command
132 3
presign.go
in command
110 3
context.go
in command
85 3
wildcard.go
in command
51 3
mb.go
in command
100 3
orderedwriter.go
in orderedwriter
80 2
rb.go
in command
74 2
expand.go
in command
72 2
fdlimit_unix.go
in parallel/fdlimit
22 1
fdlimit_windows.go
in parallel/fdlimit
2 1
version.go
in version
13 1
version.go
in command
17 1
mv.go
in command
50 1
main.go
in root
21 1
Files With Long Lines (Top 12)

There are 12 files with lines longer than 120 characters. In total, there are 47 long lines.

File# lines# units# long lines
cp.go
in command
921 24 14
pipe.go
in command
285 8 8
s3.go
in storage
1151 42 4
sync.go
in command
453 10 4
183 8 4
app.go
in command
253 4 4
select.go
in command
365 6 4
progressbar.go
in progressbar
58 13 1
53 - 1
context.go
in command
85 3 1
wildcard.go
in command
51 3 1
validation.go
in command
55 4 1
Correlations

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

storage/s3.go x: 115 commits (all time) y: 1151 lines of code storage/token_manager.go x: 5 commits (all time) y: 322 lines of code command/app.go x: 48 commits (all time) y: 253 lines of code command/stat.go x: 4 commits (all time) y: 201 lines of code main.go x: 19 commits (all time) y: 21 lines of code storage/notifier.go x: 1 commits (all time) y: 51 lines of code bench/ant_bench.py x: 3 commits (all time) y: 444 lines of code storage/storage.go x: 55 commits (all time) y: 194 lines of code log/log.go x: 9 commits (all time) y: 118 lines of code log/message.go x: 11 commits (all time) y: 88 lines of code useragent/useragent.go x: 1 commits (all time) y: 106 lines of code command/cp.go x: 58 commits (all time) y: 921 lines of code command/pipe.go x: 9 commits (all time) y: 285 lines of code .goreleaser.yml x: 21 commits (all time) y: 53 lines of code benchmark/bench.py x: 3 commits (all time) y: 467 lines of code storage/url/url.go x: 26 commits (all time) y: 320 lines of code .github/dependabot.yml x: 3 commits (all time) y: 12 lines of code command/auto_complete.go x: 3 commits (all time) y: 183 lines of code command/bucket_version.go x: 3 commits (all time) y: 128 lines of code command/cat.go x: 17 commits (all time) y: 132 lines of code command/context.go x: 4 commits (all time) y: 85 lines of code command/du.go x: 17 commits (all time) y: 219 lines of code command/error.go x: 8 commits (all time) y: 77 lines of code command/expand.go x: 12 commits (all time) y: 72 lines of code command/flag.go x: 4 commits (all time) y: 132 lines of code command/ls.go x: 23 commits (all time) y: 270 lines of code command/mb.go x: 13 commits (all time) y: 100 lines of code command/mv.go x: 20 commits (all time) y: 50 lines of code command/presign.go x: 3 commits (all time) y: 110 lines of code command/rb.go x: 7 commits (all time) y: 74 lines of code command/rm.go x: 22 commits (all time) y: 231 lines of code command/run.go x: 17 commits (all time) y: 179 lines of code command/select.go x: 17 commits (all time) y: 365 lines of code command/sync.go x: 13 commits (all time) y: 453 lines of code command/sync_strategy.go x: 5 commits (all time) y: 33 lines of code command/validation.go x: 3 commits (all time) y: 55 lines of code command/version.go x: 5 commits (all time) y: 17 lines of code command/wildcard.go x: 2 commits (all time) y: 51 lines of code error/error.go x: 9 commits (all time) y: 58 lines of code log/stat/stat.go x: 3 commits (all time) y: 85 lines of code orderedwriter/orderedwriter.go x: 2 commits (all time) y: 80 lines of code parallel/global.go x: 5 commits (all time) y: 13 lines of code progressbar/progressbar.go x: 2 commits (all time) y: 58 lines of code storage/fs.go x: 29 commits (all time) y: 207 lines of code strutil/strutil.go x: 4 commits (all time) y: 56 lines of code benchmark/__init__.py x: 1 commits (all time) y: 1 lines of code parallel/fdlimit/fdlimit_unix.go x: 2 commits (all time) y: 22 lines of code parallel/fdlimit/fdlimit_windows.go x: 2 commits (all time) y: 2 lines of code parallel/parallel.go x: 4 commits (all time) y: 64 lines of code version/version.go x: 18 commits (all time) y: 13 lines of code
1151.0
lines of code
  min: 1.0
  average: 173.64
  25th percentile: 52.5
  median: 94.0
  75th percentile: 222.0
  max: 1151.0
0 115.0
commits (all time)
min: 1.0 | average: 13.8 | 25th percentile: 3.0 | median: 6.0 | 75th percentile: 17.25 | max: 115.0

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

storage/s3.go x: 33 contributors (all time) y: 1151 lines of code storage/token_manager.go x: 3 contributors (all time) y: 322 lines of code command/app.go x: 23 contributors (all time) y: 253 lines of code command/stat.go x: 2 contributors (all time) y: 201 lines of code main.go x: 7 contributors (all time) y: 21 lines of code storage/notifier.go x: 1 contributors (all time) y: 51 lines of code bench/ant_bench.py x: 3 contributors (all time) y: 444 lines of code storage/storage.go x: 19 contributors (all time) y: 194 lines of code log/log.go x: 5 contributors (all time) y: 118 lines of code log/message.go x: 7 contributors (all time) y: 88 lines of code useragent/useragent.go x: 1 contributors (all time) y: 106 lines of code command/cp.go x: 19 contributors (all time) y: 921 lines of code command/pipe.go x: 7 contributors (all time) y: 285 lines of code .goreleaser.yml x: 12 contributors (all time) y: 53 lines of code benchmark/bench.py x: 2 contributors (all time) y: 467 lines of code storage/url/url.go x: 14 contributors (all time) y: 320 lines of code .github/dependabot.yml x: 3 contributors (all time) y: 12 lines of code command/auto_complete.go x: 3 contributors (all time) y: 183 lines of code command/bucket_version.go x: 3 contributors (all time) y: 128 lines of code command/cat.go x: 10 contributors (all time) y: 132 lines of code command/context.go x: 4 contributors (all time) y: 85 lines of code command/du.go x: 9 contributors (all time) y: 219 lines of code command/error.go x: 5 contributors (all time) y: 77 lines of code command/expand.go x: 9 contributors (all time) y: 72 lines of code command/flag.go x: 4 contributors (all time) y: 132 lines of code command/ls.go x: 11 contributors (all time) y: 270 lines of code command/mb.go x: 7 contributors (all time) y: 100 lines of code command/mv.go x: 8 contributors (all time) y: 50 lines of code command/presign.go x: 3 contributors (all time) y: 110 lines of code command/rb.go x: 6 contributors (all time) y: 74 lines of code command/rm.go x: 9 contributors (all time) y: 231 lines of code command/run.go x: 9 contributors (all time) y: 179 lines of code command/select.go x: 10 contributors (all time) y: 365 lines of code command/sync.go x: 9 contributors (all time) y: 453 lines of code command/sync_strategy.go x: 5 contributors (all time) y: 33 lines of code command/validation.go x: 3 contributors (all time) y: 55 lines of code command/version.go x: 3 contributors (all time) y: 17 lines of code command/wildcard.go x: 2 contributors (all time) y: 51 lines of code error/error.go x: 5 contributors (all time) y: 58 lines of code log/stat/stat.go x: 3 contributors (all time) y: 85 lines of code orderedwriter/orderedwriter.go x: 2 contributors (all time) y: 80 lines of code parallel/global.go x: 4 contributors (all time) y: 13 lines of code progressbar/progressbar.go x: 2 contributors (all time) y: 58 lines of code storage/fs.go x: 10 contributors (all time) y: 207 lines of code benchmark/__init__.py x: 1 contributors (all time) y: 1 lines of code parallel/fdlimit/fdlimit_unix.go x: 2 contributors (all time) y: 22 lines of code parallel/fdlimit/fdlimit_windows.go x: 2 contributors (all time) y: 2 lines of code parallel/parallel.go x: 3 contributors (all time) y: 64 lines of code
1151.0
lines of code
  min: 1.0
  average: 173.64
  25th percentile: 52.5
  median: 94.0
  75th percentile: 222.0
  max: 1151.0
0 33.0
contributors (all time)
min: 1.0 | average: 6.66 | 25th percentile: 3.0 | median: 4.5 | 75th percentile: 9.0 | max: 33.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): 0 points

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

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

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

About This Analysis
  • 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...