novifinancial / opaque-ke
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 25 files with 4,706 lines of code.
    • 1 very long files (1,087 lines of code)
    • 2 long files (1,242 lines of code)
    • 4 medium size files (1,321 lines of codeclsfd_ftr_w_mp_ins)
    • 3 small files (486 lines of code)
    • 15 very small files (570 lines of code)
23% | 26% | 28% | 10% | 12%
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
rs24% | 28% | 29% | 6% | 10%
toml0% | 0% | 0% | 64% | 35%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src43% | 0% | 40% | 7% | 7%
src/key_exchange0% | 86% | 0% | 0% | 13%
src/serialization0% | 83% | 0% | 16% | 0%
benches0% | 0% | 100% | 0% | 0%
ROOT0% | 0% | 0% | 64% | 35%
src/key_exchange/group0% | 0% | 0% | 0% | 100%
Longest Files (Top 25)
File# lines# units
opaque.rs
in src
1087 5
tripledh.rs
in src/key_exchange
627 25
tests.rs
in src/serialization
615 24
376 1
334 6
opaque.rs
in benches
318 10
293 12
errors.rs
in src
188 7
deny.toml
in root
180 -
mod.rs
in src/serialization
118 3
traits.rs
in src/key_exchange
92 2
Cargo.toml
in root
90 -
elliptic_curve.rs
in src/key_exchange/group
63 9
ristretto255.rs
in src/key_exchange/group
49 3
hash.rs
in src
46 -
impls.rs
in src
44 1
lib.rs
in src
39 -
x25519.rs
in src/key_exchange/group
37 3
mod.rs
in src/key_exchange/group
29 -
util.rs
in src
24 -
23 -
20 2
8 -
taplo.toml
in root
3 -
mod.rs
in src/key_exchange
3 -
Files With Most Units (Top 15)
File# lines# units
tripledh.rs
in src/key_exchange
627 25
tests.rs
in src/serialization
615 24
293 12
opaque.rs
in benches
318 10
elliptic_curve.rs
in src/key_exchange/group
63 9
errors.rs
in src
188 7
334 6
opaque.rs
in src
1087 5
mod.rs
in src/serialization
118 3
x25519.rs
in src/key_exchange/group
37 3
ristretto255.rs
in src/key_exchange/group
49 3
20 2
traits.rs
in src/key_exchange
92 2
impls.rs
in src
44 1
376 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
opaque.rs
in src
1087 5 1
376 1 1
Correlations

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

src/envelope.rs x: 49 commits (all time) y: 334 lines of code src/lib.rs x: 78 commits (all time) y: 39 lines of code Cargo.toml x: 70 commits (all time) y: 90 lines of code benches/opaque.rs x: 5 commits (all time) y: 318 lines of code src/ciphersuite.rs x: 30 commits (all time) y: 23 lines of code src/errors.rs x: 28 commits (all time) y: 188 lines of code src/impls.rs x: 9 commits (all time) y: 44 lines of code src/key_exchange/group/elliptic_curve.rs x: 1 commits (all time) y: 63 lines of code src/key_exchange/group/mod.rs x: 5 commits (all time) y: 29 lines of code src/key_exchange/group/ristretto255.rs x: 5 commits (all time) y: 49 lines of code src/key_exchange/group/x25519.rs x: 5 commits (all time) y: 37 lines of code src/key_exchange/traits.rs x: 34 commits (all time) y: 92 lines of code src/key_exchange/tripledh.rs x: 63 commits (all time) y: 627 lines of code src/keypair.rs x: 52 commits (all time) y: 293 lines of code src/messages.rs x: 36 commits (all time) y: 376 lines of code src/opaque.rs x: 107 commits (all time) y: 1087 lines of code src/serialization/mod.rs x: 25 commits (all time) y: 118 lines of code src/serialization/tests.rs x: 49 commits (all time) y: 615 lines of code src/slow_hash.rs x: 26 commits (all time) y: 20 lines of code src/util.rs x: 1 commits (all time) y: 24 lines of code deny.toml x: 3 commits (all time) y: 180 lines of code rustfmt.toml x: 1 commits (all time) y: 8 lines of code src/hash.rs x: 8 commits (all time) y: 46 lines of code src/key_exchange/mod.rs x: 4 commits (all time) y: 3 lines of code taplo.toml x: 1 commits (all time) y: 3 lines of code
1087.0
lines of code
  min: 3.0
  average: 188.24
  25th percentile: 26.5
  median: 63.0
  75th percentile: 305.5
  max: 1087.0
