novifinancial / librabft_simulator
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 49 files with 4,719 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (759 lines of code)
    • 3 medium size files (855 lines of codeclsfd_ftr_w_mp_ins)
    • 13 small files (1,953 lines of code)
    • 32 very small files (1,152 lines of code)
0% | 16% | 18% | 41% | 24%
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
rs0% | 16% | 19% | 43% | 20%
toml0% | 0% | 0% | 0% | 100%
py0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
librabft-v2/src0% | 47% | 0% | 43% | 9%
bft-lib/src0% | 0% | 63% | 12% | 24%
crypto/src0% | 0% | 100% | 0% | 0%
node/src0% | 0% | 0% | 85% | 14%
bft-driver/src0% | 0% | 0% | 63% | 36%
network/src0% | 0% | 0% | 87% | 12%
mempool/src0% | 0% | 0% | 38% | 61%
store/src0% | 0% | 0% | 0% | 100%
node0% | 0% | 0% | 0% | 100%
librabft-v20% | 0% | 0% | 0% | 100%
bft-driver0% | 0% | 0% | 0% | 100%
bft-lib0% | 0% | 0% | 0% | 100%
mempool0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
network0% | 0% | 0% | 0% | 100%
crypto0% | 0% | 0% | 0% | 100%
store0% | 0% | 0% | 0% | 100%
Longest Files (Top 49)
File# lines# units
record_store.rs
in librabft-v2/src
759 33
simulator.rs
in bft-lib/src
413 15
simulated_context.rs
in bft-lib/src
237 20
lib.rs
in crypto/src
205 13
data_sync.rs
in librabft-v2/src
192 6
node.rs
in librabft-v2/src
190 5
reliable_sender.rs
in network/src
190 3
core.rs
in bft-driver/src
178 1
context.rs
in bft-driver/src
166 20
main.rs
in librabft-v2/src
162 2
pacemaker.rs
in librabft-v2/src
159 7
main.rs
in node/src
141 1
client.rs
in node/src
137 -
smr_context.rs
in bft-lib/src
126 11
simple_sender.rs
in network/src
108 3
batch_maker.rs
in mempool/src
102 -
node.rs
in node/src
102 -
record.rs
in librabft-v2/src
97 5
consensus.rs
in bft-driver/src
91 -
data_writer.rs
in bft-lib/src
84 -
lib.rs
in store/src
84 -
config.rs
in bft-driver/src
73 1
mempool.rs
in mempool/src
66 -
config.rs
in mempool/src
65 1
config.rs
in node/src
64 3
interfaces.rs
in bft-lib/src
50 2
util.rs
in librabft-v2/src
48 -
round_plotter.py
in bft-lib/src/visualization/round_switch
44 2
configuration.rs
in bft-lib/src
34 -
Cargo.toml
in node
32 -
base_types.rs
in bft-lib/src
30 -
Cargo.toml
in librabft-v2
29 -
Cargo.toml
in bft-driver
28 -
processor.rs
in mempool/src
26 -
Cargo.toml
in bft-lib
25 -
timer.rs
in bft-driver/src
24 -
Cargo.toml
in mempool
23 -
error.rs
in network/src
18 -
Cargo.toml
in network
17 -
receiver.rs
in network/src
16 -
Cargo.toml
in root
15 -
Cargo.toml
in crypto
12 -
lib.rs
in network/src
10 -
lib.rs
in bft-lib/src
10 -
lib.rs
in mempool/src
9 -
Cargo.toml
in store
9 -
lib.rs
in bft-driver/src
8 -
lib.rs
in librabft-v2/src
6 -
5 -
Files With Most Units (Top 20)
File# lines# units
record_store.rs
in librabft-v2/src
759 33
context.rs
in bft-driver/src
166 20
simulated_context.rs
in bft-lib/src
237 20
simulator.rs
in bft-lib/src
413 15
lib.rs
in crypto/src
205 13
smr_context.rs
in bft-lib/src
126 11
pacemaker.rs
in librabft-v2/src
159 7
data_sync.rs
in librabft-v2/src
192 6
node.rs
in librabft-v2/src
190 5
record.rs
in librabft-v2/src
97 5
reliable_sender.rs
in network/src
190 3
simple_sender.rs
in network/src
108 3
config.rs
in node/src
64 3
main.rs
in librabft-v2/src
162 2
round_plotter.py
in bft-lib/src/visualization/round_switch
44 2
interfaces.rs
in bft-lib/src
50 2
core.rs
in bft-driver/src
178 1
config.rs
in bft-driver/src
73 1
config.rs
in mempool/src
65 1
main.rs
in node/src
141 1
Files With Long Lines (Top 1)

