Overview
File Change Frequency Overall
  • There are 5 files with 89 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 0 files changed 21-50 times (0 lines of code)
    • 0 files changed 6-20 times (0 lines of code)
    • 5 files changed 1-5 times (89 lines of code)
0% | 0% | 0% | 0% | 100%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 5 files with 89 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 0 files changed by 11-25 contributors (0 lines of code)
    • 0 files changed by 6-10 contributors (0 lines of code)
    • 0 files changed by 2-5 contributors (0 lines of code)
    • 5 files changed by 1 contributor (89 lines of code)
0% | 0% | 0% | 0% | 100%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
scala, txt, sbt, yml, gitignore, md, properties, yaml
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
scala0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
core0% | 0% | 0% | 0% | 100%
spire-intervals0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 5)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
formatting.scala
in core/src/main/scala/com/gu/time/duration/formatting
39 2 2025-10-11 2025-10-14 2 1 +101 / -19 roberto.tyley roberto.tyley
DurationFormatter.scala
in core/src/main/scala/com/gu/time/duration/formatting
4 - 2025-10-14 2025-10-14 1 1 +1 / -7 roberto.tyley roberto.tyley
UnitAmount.scala
in core/src/main/scala/com/gu/time/duration/formatting
6 - 2025-10-14 2025-10-14 1 1 +2 / -2 roberto.tyley roberto.tyley
DurationFormatHints.scala
in core/src/main/scala/com/gu/time/duration/formatting
19 - 2025-10-11 2025-10-11 1 1 +2 / -0 roberto.tyley roberto.tyley
DurationRangeFormatter.scala
in spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals
21 1 2025-10-14 2025-10-14 1 1 +29 / -0 roberto.tyley roberto.tyley
Files With Most Churn (Top 5)
Based on the number of lines added and deleted across all commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
formatting.scala
in core/src/main/scala/com/gu/time/duration/formatting
39 2 2025-10-11 2025-10-14 2 1 +101 / -19 roberto.tyley roberto.tyley
DurationRangeFormatter.scala
in spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals
21 1 2025-10-14 2025-10-14 1 1 +29 / -0 roberto.tyley roberto.tyley
DurationFormatter.scala
in core/src/main/scala/com/gu/time/duration/formatting
4 - 2025-10-14 2025-10-14 1 1 +1 / -7 roberto.tyley roberto.tyley
UnitAmount.scala
in core/src/main/scala/com/gu/time/duration/formatting
6 - 2025-10-14 2025-10-14 1 1 +2 / -2 roberto.tyley roberto.tyley
DurationFormatHints.scala
in core/src/main/scala/com/gu/time/duration/formatting
19 - 2025-10-11 2025-10-11 1 1 +2 / -0 roberto.tyley roberto.tyley
Files With Most Contributors (Top 5)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
formatting.scala
in core/src/main/scala/com/gu/time/duration/formatting
39 2 2025-10-11 2025-10-14 2 1 +101 / -19 roberto.tyley roberto.tyley
DurationFormatter.scala
in core/src/main/scala/com/gu/time/duration/formatting
4 - 2025-10-14 2025-10-14 1 1 +1 / -7 roberto.tyley roberto.tyley
UnitAmount.scala
in core/src/main/scala/com/gu/time/duration/formatting
6 - 2025-10-14 2025-10-14 1 1 +2 / -2 roberto.tyley roberto.tyley
DurationFormatHints.scala
in core/src/main/scala/com/gu/time/duration/formatting
19 - 2025-10-11 2025-10-11 1 1 +2 / -0 roberto.tyley roberto.tyley
DurationRangeFormatter.scala
in spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals
21 1 2025-10-14 2025-10-14 1 1 +29 / -0 roberto.tyley roberto.tyley
Files With Least Contributors (Top 5)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
formatting.scala
in core/src/main/scala/com/gu/time/duration/formatting
39 2 2025-10-11 2025-10-14 2 1 +101 / -19 roberto.tyley roberto.tyley
DurationRangeFormatter.scala
in spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals
21 1 2025-10-14 2025-10-14 1 1 +29 / -0 roberto.tyley roberto.tyley
DurationFormatHints.scala
in core/src/main/scala/com/gu/time/duration/formatting
19 - 2025-10-11 2025-10-11 1 1 +2 / -0 roberto.tyley roberto.tyley
UnitAmount.scala
in core/src/main/scala/com/gu/time/duration/formatting
6 - 2025-10-14 2025-10-14 1 1 +2 / -2 roberto.tyley roberto.tyley
DurationFormatter.scala
in core/src/main/scala/com/gu/time/duration/formatting
4 - 2025-10-14 2025-10-14 1 1 +1 / -7 roberto.tyley roberto.tyley
Correlations

File Size vs. Number of Changes: 5 points

