bazelbuild / continuous-integration
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 201 files with 19,545 lines of code.
    • 3 very long files (5,621 lines of code)
    • 0 long files (0 lines of code)
    • 16 medium size files (4,443 lines of codeclsfd_ftr_w_mp_ins)
    • 32 small files (4,297 lines of code)
    • 150 very small files (5,184 lines of code)
28% | 0% | 22% | 21% | 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
py47% | 0% | 27% | 18% | 7%
tf81% | 0% | 9% | 8% | 0%
tsx68% | 0% | 0% | 10% | 21%
go0% | 0% | 20% | 34% | 44%
java0% | 0% | 17% | 33% | 48%
yml0% | 0% | 45% | 11% | 42%
rs0% | 0% | 84% | 0% | 15%
ps10% | 0% | 65% | 34% | 0%
ts0% | 0% | 0% | 54% | 45%
tpl0% | 0% | 0% | 0% | 100%
bzl0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
css0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
cfg0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
buildkite53% | 0% | 22% | 15% | 8%
dashboard19% | 0% | 11% | 27% | 41%
pipelines0% | 0% | 58% | 0% | 41%
agent0% | 0% | 80% | 0% | 19%
pipegen0% | 0% | 44% | 27% | 27%
metrics0% | 0% | 8% | 39% | 52%
pipestats0% | 0% | 100% | 0% | 0%
buildifier0% | 0% | 100% | 0% | 0%
rbe-configs0% | 0% | 0% | 100% | 0%
docgen0% | 0% | 0% | 100% | 0%
rules0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
bazelci.py
in buildkite
2762 130
main.tf
in buildkite/terraform/bazel
1707 -
GithubIssueList.tsx
in dashboard/client/src
1152 26
upload.rs
in agent/src/artifact
461 16
bazel_auto_sheriff.py
in buildkite
421 30
bazel-release.yml
in pipelines
395 -
NotificationTask.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/notification
394 19
bazel_bench.py
in buildkite/bazel-bench
289 10
setup-windows.ps1
in buildkite
274 -
aggregate_incompatible_flags_test_result.py
in buildkite
264 20
PollGithubEventsTask.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/sync/event
260 7
config.go
in pipegen/config
251 12
cloud_build_status.go
in metrics/metrics
213 15
culprit_finder.py
in buildkite
206 10
main.go
in pipestats
205 8
buildifier.py
in buildifier
203 12
main.tf
in buildkite/terraform/bazel-trusted
203 -
bcr_presubmit.py
in buildkite/bazel-central-registry
203 19
bazel-custom-release.yml
in pipelines
201 -
main.tf
in buildkite/terraform/bazel-testing
185 -
create_images.py
in buildkite
182 8
RepoDashboard.tsx
in dashboard/client/src
172 4
GithubIssueStatusService.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuestatus
172 10
GithubIssueListRepoPg.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuelist
162 5
generate.py
in rbe-configs
159 11
migrate.py
in buildkite/terraform
155 7
graphql_client.go
in pipegen/proxy
155 3
bazel-release-arm64.yml
in buildkite/terraform/bazel-trusted
153 -
WebClientGithubApi.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/api
148 8
startup-windows-pdssd.ps1
in buildkite
146 -
buildkite.go
in metrics/clients
142 7
GithubSyncIssueTask.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/sync/issue
136 8
GithubIssueService.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issue
131 4
common.go
in metrics/metrics
129 8
platform_load.go
in metrics/metrics
127 9
docgen.py
in docgen
125 5
GithubIssueList.ts
in dashboard/client/src/data
125 3
bcr_postsubmit.py
in buildkite/bazel-central-registry
125 15
main.go
in metrics
124 5
GithubTeamTableService.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/teamtable
124 5
platform_significance.go
in metrics/metrics
122 6
cloudsql.go
in metrics/publishers
121 8
cloudsql_gc.go
in metrics/publishers
115 11
GithubIssueQueryExecutorPg.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuequery
114 5
gcloud.py
in buildkite
112 16
create_instances.py
in buildkite
110 3
GithubIssueRepoPg.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issue
109 6
flakiness.go
in metrics/metrics
107 6
GithubIssueQueryCountTaskRestController.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuequery/task
105 2
GithubIssueQueryParser.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuequery
103 3
Files With Most Units (Top 20)
File# lines# units
bazelci.py
in buildkite
2762 130
bazel_auto_sheriff.py
in buildkite
421 30
GithubIssueList.tsx
in dashboard/client/src
1152 26
aggregate_incompatible_flags_test_result.py
in buildkite
264 20
NotificationTask.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/notification
394 19
bcr_presubmit.py
in buildkite/bazel-central-registry
203 19
upload.rs
in agent/src/artifact
461 16
gcloud.py
in buildkite
112 16
cloud_build_status.go
in metrics/metrics
213 15
bcr_postsubmit.py
in buildkite/bazel-central-registry
125 15
buildifier.py
in buildifier
203 12
config.go
in pipegen/config
251 12
cloudsql_gc.go
in metrics/publishers
115 11
generate.py
in rbe-configs
159 11
service.go
in metrics/service
92 10
GithubIssueStatusService.java
in dashboard/server/src/main/java/build/bazel/dashboard/github/issuestatus
172 10
culprit_finder.py
in buildkite
206 10
bazel_bench.py
in buildkite/bazel-bench
289 10
platform_load.go
in metrics/metrics
127 9
zombie_instances.go
in metrics/metrics
87 8
Files With Long Lines (Top 20)

There are 58 files with lines longer than 120 characters. In total, there are 401 long lines.

File# lines# units# long lines
main.tf
in buildkite/terraform/bazel
1707 - 157
bazelci.py
in buildkite
2762 130 33
main.tf
in buildkite/terraform/bazel-testing
185 - 25
bazel_auto_sheriff.py
in buildkite
421 30 17
main.tf
in buildkite/terraform/bazel-trusted
203 - 16
continuous-integration.yml
in pipelines
66 - 12
setup-windows.ps1
in buildkite
274 - 11
GithubIssueList.tsx
in dashboard/client/src
1152 26 9
flakiness.go
in metrics/metrics
107 6 8
cloudsql_gc.go
in metrics/publishers
115 11 7
aggregated_pipeline_performance.go
in metrics/metrics
48 6 5
main.go
in metrics
124 5 5
bazel-release.yml
in pipelines
395 - 5
bcr_presubmit.py
in buildkite/bazel-central-registry
203 19 5
zombie_instances.go
in metrics/metrics
87 8 4
mac_performance.go
in metrics/metrics
51 4 4
critical_path.go
in metrics/metrics
60 6 4
startup-windows-pdssd.ps1
in buildkite
146 - 4
daily_performance.go
in metrics/metrics
78 8 3
pipeline_performance.go
in metrics/metrics
79 7 3