0 107.0
commits (all time)
min: 1.0 | average: 27.8 | 25th percentile: 4.5 | median: 25.0 | 75th percentile: 49.0 | max: 107.0

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

src/envelope.rs x: 7 contributors (all time) y: 334 lines of code src/lib.rs x: 5 contributors (all time) y: 39 lines of code Cargo.toml x: 7 contributors (all time) y: 90 lines of code benches/opaque.rs x: 2 contributors (all time) y: 318 lines of code src/ciphersuite.rs x: 5 contributors (all time) y: 23 lines of code src/errors.rs x: 5 contributors (all time) y: 188 lines of code src/impls.rs x: 2 contributors (all time) y: 44 lines of code src/key_exchange/group/elliptic_curve.rs x: 1 contributors (all time) y: 63 lines of code src/key_exchange/group/mod.rs x: 2 contributors (all time) y: 29 lines of code src/key_exchange/group/ristretto255.rs x: 2 contributors (all time) y: 49 lines of code src/key_exchange/group/x25519.rs x: 2 contributors (all time) y: 37 lines of code src/key_exchange/traits.rs x: 6 contributors (all time) y: 92 lines of code src/key_exchange/tripledh.rs x: 7 contributors (all time) y: 627 lines of code src/keypair.rs x: 7 contributors (all time) y: 293 lines of code src/messages.rs x: 5 contributors (all time) y: 376 lines of code src/opaque.rs x: 7 contributors (all time) y: 1087 lines of code src/serialization/mod.rs x: 6 contributors (all time) y: 118 lines of code src/serialization/tests.rs x: 5 contributors (all time) y: 615 lines of code src/slow_hash.rs x: 6 contributors (all time) y: 20 lines of code src/util.rs x: 1 contributors (all time) y: 24 lines of code deny.toml x: 2 contributors (all time) y: 180 lines of code rustfmt.toml x: 1 contributors (all time) y: 8 lines of code src/hash.rs x: 5 contributors (all time) y: 46 lines of code src/key_exchange/mod.rs x: 3 contributors (all time) y: 3 lines of code taplo.toml x: 1 contributors (all time) y: 3 lines of code
1087.0
lines of code
  min: 3.0
  average: 188.24
  25th percentile: 26.5
  median: 63.0
  75th percentile: 305.5
  max: 1087.0
0 7.0
contributors (all time)
min: 1.0 | average: 4.08 | 25th percentile: 2.0 | median: 5.0 | 75th percentile: 6.0 | max: 7.0

File Size vs. Commits (30 days): 2 points

src/envelope.rs x: 1 commits (30d) y: 334 lines of code src/lib.rs x: 1 commits (30d) y: 39 lines of code
334.0
lines of code
  min: 39.0
  average: 186.5
  25th percentile: 39.0
  median: 186.5
  75th percentile: 334.0
  max: 334.0
