guardian / kcl-pekko-stream
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 22 files with 1,735 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 1 file changed 51-100 times (48 lines of code)
    • 0 files changed 21-50 times (0 lines of code)
    • 1 file changed 6-20 times (4 lines of code)
    • 20 files changed 1-5 times (1,683 lines of code)
0% | 2% | 0% | <1% | 97%
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 22 files with 1,735 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 1 file changed by 11-25 contributors (48 lines of code)
    • 1 file changed by 6-10 contributors (4 lines of code)
    • 3 files changed by 2-5 contributors (212 lines of code)
    • 17 files changed by 1 contributor (1,471 lines of code)
0% | 2% | <1% | 12% | 84%
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, sbt, yaml, gitignore, txt, xml, md, properties
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
sbt0% | 90% | 0% | 7% | 1%
scala0% | 0% | 0% | 0% | 100%
xml0% | 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
ROOT0% | 97% | 0% | 0% | 2%
project0% | 0% | 0% | 100% | 0%
src0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 22)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
build.sbt
in root
48 - 2017-12-22 2025-04-02 63 15 aleksey.nikiforov@streetcon... 10963046+andrew-nowak@users...
plugins.sbt
in project
4 - 2018-01-31 2025-01-16 16 10 angelo@genovese.ca andrew.nowak@guardian.co.uk
logback-test.xml
in src/it/resources
15 - 2017-12-22 2024-11-21 3 3 aleksey.nikiforov@streetcon... andrew.nowak@guardian.co.uk
KinesisSource.scala
in src/main/scala/com/gu/kinesis
196 11 2024-11-21 2025-03-25 3 2 andrew.nowak@guardian.co.uk 10963046+andrew-nowak@users...
1 - 2025-01-16 2025-01-16 1 2 10963046+andrew-nowak@users... andrew.nowak@guardian.co.uk
KinesisAppId.scala
in src/main/scala/com/gu/kinesis
2 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardConsumerId.scala
in src/main/scala/com/gu/kinesis
7 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardCheckpointConfig.scala
in src/main/scala/com/gu/kinesis
19 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MaterializerAsValue.scala
in src/main/scala/com/gu/kinesis
35 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisRecord.scala
in src/main/scala/com/gu/kinesis
39 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestProducer.scala
in src/it/scala/com/gu/kinesis
45 4 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerStats.scala
in src/main/scala/com/gu/kinesis
48 11 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtil.scala
in src/it/scala/com/gu/kinesis
57 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
TestStreamConfig.scala
in src/it/scala/com/gu/kinesis
70 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtilTest.scala
in src/it/scala/com/gu/kinesis
81 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
Inspectable.scala
in src/it/scala/com/gu/kinesis
90 8 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestComponents.scala
in src/it/scala/com/gu/kinesis
107 7 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ScalaKinesisProducer.scala
in src/it/scala/com/gu/kinesis
120 13 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerConfig.scala
in src/main/scala/com/gu/kinesis
126 6 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisResourceManager.scala
in src/it/scala/com/gu/kinesis
159 9 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
RecordProcessorImpl.scala
in src/main/scala/com/gu/kinesis
221 18 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisSourceTest.scala
in src/it/scala/com/gu/kinesis
245 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
Files With Most Contributors (Top 22)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
build.sbt
in root
48 - 2017-12-22 2025-04-02 63 15 aleksey.nikiforov@streetcon... 10963046+andrew-nowak@users...
plugins.sbt
in project
4 - 2018-01-31 2025-01-16 16 10 angelo@genovese.ca andrew.nowak@guardian.co.uk
logback-test.xml
in src/it/resources
15 - 2017-12-22 2024-11-21 3 3 aleksey.nikiforov@streetcon... andrew.nowak@guardian.co.uk
KinesisSource.scala
in src/main/scala/com/gu/kinesis
196 11 2024-11-21 2025-03-25 3 2 andrew.nowak@guardian.co.uk 10963046+andrew-nowak@users...
1 - 2025-01-16 2025-01-16 1 2 10963046+andrew-nowak@users... andrew.nowak@guardian.co.uk
KinesisResourceManager.scala
in src/it/scala/com/gu/kinesis
159 9 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestComponents.scala
in src/it/scala/com/gu/kinesis
107 7 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisSourceTest.scala
in src/it/scala/com/gu/kinesis
245 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
Inspectable.scala
in src/it/scala/com/gu/kinesis
90 8 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtilTest.scala
in src/it/scala/com/gu/kinesis
81 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtil.scala
in src/it/scala/com/gu/kinesis
57 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ScalaKinesisProducer.scala
in src/it/scala/com/gu/kinesis
120 13 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestProducer.scala
in src/it/scala/com/gu/kinesis
45 4 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
TestStreamConfig.scala
in src/it/scala/com/gu/kinesis
70 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardCheckpointConfig.scala
in src/main/scala/com/gu/kinesis
19 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerStats.scala
in src/main/scala/com/gu/kinesis
48 11 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardConsumerId.scala
in src/main/scala/com/gu/kinesis
7 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MaterializerAsValue.scala
in src/main/scala/com/gu/kinesis
35 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisAppId.scala
in src/main/scala/com/gu/kinesis
2 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
RecordProcessorImpl.scala
in src/main/scala/com/gu/kinesis
221 18 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerConfig.scala
in src/main/scala/com/gu/kinesis
126 6 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisRecord.scala
in src/main/scala/com/gu/kinesis
39 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
Files With Least Contributors (Top 22)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
KinesisSourceTest.scala
in src/it/scala/com/gu/kinesis
245 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
RecordProcessorImpl.scala
in src/main/scala/com/gu/kinesis
221 18 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisResourceManager.scala
in src/it/scala/com/gu/kinesis
159 9 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerConfig.scala
in src/main/scala/com/gu/kinesis
126 6 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ScalaKinesisProducer.scala
in src/it/scala/com/gu/kinesis
120 13 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestComponents.scala
in src/it/scala/com/gu/kinesis
107 7 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
Inspectable.scala
in src/it/scala/com/gu/kinesis
90 8 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtilTest.scala
in src/it/scala/com/gu/kinesis
81 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
TestStreamConfig.scala
in src/it/scala/com/gu/kinesis
70 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MessageUtil.scala
in src/it/scala/com/gu/kinesis
57 3 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ConsumerStats.scala
in src/main/scala/com/gu/kinesis
48 11 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisTestProducer.scala
in src/it/scala/com/gu/kinesis
45 4 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisRecord.scala
in src/main/scala/com/gu/kinesis
39 2 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
MaterializerAsValue.scala
in src/main/scala/com/gu/kinesis
35 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardCheckpointConfig.scala
in src/main/scala/com/gu/kinesis
19 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
ShardConsumerId.scala
in src/main/scala/com/gu/kinesis
7 1 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisAppId.scala
in src/main/scala/com/gu/kinesis
2 - 2024-11-21 2024-11-21 1 1 andrew.nowak@guardian.co.uk andrew.nowak@guardian.co.uk
KinesisSource.scala
in src/main/scala/com/gu/kinesis
196 11 2024-11-21 2025-03-25 3 2 andrew.nowak@guardian.co.uk 10963046+andrew-nowak@users...
1 - 2025-01-16 2025-01-16 1 2 10963046+andrew-nowak@users... andrew.nowak@guardian.co.uk
logback-test.xml
in src/it/resources
15 - 2017-12-22 2024-11-21 3 3 aleksey.nikiforov@streetcon... andrew.nowak@guardian.co.uk
plugins.sbt
in project
4 - 2018-01-31 2025-01-16 16 10 angelo@genovese.ca andrew.nowak@guardian.co.uk
build.sbt
in root
48 - 2017-12-22 2025-04-02 63 15 aleksey.nikiforov@streetcon... 10963046+andrew-nowak@users...
Correlations