There is only one file with lines longer than 120 characters. In total, there are 2 long lines.

File# lines# units# long lines
record_store.rs
in librabft-v2/src
759 33 2
Correlations

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

bft-lib/src/base_types.rs x: 13 commits (all time) y: 30 lines of code bft-lib/src/configuration.rs x: 9 commits (all time) y: 34 lines of code bft-lib/src/data_writer.rs x: 5 commits (all time) y: 84 lines of code bft-lib/src/interfaces.rs x: 9 commits (all time) y: 50 lines of code bft-lib/src/lib.rs x: 7 commits (all time) y: 10 lines of code bft-lib/src/simulated_context.rs x: 19 commits (all time) y: 237 lines of code bft-lib/src/simulator.rs x: 14 commits (all time) y: 413 lines of code bft-lib/src/smr_context.rs x: 22 commits (all time) y: 126 lines of code bft-lib/src/visualization/round_switch/round_plotter.py x: 2 commits (all time) y: 44 lines of code librabft-v2/src/data_sync.rs x: 21 commits (all time) y: 192 lines of code librabft-v2/src/lib.rs x: 6 commits (all time) y: 6 lines of code librabft-v2/src/main.rs x: 16 commits (all time) y: 162 lines of code librabft-v2/src/node.rs x: 29 commits (all time) y: 190 lines of code librabft-v2/src/pacemaker.rs x: 10 commits (all time) y: 159 lines of code librabft-v2/src/record.rs x: 13 commits (all time) y: 97 lines of code librabft-v2/src/record_store.rs x: 16 commits (all time) y: 759 lines of code librabft-v2/src/util.rs x: 3 commits (all time) y: 48 lines of code mempool/src/batch_maker.rs x: 4 commits (all time) y: 102 lines of code mempool/src/lib.rs x: 6 commits (all time) y: 9 lines of code mempool/src/processor.rs x: 3 commits (all time) y: 26 lines of code network/src/error.rs x: 3 commits (all time) y: 18 lines of code network/src/lib.rs x: 4 commits (all time) y: 10 lines of code network/src/receiver.rs x: 3 commits (all time) y: 16 lines of code network/src/reliable_sender.rs x: 3 commits (all time) y: 190 lines of code network/src/simple_sender.rs x: 3 commits (all time) y: 108 lines of code Cargo.toml x: 6 commits (all time) y: 15 lines of code bft-driver/Cargo.toml x: 2 commits (all time) y: 28 lines of code bft-driver/src/config.rs x: 2 commits (all time) y: 73 lines of code bft-driver/src/consensus.rs x: 2 commits (all time) y: 91 lines of code bft-driver/src/context.rs x: 2 commits (all time) y: 166 lines of code bft-driver/src/core.rs x: 2 commits (all time) y: 178 lines of code bft-driver/src/lib.rs x: 2 commits (all time) y: 8 lines of code bft-driver/src/timer.rs x: 2 commits (all time) y: 24 lines of code crypto/Cargo.toml x: 2 commits (all time) y: 12 lines of code crypto/src/lib.rs x: 4 commits (all time) y: 205 lines of code mempool/Cargo.toml x: 3 commits (all time) y: 23 lines of code mempool/src/config.rs x: 3 commits (all time) y: 65 lines of code mempool/src/mempool.rs x: 7 commits (all time) y: 66 lines of code node/Cargo.toml x: 5 commits (all time) y: 32 lines of code node/src/client.rs x: 3 commits (all time) y: 137 lines of code node/src/config.rs x: 4 commits (all time) y: 64 lines of code node/src/main.rs x: 4 commits (all time) y: 141 lines of code node/src/node.rs x: 6 commits (all time) y: 102 lines of code store/Cargo.toml x: 2 commits (all time) y: 9 lines of code store/src/lib.rs x: 2 commits (all time) y: 84 lines of code bft-lib/Cargo.toml x: 9 commits (all time) y: 25 lines of code librabft-v2/Cargo.toml x: 11 commits (all time) y: 29 lines of code rustfmt.toml x: 2 commits (all time) y: 5 lines of code
759.0
lines of code
  min: 5.0
  average: 96.31
  25th percentile: 20.5
  median: 64.0
  75th percentile: 139.0
  max: 759.0