0 1.0
commits (30d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Contributors (30 days): 2 points

src/envelope.rs x: 1 contributors (30d) y: 334 lines of code src/lib.rs x: 1 contributors (30d) y: 39 lines of code
334.0
lines of code
  min: 39.0
  average: 186.5
  25th percentile: 39.0
  median: 186.5
  75th percentile: 334.0
  max: 334.0
0 1.0
contributors (30d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Commits (90 days): 25 points

src/envelope.rs x: 5 commits (90d) y: 334 lines of code src/lib.rs x: 5 commits (90d) y: 39 lines of code Cargo.toml x: 4 commits (90d) y: 90 lines of code benches/opaque.rs x: 3 commits (90d) y: 318 lines of code src/ciphersuite.rs x: 3 commits (90d) y: 23 lines of code src/errors.rs x: 4 commits (90d) y: 188 lines of code src/impls.rs x: 3 commits (90d) y: 44 lines of code src/key_exchange/group/elliptic_curve.rs x: 1 commits (90d) y: 63 lines of code src/key_exchange/group/mod.rs x: 3 commits (90d) y: 29 lines of code src/key_exchange/group/ristretto255.rs x: 3 commits (90d) y: 49 lines of code src/key_exchange/group/x25519.rs x: 3 commits (90d) y: 37 lines of code src/key_exchange/tripledh.rs x: 4 commits (90d) y: 627 lines of code src/keypair.rs x: 4 commits (90d) y: 293 lines of code src/messages.rs x: 4 commits (90d) y: 376 lines of code src/opaque.rs x: 4 commits (90d) y: 1087 lines of code src/serialization/mod.rs x: 4 commits (90d) y: 118 lines of code src/serialization/tests.rs x: 4 commits (90d) y: 615 lines of code src/slow_hash.rs x: 4 commits (90d) y: 20 lines of code src/util.rs x: 1 commits (90d) y: 24 lines of code deny.toml x: 1 commits (90d) y: 180 lines of code rustfmt.toml x: 1 commits (90d) y: 8 lines of code src/hash.rs x: 2 commits (90d) y: 46 lines of code src/key_exchange/mod.rs x: 1 commits (90d) y: 3 lines of code
1087.0
lines of code
  min: 3.0
  average: 188.24
  25th percentile: 26.5
  median: 63.0
  75th percentile: 305.5
  max: 1087.0
0 5.0
commits (90d)
min: 1.0 | average: 3.04 | 25th percentile: 1.5 | median: 3.0 | 75th percentile: 4.0 | max: 5.0

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

src/envelope.rs x: 2 contributors (90d) y: 334 lines of code src/lib.rs x: 2 contributors (90d) y: 39 lines of code Cargo.toml x: 1 contributors (90d) y: 90 lines of code benches/opaque.rs x: 1 contributors (90d) y: 318 lines of code src/ciphersuite.rs x: 1 contributors (90d) y: 23 lines of code src/errors.rs x: 1 contributors (90d) y: 188 lines of code src/impls.rs x: 1 contributors (90d) y: 44 lines of code src/key_exchange/group/elliptic_curve.rs x: 1 contributors (90d) y: 63 lines of code src/key_exchange/group/mod.rs x: 1 contributors (90d) y: 29 lines of code src/key_exchange/group/ristretto255.rs x: 1 contributors (90d) y: 49 lines of code src/key_exchange/group/x25519.rs x: 1 contributors (90d) y: 37 lines of code src/key_exchange/tripledh.rs x: 1 contributors (90d) y: 627 lines of code src/keypair.rs x: 1 contributors (90d) y: 293 lines of code src/messages.rs x: 1 contributors (90d) y: 376 lines of code src/opaque.rs x: 1 contributors (90d) y: 1087 lines of code src/serialization/mod.rs x: 1 contributors (90d) y: 118 lines of code src/serialization/tests.rs x: 1 contributors (90d) y: 615 lines of code src/slow_hash.rs x: 1 contributors (90d) y: 20 lines of code deny.toml x: 1 contributors (90d) y: 180 lines of code rustfmt.toml x: 1 contributors (90d) y: 8 lines of code src/key_exchange/mod.rs x: 1 contributors (90d) y: 3 lines of code
1087.0
lines of code
  min: 3.0
  average: 188.24
  25th percentile: 26.5
  median: 63.0
  75th percentile: 305.5
  max: 1087.0
0 2.0
contributors (90d)
min: 1.0 | average: 1.08 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 2.0