File Size vs. Number of Changes: 22 points

build.sbt x: 48 lines of code y: 63 # changes src/main/scala/com/gu/kinesis/KinesisSource.scala x: 196 lines of code y: 3 # changes project/plugins.sbt x: 4 lines of code y: 16 # changes version.sbt x: 1 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/Inspectable.scala x: 90 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/KinesisResourceManager.scala x: 159 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/KinesisSourceTest.scala x: 245 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/KinesisTestComponents.scala x: 107 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/KinesisTestProducer.scala x: 45 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/MessageUtil.scala x: 57 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/MessageUtilTest.scala x: 81 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/ScalaKinesisProducer.scala x: 120 lines of code y: 1 # changes src/it/scala/com/gu/kinesis/TestStreamConfig.scala x: 70 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/ConsumerConfig.scala x: 126 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/ConsumerStats.scala x: 48 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/KinesisAppId.scala x: 2 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/KinesisRecord.scala x: 39 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/MaterializerAsValue.scala x: 35 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/RecordProcessorImpl.scala x: 221 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/ShardCheckpointConfig.scala x: 19 lines of code y: 1 # changes src/main/scala/com/gu/kinesis/ShardConsumerId.scala x: 7 lines of code y: 1 # changes src/it/resources/logback-test.xml x: 15 lines of code y: 3 # changes
63.0
# changes
  min: 1.0
  average: 4.68
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.0
  max: 63.0
