bazelbuild / examples
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 73 files with 1,605 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 0 medium size files (0 lines of codeclsfd_ftr_w_mp_ins)
    • 0 small files (0 lines of code)
    • 73 very small files (1,605 lines of code)
0% | 0% | 0% | 0% | 100%
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% | 0% | 0% | 0% | 100%
java0% | 0% | 0% | 0% | 100%
cc0% | 0% | 0% | 0% | 100%
m0% | 0% | 0% | 0% | 100%
h0% | 0% | 0% | 0% | 100%
cpp0% | 0% | 0% | 0% | 100%
py0% | 0% | 0% | 0% | 100%
html0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
rules/starlark_configurations0% | 0% | 0% | 0% | 100%
rules/runfiles0% | 0% | 0% | 0% | 100%
tutorial/android0% | 0% | 0% | 0% | 100%
rules/shell_command0% | 0% | 0% | 0% | 100%
rules/depsets0% | 0% | 0% | 0% | 100%
rules/aspect0% | 0% | 0% | 0% | 100%
rules/predeclared_outputs0% | 0% | 0% | 0% | 100%
rules/computed_dependencies0% | 0% | 0% | 0% | 100%
tutorial/ios-app0% | 0% | 0% | 0% | 100%
rules/executable0% | 0% | 0% | 0% | 100%
android/firebase-cloud-messaging0% | 0% | 0% | 0% | 100%
rules/implicit_output0% | 0% | 0% | 0% | 100%
cpp-tutorial/stage30% | 0% | 0% | 0% | 100%
rules/expand_template0% | 0% | 0% | 0% | 100%
rules/actions_run0% | 0% | 0% | 0% | 100%
android/ndk0% | 0% | 0% | 0% | 100%
cpp-tutorial/stage20% | 0% | 0% | 0% | 100%
rules/mandatory_provider0% | 0% | 0% | 0% | 100%
rules/optional_provider0% | 0% | 0% | 0% | 100%
android/tutorial0% | 0% | 0% | 0% | 100%
rules/attributes0% | 0% | 0% | 0% | 100%
java-tutorial/src0% | 0% | 0% | 0% | 100%
cpp-tutorial/stage10% | 0% | 0% | 0% | 100%
third-party-dependencies0% | 0% | 0% | 0% | 100%
make-variables/testapp0% | 0% | 0% | 0% | 100%
rules/actions_write0% | 0% | 0% | 0% | 100%
tutorial/backend0% | 0% | 0% | 0% | 100%
java-maven/src0% | 0% | 0% | 0% | 100%
flags-parsing-tutorial0% | 0% | 0% | 0% | 100%
rules/empty0% | 0% | 0% | 0% | 100%
rules/features0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
MainActivity.java
in tutorial/android/src/main/java/com/google/bazel/example/android/activities
93 3
defs.bzl
in rules/starlark_configurations/cc_binary_selectable_copts
85 -
complex_tool.bzl
in rules/runfiles
82 -
rules.bzl
in rules/shell_command
75 -
tool.bzl
in rules/runfiles
74 -
defs.bzl
in rules/starlark_configurations/attaching_transitions_to_rules
65 -
hash.bzl
in rules/predeclared_outputs
59 -
hash.bzl
in rules/computed_dependencies
54 -
foo.bzl
in rules/depsets
54 -
library.bzl
in rules/runfiles
51 -
file_collector.bzl
in rules/aspect
50 -
defs.bzl
in rules/starlark_configurations/multi_arch_binary
50 -
fortune.bzl
in rules/executable
45 -
defs.bzl
in rules/starlark_configurations/basic_build_setting
42 -
defs.bzl
in rules/starlark_configurations/cc_test
40 -
defs.bzl
in rules/starlark_configurations/transition_on_native_flag
39 -
hash.bzl
in rules/implicit_output
38 -
hello.bzl
in rules/expand_template
30 -
execute.bzl
in rules/actions_run
30 -
execute.bzl
in rules/runfiles
28 -
defs.bzl
in rules/starlark_configurations/read_attr_in_transition
27 -
sum.bzl
in rules/mandatory_provider
25 -
sum.bzl
in rules/optional_provider
25 -
AppDelegate.m
in tutorial/ios-app/UrlGet
20 -
printer.bzl
in rules/attributes
20 -
hello-world.cc
in cpp-tutorial/stage1/main
19 3
MyFirebaseMessagingService.java
in android/firebase-cloud-messaging/app/src/main/java/com/example/myapplication
19 1
defs.bzl
in rules/starlark_configurations/label_typed_build_setting
18 -
MainActivity.java
in android/tutorial/src/main/java/com/example/bazel
18 1
hello-world.cc
in cpp-tutorial/stage2/main
17 2
MainActivity.java
in android/ndk/app/src/main/java/com/example/android/bazel
17 2
defs.bzl
in rules/starlark_configurations/use_skylib_build_setting
15 -
file.bzl
in rules/actions_write
14 -
defs.bzl
in rules/starlark_configurations/select_on_build_setting
14 -
hello-world.cc
in cpp-tutorial/stage3/main
13 1
MainActivity.java
in android/firebase-cloud-messaging/app/src/main/java/com/example/myapplication
13 1
MyAppServlet.java
in tutorial/backend/src/main/java/com/google/bazel/example/app
12 1
lib.cc
in rules/starlark_configurations/cc_binary_selectable_copts
12 1
UrlGetViewController.m
in tutorial/ios-app/UrlGet
11 -
App.java
in java-maven/src/main/java/com/example/myproject
11 2
build_defs.bzl
in flags-parsing-tutorial
11 -
native-lib.cpp
in android/ndk/app/src/main/cpp
11 -
MyFirebaseInstanceIdService.java
in android/firebase-cloud-messaging/app/src/main/java/com/example/myapplication
11 1
defs.bzl
in make-variables/testapp
10 -
main.m
in tutorial/ios-app/UrlGet
7 1
my_lib.cpp
in third-party-dependencies
7 1
Runner.java
in java-tutorial/src/main/java/com/example/cmdline
7 1
hello-time.cc
in cpp-tutorial/stage3/lib
7 1
foocc.py
in rules/depsets
7 -
UrlGetViewController.h
in tutorial/ios-app/UrlGet
6 -
Files With Most Units (Top 20)
File# lines# units
MainActivity.java
in tutorial/android/src/main/java/com/google/bazel/example/android/activities
93 3
hello-world.cc
in cpp-tutorial/stage1/main
19 3
App.java
in java-maven/src/main/java/com/example/myproject
11 2
hello-world.cc
in cpp-tutorial/stage2/main
17 2
MainActivity.java
in android/ndk/app/src/main/java/com/example/android/bazel
17 2
MyAppServlet.java
in tutorial/backend/src/main/java/com/google/bazel/example/app
12 1
main.m
in tutorial/ios-app/UrlGet
7 1
hello_world.cpp
in third-party-dependencies
6 1
my_lib.cpp
in third-party-dependencies
7 1
Runner.java
in java-tutorial/src/main/java/com/example/cmdline
7 1
Greeting.java
in java-tutorial/src/main/java/com/example
6 1
ProjectRunner.java
in java-tutorial/src/main/java/com/example
6 1
hello-greet.cc
in cpp-tutorial/stage2/main
5 1
hello-time.cc
in cpp-tutorial/stage3/lib
7 1
hello-world.cc
in cpp-tutorial/stage3/main
13 1
hello-greet.cc
in cpp-tutorial/stage3/main
5 1
app.cc
in rules/aspect
5 1
lib.cc
in rules/aspect
3 1
hello.cc
in rules/expand_template
4 1
mytest.cc
in rules/starlark_configurations/cc_test
3 1
Files With Long Lines (Top 2)

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

File# lines# units# long lines
complex_tool.bzl
in rules/runfiles
82 - 1
defs.bzl
in rules/starlark_configurations/attaching_transitions_to_rules
65 - 1