core/src/main/scala/com/gu/time/duration/formatting/DurationFormatter.scala x: 4 lines of code y: 1 # changes core/src/main/scala/com/gu/time/duration/formatting/UnitAmount.scala x: 6 lines of code y: 1 # changes core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 39 lines of code y: 2 # changes spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals/DurationRangeFormatter.scala x: 21 lines of code y: 1 # changes core/src/main/scala/com/gu/time/duration/formatting/DurationFormatHints.scala x: 19 lines of code y: 1 # changes
2.0
# changes
  min: 1.0
  average: 1.2
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.5
  max: 2.0
0 39.0
lines of code
min: 4.0 | average: 17.8 | 25th percentile: 5.0 | median: 19.0 | 75th percentile: 30.0 | max: 39.0

Number of Contributors vs. Number of Changes: 5 points

core/src/main/scala/com/gu/time/duration/formatting/DurationFormatter.scala x: 1 # contributors y: 1 # changes core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 1 # contributors y: 2 # changes
2.0
# changes
  min: 1.0
  average: 1.2
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.5
  max: 2.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

Number of Contributors vs. File Size: 5 points

core/src/main/scala/com/gu/time/duration/formatting/DurationFormatter.scala x: 1 # contributors y: 4 lines of code core/src/main/scala/com/gu/time/duration/formatting/UnitAmount.scala x: 1 # contributors y: 6 lines of code core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 1 # contributors y: 39 lines of code spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals/DurationRangeFormatter.scala x: 1 # contributors y: 21 lines of code core/src/main/scala/com/gu/time/duration/formatting/DurationFormatHints.scala x: 1 # contributors y: 19 lines of code
39.0
lines of code
  min: 4.0
  average: 17.8
  25th percentile: 5.0
  median: 19.0
  75th percentile: 30.0
  max: 39.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

Number of Changes vs. Line Churn: 21 points

version.sbt x: 1 # changes y: 8 line churn README.md x: 1 # changes y: 29 line churn core/src/main/scala/com/gu/time/duration/formatting/UnitAmount.scala x: 1 # changes y: 4 line churn core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 2 # changes y: 120 line churn core/src/test/scala/com/gu/time/duration/formatting/DurationFormatHintsTest.scala x: 1 # changes y: 15 line churn spire-intervals/src/main/scala/com/gu/time/duration/formatting/DurationRangeFormatter.scala x: 1 # changes y: 9 line churn spire-intervals/src/test/scala/com/gu/time/duration/formatting/intervals/DurationRangeFormatterTest.scala x: 1 # changes y: 25 line churn core/src/main/scala/com/gu/time/duration/formatting/DurationFormatHints.scala x: 1 # changes y: 2 line churn core/src/main/scala/com/gu/time/duration/formatting/time.scala x: 1 # changes y: 97 line churn project/build.properties x: 2 # changes y: 6 line churn .github/workflows/release.yml x: 1 # changes y: 11 line churn .github/workflows/sbt-dependency-graph.yaml x: 1 # changes y: 22 line churn .tool-versions x: 1 # changes y: 1 line churn build.sbt x: 1 # changes y: 17 line churn project/plugins.sbt x: 1 # changes y: 6 line churn sonatype.sbt x: 1 # changes y: 21 line churn
120.0
line churn
  min: 1.0
  average: 23.67
  25th percentile: 7.0
  median: 15.0
  75th percentile: 29.0
  max: 120.0
0 2.0
# changes
min: 1.0 | average: 1.1 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 2.0

Number of Contributors vs. Line Churn: 5 points

core/src/main/scala/com/gu/time/duration/formatting/DurationFormatter.scala x: 1 # contributors y: 8 line churn core/src/main/scala/com/gu/time/duration/formatting/UnitAmount.scala x: 1 # contributors y: 4 line churn core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 1 # contributors y: 120 line churn spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals/DurationRangeFormatter.scala x: 1 # contributors y: 29 line churn core/src/main/scala/com/gu/time/duration/formatting/DurationFormatHints.scala x: 1 # contributors y: 2 line churn
120.0
line churn
  min: 2.0
  average: 32.6
  25th percentile: 3.0
  median: 8.0
  75th percentile: 74.5
  max: 120.0
0 1.0
# contributors
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Line Churn: 5 points

core/src/main/scala/com/gu/time/duration/formatting/DurationFormatter.scala x: 4 lines of code y: 8 line churn core/src/main/scala/com/gu/time/duration/formatting/UnitAmount.scala x: 6 lines of code y: 4 line churn core/src/main/scala/com/gu/time/duration/formatting/formatting.scala x: 39 lines of code y: 120 line churn spire-intervals/src/main/scala/com/gu/time/duration/formatting/intervals/DurationRangeFormatter.scala x: 21 lines of code y: 29 line churn core/src/main/scala/com/gu/time/duration/formatting/DurationFormatHints.scala x: 19 lines of code y: 2 line churn
120.0
line churn
  min: 2.0
  average: 32.6
  25th percentile: 3.0
  median: 8.0
  75th percentile: 74.5
  max: 120.0
0 39.0
lines of code
min: 4.0 | average: 17.8 | 25th percentile: 5.0 | median: 19.0 | 75th percentile: 30.0 | max: 39.0