0 245.0
lines of code
min: 1.0 | average: 78.86 | 25th percentile: 18.0 | median: 52.5 | 75th percentile: 121.5 | max: 245.0

Number of Contributors vs. Number of Changes: 22 points

build.sbt x: 15 # contributors y: 63 # changes src/main/scala/com/gu/kinesis/KinesisSource.scala x: 2 # contributors y: 3 # changes project/plugins.sbt x: 10 # contributors y: 16 # changes version.sbt x: 2 # contributors y: 1 # changes src/it/scala/com/gu/kinesis/Inspectable.scala x: 1 # contributors y: 1 # changes src/it/resources/logback-test.xml x: 3 # contributors y: 3 # changes
63.0
# changes
  min: 1.0
  average: 4.68
  25th percentile: 1.0
  median: 1.0
  75th percentile: 1.0
  max: 63.0
0 15.0
# contributors
min: 1.0 | average: 2.23 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.25 | max: 15.0

Number of Contributors vs. File Size: 22 points

build.sbt x: 15 # contributors y: 48 lines of code src/main/scala/com/gu/kinesis/KinesisSource.scala x: 2 # contributors y: 196 lines of code project/plugins.sbt x: 10 # contributors y: 4 lines of code version.sbt x: 2 # contributors y: 1 lines of code src/it/scala/com/gu/kinesis/Inspectable.scala x: 1 # contributors y: 90 lines of code src/it/scala/com/gu/kinesis/KinesisResourceManager.scala x: 1 # contributors y: 159 lines of code src/it/scala/com/gu/kinesis/KinesisSourceTest.scala x: 1 # contributors y: 245 lines of code src/it/scala/com/gu/kinesis/KinesisTestComponents.scala x: 1 # contributors y: 107 lines of code src/it/scala/com/gu/kinesis/KinesisTestProducer.scala x: 1 # contributors y: 45 lines of code src/it/scala/com/gu/kinesis/MessageUtil.scala x: 1 # contributors y: 57 lines of code src/it/scala/com/gu/kinesis/MessageUtilTest.scala x: 1 # contributors y: 81 lines of code src/it/scala/com/gu/kinesis/ScalaKinesisProducer.scala x: 1 # contributors y: 120 lines of code src/it/scala/com/gu/kinesis/TestStreamConfig.scala x: 1 # contributors y: 70 lines of code src/main/scala/com/gu/kinesis/ConsumerConfig.scala x: 1 # contributors y: 126 lines of code src/main/scala/com/gu/kinesis/ConsumerStats.scala x: 1 # contributors y: 48 lines of code src/main/scala/com/gu/kinesis/KinesisAppId.scala x: 1 # contributors y: 2 lines of code src/main/scala/com/gu/kinesis/KinesisRecord.scala x: 1 # contributors y: 39 lines of code src/main/scala/com/gu/kinesis/MaterializerAsValue.scala x: 1 # contributors y: 35 lines of code src/main/scala/com/gu/kinesis/RecordProcessorImpl.scala x: 1 # contributors y: 221 lines of code src/main/scala/com/gu/kinesis/ShardCheckpointConfig.scala x: 1 # contributors y: 19 lines of code src/main/scala/com/gu/kinesis/ShardConsumerId.scala x: 1 # contributors y: 7 lines of code src/it/resources/logback-test.xml x: 3 # contributors y: 15 lines of code
245.0
lines of code
  min: 1.0
  average: 78.86
  25th percentile: 18.0
  median: 52.5
  75th percentile: 121.5
  max: 245.0
0 15.0
# contributors
min: 1.0 | average: 2.23 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.25 | max: 15.0