0 29.0
commits (all time)
min: 2.0 | average: 6.8 | 25th percentile: 2.5 | median: 4.0 | 75th percentile: 9.0 | max: 29.0

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

bft-lib/src/base_types.rs x: 2 contributors (all time) y: 30 lines of code bft-lib/src/configuration.rs x: 2 contributors (all time) y: 34 lines of code bft-lib/src/data_writer.rs x: 2 contributors (all time) y: 84 lines of code bft-lib/src/interfaces.rs x: 2 contributors (all time) y: 50 lines of code bft-lib/src/lib.rs x: 2 contributors (all time) y: 10 lines of code bft-lib/src/simulated_context.rs x: 3 contributors (all time) y: 237 lines of code bft-lib/src/simulator.rs x: 2 contributors (all time) y: 413 lines of code bft-lib/src/smr_context.rs x: 3 contributors (all time) y: 126 lines of code bft-lib/src/visualization/round_switch/round_plotter.py x: 1 contributors (all time) y: 44 lines of code librabft-v2/src/data_sync.rs x: 3 contributors (all time) y: 192 lines of code librabft-v2/src/lib.rs x: 2 contributors (all time) y: 6 lines of code librabft-v2/src/main.rs x: 3 contributors (all time) y: 162 lines of code librabft-v2/src/node.rs x: 3 contributors (all time) y: 190 lines of code librabft-v2/src/pacemaker.rs x: 2 contributors (all time) y: 159 lines of code librabft-v2/src/record.rs x: 2 contributors (all time) y: 97 lines of code librabft-v2/src/record_store.rs x: 2 contributors (all time) y: 759 lines of code mempool/src/batch_maker.rs x: 3 contributors (all time) y: 102 lines of code mempool/src/lib.rs x: 3 contributors (all time) y: 9 lines of code mempool/src/processor.rs x: 3 contributors (all time) y: 26 lines of code network/src/error.rs x: 3 contributors (all time) y: 18 lines of code network/src/receiver.rs x: 3 contributors (all time) y: 16 lines of code network/src/simple_sender.rs x: 3 contributors (all time) y: 108 lines of code bft-driver/Cargo.toml x: 2 contributors (all time) y: 28 lines of code bft-driver/src/config.rs x: 2 contributors (all time) y: 73 lines of code bft-driver/src/consensus.rs x: 2 contributors (all time) y: 91 lines of code bft-driver/src/context.rs x: 2 contributors (all time) y: 166 lines of code bft-driver/src/core.rs x: 2 contributors (all time) y: 178 lines of code bft-driver/src/timer.rs x: 2 contributors (all time) y: 24 lines of code crypto/Cargo.toml x: 2 contributors (all time) y: 12 lines of code crypto/src/lib.rs x: 2 contributors (all time) y: 205 lines of code mempool/Cargo.toml x: 2 contributors (all time) y: 23 lines of code mempool/src/config.rs x: 2 contributors (all time) y: 65 lines of code mempool/src/mempool.rs x: 2 contributors (all time) y: 66 lines of code network/Cargo.toml x: 2 contributors (all time) y: 17 lines of code node/src/client.rs x: 2 contributors (all time) y: 137 lines of code node/src/main.rs x: 2 contributors (all time) y: 141 lines of code node/src/node.rs x: 2 contributors (all time) y: 102 lines of code rustfmt.toml x: 1 contributors (all time) y: 5 lines of code
759.0
lines of code
  min: 5.0
  average: 96.31
  25th percentile: 20.5
  median: 64.0
  75th percentile: 139.0
  max: 759.0
0 3.0
contributors (all time)
min: 1.0 | average: 2.24 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 3.0 | max: 3.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".