Overview
File Change Frequency Overall
  • There are 358 files with 25,893 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 2 files changed 51-100 times (1,292 lines of code)
    • 20 files changed 21-50 times (4,691 lines of code)
    • 112 files changed 6-20 times (11,232 lines of code)
    • 224 files changed 1-5 times (8,678 lines of code)
0% | 4% | 18% | 43% | 33%
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 358 files with 25,893 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)
    • 235 files changed by 2-5 contributors (17,940 lines of code)
    • 123 files changed by 1 contributor (7,953 lines of code)
0% | 0% | 0% | 69% | 30%
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, tsx, jsx, yaml, py, rb, ts, txt, sh, xml, json, properties, sbt, gitignore, html, svg, js, md, yml
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
yaml0% | 76% | 0% | 12% | 11%
xml0% | 40% | 0% | 50% | 9%
scala0% | 0% | 30% | 49% | 20%
jsx0% | 0% | 9% | 50% | 40%
tsx0% | 0% | 2% | 38% | 58%
rb0% | 0% | 0% | 20% | 80%
html0% | 0% | 0% | 60% | 40%
py0% | 0% | 0% | 0% | 100%
ts0% | 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
cloudformation0% | 72% | 0% | 12% | 15%
conf0% | 36% | 0% | 62% | <1%
app0% | 0% | 33% | 55% | 11%
frontend0% | 0% | 5% | 42% | 52%
common0% | 0% | 21% | 43% | 35%
lambda0% | 0% | 39% | 19% | 40%
ProxyStatsGathering0% | 0% | 0% | 20% | 79%
ROOT0% | 0% | 0% | 86% | 13%
testscripts0% | 0% | 0% | 0% | 100%
utils0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsline
churn
first
contributor
latest
contributor
appstack.yaml
in cloudformation
1223 - 2018-10-30 2025-01-21 90 4 +3280 / -669 andy.gallagher david.allison
69 - 2018-11-02 2022-04-08 73 2 +377 / -140 andy.gallagher andy.gallagher
SearchController.scala
in app/controllers
270 11 2018-10-31 2023-11-10 47 3 +942 / -340 andy.gallagher david.allison
InputLambdaMain.scala
in lambda/input/src/main/scala
346 18 2018-06-23 2022-05-12 43 3 +1308 / -436 andy.gallagher david.allison
ProxiesController.scala
in app/controllers
415 13 2018-11-21 2022-04-25 39 2 +1490 / -516 fredex42 andy.gallagher
LightboxController.scala
in app/controllers
449 18 2018-12-14 2022-04-26 38 3 +1626 / -592 andy.gallagher andy.gallagher
BucketScanner.scala
in app/services
207 6 2018-11-02 2022-04-25 35 2 +809 / -271 andy.gallagher andy.gallagher
ScanTargetController.scala
in app/controllers
214 14 2018-11-01 2022-04-19 33 2 +806 / -302 andy.gallagher andy.gallagher
434 6 2019-01-11 2022-04-19 33 2 +1600 / -426 andy.gallagher andy.gallagher
26 1 2018-10-31 2022-03-18 32 2 +82 / -25 andy.gallagher andy.gallagher
ArchiveEntry.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
84 5 2018-06-23 2022-05-12 31 3 +349 / -195 andy.gallagher david.allison
JobController.scala
in app/controllers
118 6 2018-11-22 2022-02-10 31 2 +641 / -341 andy.gallagher andy.gallagher
IngestProxyQueue.scala
in app/services
180 1 2018-12-29 2022-04-19 28 2 +578 / -174 andy.gallagher andy.gallagher
ProxyLocation.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
105 6 2018-11-09 2022-04-19 25 2 +347 / -83 andy.gallagher andy.gallagher
116 4 2018-12-07 2021-09-30 25 2 +640 / -376 andy.gallagher andy.gallagher
256 11 2019-03-07 2022-04-25 25 2 +887 / -249 andy.gallagher andy.gallagher
ProxyGenerators.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework
260 12 2019-01-15 2022-05-12 25 2 +911 / -212 andy.gallagher andy.gallagher
Auth.scala
in app/controllers
439 16 2018-12-05 2023-11-28 25 4 +1504 / -439 andy.gallagher david.allison
ScanTargetEdit.jsx
in frontend/app/ScanTargets
339 - 2018-11-05 2022-04-08 23 3 +1077 / -329 andy.gallagher andy.gallagher
ClockSingleton.scala
in app/services
43 - 2018-11-29 2022-03-23 21 2 +168 / -52 andy.gallagher andy.gallagher
index.tsx
in frontend/app
157 - 2021-01-23 2021-09-30 21 1 +486 / -128 andy.gallagher andy.gallagher
233 6 2018-12-18 2022-04-26 21 2 +809 / -257 andy.gallagher andy.gallagher
ArchiveEntryHitReader.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
66 2 2018-10-31 2022-05-12 20 3 +190 / -50 andy.gallagher david.allison
86 - 2019-12-18 2022-04-19 19 1 +303 / -46 andy.gallagher andy.gallagher
Indexer.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
92 7 2018-06-25 2022-04-19 19 2 +312 / -131 andy.gallagher andy.gallagher
101 1 2018-11-03 2022-04-19 19 2 +337 / -77 andy.gallagher andy.gallagher
175 1 2018-11-09 2022-02-23 19 2 +562 / -122 andy.gallagher andy.gallagher
ProxyLocator.scala
in app/helpers
102 5 2018-11-21 2022-04-19 18 2 +384 / -124 fredex42 andy.gallagher
NewBrowseComponent.tsx
in frontend/app/browse
271 - 2021-02-03 2023-11-06 17 2 +735 / -83 andy.gallagher david.allison
Application.scala
in app/controllers
31 1 2018-11-05 2022-02-10 16 2 +142 / -84 andy.gallagher andy.gallagher
JobModel.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models
54 1 2018-11-26 2022-02-10 16 2 +206 / -54 andy.gallagher andy.gallagher
BrowsePathSummary.jsx
in frontend/app/browse
125 - 2018-12-07 2021-04-10 16 2 +588 / -309 andy.gallagher andy.gallagher
215 5 2019-01-13 2022-02-10 16 2 +604 / -90 andy.gallagher andy.gallagher
AppStartup.scala
in app/services
45 1 2018-11-02 2022-03-23 15 2 +178 / -66 andy.gallagher andy.gallagher
CopyMainFile.scala
in app/services/FileMove
96 1 2019-04-17 2022-04-19 15 1 +645 / -326 andy.gallagher andy.gallagher
UserController.scala
in app/controllers
172 7 2018-12-05 2022-10-21 15 3 +525 / -99 andy.gallagher david.allison
JobsList.jsx
in frontend/app/JobsList
317 - 2018-11-23 2021-02-22 15 2 +1144 / -446 andy.gallagher andy.gallagher
NewSearchComponent.tsx
in frontend/app/common
194 1 2021-02-01 2023-11-10 14 2 +546 / -38 andy.gallagher david.allison
NewLightbox.tsx
in frontend/app/Lightbox
257 - 2021-02-05 2023-11-06 14 2 +780 / -182 andy.gallagher david.allison
CreateProxySink.scala
in app/helpers
63 3 2018-11-26 2019-02-27 13 2 +193 / -27 andy.gallagher fredex42
FileMoveActor.scala
in app/services
107 1 2019-04-17 2022-03-23 13 1 +376 / -97 andy.gallagher andy.gallagher
AutoDowningLambdaMain.scala
in lambda/autodowning/src/main/scala
141 9 2018-12-03 2022-03-07 13 2 +778 / -285 andy.gallagher andy.gallagher
LightboxHelper.scala
in app/helpers
152 11 2019-02-14 2022-02-10 13 2 +663 / -119 andy.gallagher andy.gallagher
ProxiesRelinker.scala
in app/services
170 3 2018-12-07 2022-02-23 13 2 +430 / -44 andy.gallagher andy.gallagher
UserList.jsx
in frontend/app/Users
223 - 2018-12-12 2022-10-21 13 3 +763 / -265 andy.gallagher david.allison
247 15 2021-07-12 2025-01-21 13 2 +802 / -90 andy.gallagher david.allison
S3ClientManager.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers
47 4 2018-11-26 2022-04-25 12 2 +194 / -54 andy.gallagher andy.gallagher
47 1 2018-11-06 2022-04-19 12 2 +144 / -14 andy.gallagher andy.gallagher
93 5 2021-07-13 2022-04-25 12 1 +326 / -48 andy.gallagher andy.gallagher
JobsFilterComponent.jsx
in frontend/app/JobsList
119 - 2018-12-20 2021-02-22 12 2 +342 / -82 andy.gallagher andy.gallagher
Files With Most Churn (Top 50)
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
appstack.yaml
in cloudformation
1223 - 2018-10-30 2025-01-21 90 4 +3280 / -669 andy.gallagher david.allison
LightboxController.scala
in app/controllers
449 18 2018-12-14 2022-04-26 38 3 +1626 / -592 andy.gallagher andy.gallagher
434 6 2019-01-11 2022-04-19 33 2 +1600 / -426 andy.gallagher andy.gallagher
ProxiesController.scala
in app/controllers
415 13 2018-11-21 2022-04-25 39 2 +1490 / -516 fredex42 andy.gallagher
Auth.scala
in app/controllers
439 16 2018-12-05 2023-11-28 25 4 +1504 / -439 andy.gallagher david.allison
ImprovedLargeFileCopier.scala
in app/services/FileMove
443 16 2022-03-07 2022-03-23 9 1 +1624 / -141 andy.gallagher andy.gallagher
InputLambdaMain.scala
in lambda/input/src/main/scala
346 18 2018-06-23 2022-05-12 43 3 +1308 / -436 andy.gallagher david.allison
JobsList.jsx
in frontend/app/JobsList
317 - 2018-11-23 2021-02-22 15 2 +1144 / -446 andy.gallagher andy.gallagher
ScanTargetEdit.jsx
in frontend/app/ScanTargets
339 - 2018-11-05 2022-04-08 23 3 +1077 / -329 andy.gallagher andy.gallagher
SearchController.scala
in app/controllers
270 11 2018-10-31 2023-11-10 47 3 +942 / -340 andy.gallagher david.allison
256 11 2019-03-07 2022-04-25 25 2 +887 / -249 andy.gallagher andy.gallagher
ProxyGenerators.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework
260 12 2019-01-15 2022-05-12 25 2 +911 / -212 andy.gallagher andy.gallagher
ScanTargetController.scala
in app/controllers
214 14 2018-11-01 2022-04-19 33 2 +806 / -302 andy.gallagher andy.gallagher
BucketScanner.scala
in app/services
207 6 2018-11-02 2022-04-25 35 2 +809 / -271 andy.gallagher andy.gallagher
233 6 2018-12-18 2022-04-26 21 2 +809 / -257 andy.gallagher andy.gallagher
AutoDowningLambdaMain.scala
in lambda/autodowning/src/main/scala
141 9 2018-12-03 2022-03-07 13 2 +778 / -285 andy.gallagher andy.gallagher
UserList.jsx
in frontend/app/Users
223 - 2018-12-12 2022-10-21 13 3 +763 / -265 andy.gallagher david.allison
116 4 2018-12-07 2021-09-30 25 2 +640 / -376 andy.gallagher andy.gallagher
JobController.scala
in app/controllers
118 6 2018-11-22 2022-02-10 31 2 +641 / -341 andy.gallagher andy.gallagher
CopyMainFile.scala
in app/services/FileMove
96 1 2019-04-17 2022-04-19 15 1 +645 / -326 andy.gallagher andy.gallagher
NewLightbox.tsx
in frontend/app/Lightbox
257 - 2021-02-05 2023-11-06 14 2 +780 / -182 andy.gallagher david.allison
BrowsePathSummary.jsx
in frontend/app/browse
125 - 2018-12-07 2021-04-10 16 2 +588 / -309 andy.gallagher andy.gallagher
247 15 2021-07-12 2025-01-21 13 2 +802 / -90 andy.gallagher david.allison
LightboxDetailsInsert.tsx
in frontend/app/Lightbox
209 4 2021-02-06 2022-09-07 10 2 +682 / -196 andy.gallagher david.allison
NewBrowseComponent.tsx
in frontend/app/browse
271 - 2021-02-03 2023-11-06 17 2 +735 / -83 andy.gallagher david.allison
UpdateIndexRecords.scala
in app/services/FileMove
146 4 2019-04-18 2022-02-10 7 1 +578 / -214 andy.gallagher andy.gallagher
LightboxHelper.scala
in app/helpers
152 11 2019-02-14 2022-02-10 13 2 +663 / -119 andy.gallagher andy.gallagher
146 7 2022-04-04 2022-04-20 6 1 +599 / -159 andy.gallagher andy.gallagher
IngestProxyQueue.scala
in app/services
180 1 2018-12-29 2022-04-19 28 2 +578 / -174 andy.gallagher andy.gallagher
Security.scala
in app/auth
178 15 2021-07-12 2021-10-07 7 1 +612 / -125 andy.gallagher andy.gallagher
215 5 2019-01-13 2022-02-10 16 2 +604 / -90 andy.gallagher andy.gallagher
175 1 2018-11-09 2022-02-23 19 2 +562 / -122 andy.gallagher andy.gallagher
QuickRestore.jsx
in frontend/app/admin
222 - 2021-01-21 2021-02-22 5 1 +642 / -26 andy.gallagher andy.gallagher
BulkSelectionsScroll.tsx
in frontend/app/Lightbox
245 - 2021-02-05 2021-08-16 4 1 +589 / -57 andy.gallagher andy.gallagher
S3Signer.scala
in app/helpers
179 9 2018-11-12 2022-03-23 11 2 +579 / -57 andy.gallagher andy.gallagher
ImportController.scala
in app/controllers
203 9 2021-06-23 2022-04-19 9 1 +568 / -68 andy.gallagher andy.gallagher
FileMoveQueue.scala
in app/services
129 2 2022-03-04 2022-03-23 8 1 +613 / -21 andy.gallagher andy.gallagher
ProxyHealthDetail.jsx
in frontend/app/ProxyHealthDetail
214 - 2019-04-04 2021-02-22 11 2 +554 / -80 andy.gallagher andy.gallagher
157 2 2018-11-27 2022-02-10 12 2 +545 / -87 andy.gallagher andy.gallagher
UserController.scala
in app/controllers
172 7 2018-12-05 2022-10-21 15 3 +525 / -99 andy.gallagher david.allison
index.tsx
in frontend/app
157 - 2021-01-23 2021-09-30 21 1 +486 / -128 andy.gallagher andy.gallagher
NewSearchComponent.tsx
in frontend/app/common
194 1 2021-02-01 2023-11-10 14 2 +546 / -38 andy.gallagher david.allison
ProxyFramework.scala
in app/helpers
160 7 2019-01-14 2022-02-10 6 2 +514 / -52 andy.gallagher andy.gallagher
ArchiveEntry.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
84 5 2018-06-23 2022-05-12 31 3 +349 / -195 andy.gallagher david.allison
DeletedItems.tsx
in frontend/app/DeletedItems
214 - 2021-03-31 2021-04-10 4 1 +512 / -32 andy.gallagher andy.gallagher
DeleteOriginalFiles.scala
in app/services/FileMove
117 5 2019-12-16 2022-04-19 7 1 +442 / -88 andy.gallagher andy.gallagher
162 8 2021-03-31 2021-09-05 7 1 +451 / -67 andy.gallagher andy.gallagher
69 - 2018-11-02 2022-04-08 73 2 +377 / -140 andy.gallagher andy.gallagher
ProxyLocator.scala
in app/helpers
102 5 2018-11-21 2022-04-19 18 2 +384 / -124 fredex42 andy.gallagher
AdminContainer.tsx
in frontend/app/admin
199 - 2021-01-25 2021-09-30 7 1 +470 / -24 andy.gallagher andy.gallagher
Files With Most Contributors (Top 50)
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
appstack.yaml
in cloudformation
1223 - 2018-10-30 2025-01-21 90 4 +3280 / -669 andy.gallagher david.allison
Auth.scala
in app/controllers
439 16 2018-12-05 2023-11-28 25 4 +1504 / -439 andy.gallagher david.allison
SearchController.scala
in app/controllers
270 11 2018-10-31 2023-11-10 47 3 +942 / -340 andy.gallagher david.allison
InputLambdaMain.scala
in lambda/input/src/main/scala
346 18 2018-06-23 2022-05-12 43 3 +1308 / -436 andy.gallagher david.allison
LightboxController.scala
in app/controllers
449 18 2018-12-14 2022-04-26 38 3 +1626 / -592 andy.gallagher andy.gallagher
ArchiveEntry.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
84 5 2018-06-23 2022-05-12 31 3 +349 / -195 andy.gallagher david.allison
ScanTargetEdit.jsx
in frontend/app/ScanTargets
339 - 2018-11-05 2022-04-08 23 3 +1077 / -329 andy.gallagher andy.gallagher
ArchiveEntryHitReader.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
66 2 2018-10-31 2022-05-12 20 3 +190 / -50 andy.gallagher david.allison
UserController.scala
in app/controllers
172 7 2018-12-05 2022-10-21 15 3 +525 / -99 andy.gallagher david.allison
UserList.jsx
in frontend/app/Users
223 - 2018-12-12 2022-10-21 13 3 +763 / -265 andy.gallagher david.allison
LightboxEntryDAO.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models
55 - 2018-12-18 2022-05-12 10 3 +190 / -50 andy.gallagher david.allison
ArchiveHunterConfigurationExt.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
25 2 2018-11-26 2022-05-12 9 3 +66 / -4 andy.gallagher david.allison
bucketmonitor.yaml
in cloudformation
132 - 2018-10-30 2022-05-12 8 3 +317 / -62 andy.gallagher david.allison
RestoreStatusComponent.jsx
in frontend/app/Lightbox
66 - 2018-12-18 2022-04-26 7 3 +163 / -19 andy.gallagher andy.gallagher
35 - 2018-12-12 2022-10-21 6 3 +106 / -16 andy.gallagher david.allison
Module.scala
in lambda/input/src/main/scala
13 1 2018-11-26 2022-05-12 4 3 +30 / -2 andy.gallagher david.allison
69 - 2018-11-02 2022-04-08 73 2 +377 / -140 andy.gallagher andy.gallagher
ProxiesController.scala
in app/controllers
415 13 2018-11-21 2022-04-25 39 2 +1490 / -516 fredex42 andy.gallagher
BucketScanner.scala
in app/services
207 6 2018-11-02 2022-04-25 35 2 +809 / -271 andy.gallagher andy.gallagher
ScanTargetController.scala
in app/controllers
214 14 2018-11-01 2022-04-19 33 2 +806 / -302 andy.gallagher andy.gallagher
434 6 2019-01-11 2022-04-19 33 2 +1600 / -426 andy.gallagher andy.gallagher
26 1 2018-10-31 2022-03-18 32 2 +82 / -25 andy.gallagher andy.gallagher
JobController.scala
in app/controllers
118 6 2018-11-22 2022-02-10 31 2 +641 / -341 andy.gallagher andy.gallagher
IngestProxyQueue.scala
in app/services
180 1 2018-12-29 2022-04-19 28 2 +578 / -174 andy.gallagher andy.gallagher
116 4 2018-12-07 2021-09-30 25 2 +640 / -376 andy.gallagher andy.gallagher
256 11 2019-03-07 2022-04-25 25 2 +887 / -249 andy.gallagher andy.gallagher
ProxyLocation.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
105 6 2018-11-09 2022-04-19 25 2 +347 / -83 andy.gallagher andy.gallagher
ProxyGenerators.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework
260 12 2019-01-15 2022-05-12 25 2 +911 / -212 andy.gallagher andy.gallagher
233 6 2018-12-18 2022-04-26 21 2 +809 / -257 andy.gallagher andy.gallagher
ClockSingleton.scala
in app/services
43 - 2018-11-29 2022-03-23 21 2 +168 / -52 andy.gallagher andy.gallagher
101 1 2018-11-03 2022-04-19 19 2 +337 / -77 andy.gallagher andy.gallagher
175 1 2018-11-09 2022-02-23 19 2 +562 / -122 andy.gallagher andy.gallagher
Indexer.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common
92 7 2018-06-25 2022-04-19 19 2 +312 / -131 andy.gallagher andy.gallagher
ProxyLocator.scala
in app/helpers
102 5 2018-11-21 2022-04-19 18 2 +384 / -124 fredex42 andy.gallagher
NewBrowseComponent.tsx
in frontend/app/browse
271 - 2021-02-03 2023-11-06 17 2 +735 / -83 andy.gallagher david.allison
215 5 2019-01-13 2022-02-10 16 2 +604 / -90 andy.gallagher andy.gallagher
Application.scala
in app/controllers
31 1 2018-11-05 2022-02-10 16 2 +142 / -84 andy.gallagher andy.gallagher
BrowsePathSummary.jsx
in frontend/app/browse
125 - 2018-12-07 2021-04-10 16 2 +588 / -309 andy.gallagher andy.gallagher
JobModel.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models
54 1 2018-11-26 2022-02-10 16 2 +206 / -54 andy.gallagher andy.gallagher
AppStartup.scala
in app/services
45 1 2018-11-02 2022-03-23 15 2 +178 / -66 andy.gallagher andy.gallagher
JobsList.jsx
in frontend/app/JobsList
317 - 2018-11-23 2021-02-22 15 2 +1144 / -446 andy.gallagher andy.gallagher
NewLightbox.tsx
in frontend/app/Lightbox
257 - 2021-02-05 2023-11-06 14 2 +780 / -182 andy.gallagher david.allison
NewSearchComponent.tsx
in frontend/app/common
194 1 2021-02-01 2023-11-10 14 2 +546 / -38 andy.gallagher david.allison
247 15 2021-07-12 2025-01-21 13 2 +802 / -90 andy.gallagher david.allison
LightboxHelper.scala
in app/helpers
152 11 2019-02-14 2022-02-10 13 2 +663 / -119 andy.gallagher andy.gallagher
CreateProxySink.scala
in app/helpers
63 3 2018-11-26 2019-02-27 13 2 +193 / -27 andy.gallagher fredex42
ProxiesRelinker.scala
in app/services
170 3 2018-12-07 2022-02-23 13 2 +430 / -44 andy.gallagher andy.gallagher
AutoDowningLambdaMain.scala
in lambda/autodowning/src/main/scala
141 9 2018-12-03 2022-03-07 13 2 +778 / -285 andy.gallagher andy.gallagher
47 1 2018-11-06 2022-04-19 12 2 +144 / -14 andy.gallagher andy.gallagher
157 2 2018-11-27 2022-02-10 12 2 +545 / -87 andy.gallagher andy.gallagher
Files With Least Contributors (Top 50)
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
ImprovedLargeFileCopier.scala
in app/services/FileMove
443 16 2022-03-07 2022-03-23 9 1 +1624 / -141 andy.gallagher andy.gallagher
BulkSelectionsScroll.tsx
in frontend/app/Lightbox
245 - 2021-02-05 2021-08-16 4 1 +589 / -57 andy.gallagher andy.gallagher
QuickRestore.jsx
in frontend/app/admin
222 - 2021-01-21 2021-02-22 5 1 +642 / -26 andy.gallagher andy.gallagher
DeletedItems.tsx
in frontend/app/DeletedItems
214 - 2021-03-31 2021-04-10 4 1 +512 / -32 andy.gallagher andy.gallagher
ImportController.scala
in app/controllers
203 9 2021-06-23 2022-04-19 9 1 +568 / -68 andy.gallagher andy.gallagher
AdminContainer.tsx
in frontend/app/admin
199 - 2021-01-25 2021-09-30 7 1 +470 / -24 andy.gallagher andy.gallagher
Security.scala
in app/auth
178 15 2021-07-12 2021-10-07 7 1 +612 / -125 andy.gallagher andy.gallagher
ProxyFrameworkAdd.tsx
in frontend/app/ProxyFramework
170 1 2021-01-30 2021-02-22 4 1 +388 / -4 andy.gallagher andy.gallagher
162 8 2021-03-31 2021-09-05 7 1 +451 / -67 andy.gallagher andy.gallagher
index.tsx
in frontend/app
157 - 2021-01-23 2021-09-30 21 1 +486 / -128 andy.gallagher andy.gallagher
ManualImporter.tsx
in frontend/app/admin
149 1 2021-06-23 2021-09-30 2 1 +344 / -8 andy.gallagher andy.gallagher
UpdateIndexRecords.scala
in app/services/FileMove
146 4 2019-04-18 2022-02-10 7 1 +578 / -214 andy.gallagher andy.gallagher
146 7 2022-04-04 2022-04-20 6 1 +599 / -159 andy.gallagher andy.gallagher
MetadataTable.tsx
in frontend/app/Entry/details
135 - 2021-02-02 2021-03-15 7 1 +351 / -53 andy.gallagher andy.gallagher
FindDeploymentComponent.tsx
in frontend/app/ProxyFramework/multistep
134 1 2021-01-30 2021-02-22 4 1 +334 / -4 andy.gallagher andy.gallagher
FileMoveQueue.scala
in app/services
129 2 2022-03-04 2022-03-23 8 1 +613 / -21 andy.gallagher andy.gallagher
FlexMetadata.tsx
in frontend/app/ItemView
125 - 2021-03-03 2021-03-05 3 1 +314 / -36 andy.gallagher andy.gallagher
ScanTargetActionsBox.tsx
in frontend/app/ScanTargets
120 - 2021-01-26 2021-02-22 3 1 +270 / -6 andy.gallagher andy.gallagher
DeleteOriginalFiles.scala
in app/services/FileMove
117 5 2019-12-16 2022-04-19 7 1 +442 / -88 andy.gallagher andy.gallagher
EntryDetails.tsx
in frontend/app/Entry
110 - 2021-07-14 2021-09-05 2 1 +254 / -0 andy.gallagher andy.gallagher
EntryView.tsx
in frontend/app/search
110 - 2021-02-01 2021-02-22 3 1 +250 / -12 andy.gallagher andy.gallagher
FileMoveActor.scala
in app/services
107 1 2019-04-17 2022-03-23 13 1 +376 / -97 andy.gallagher andy.gallagher
JobsListContent.tsx
in frontend/app/JobsList
106 1 2021-01-27 2021-02-22 5 1 +249 / -11 andy.gallagher andy.gallagher
ReconnectDialog.tsx
in frontend/app/Entry
101 - 2021-03-10 2021-03-15 2 1 +223 / -3 andy.gallagher andy.gallagher
DeletedItemsTable.tsx
in frontend/app/DeletedItems
101 - 2021-04-01 2021-04-10 3 1 +275 / -37 andy.gallagher andy.gallagher
CopyMainFile.scala
in app/services/FileMove
96 1 2019-04-17 2022-04-19 15 1 +645 / -326 andy.gallagher andy.gallagher
PathCacheAdmin.jsx
in frontend/app/admin
95 - 2021-01-22 2021-06-18 6 1 +325 / -33 andy.gallagher andy.gallagher
93 5 2021-07-13 2022-04-25 12 1 +326 / -48 andy.gallagher andy.gallagher
MonitoringSetupCheck.tsx
in frontend/app/ScanTargets
92 - 2022-04-04 2022-04-08 3 1 +229 / -21 andy.gallagher andy.gallagher
ApacheComms.scala
in lambda/autodowning/src/main/scala
92 4 2022-02-14 2022-03-07 5 1 +240 / -7 andy.gallagher andy.gallagher
CopyProxyFiles.scala
in app/services/FileMove
91 1 2019-04-17 2022-04-19 7 1 +251 / -43 andy.gallagher andy.gallagher
LightboxDynamoSource.scala
in app/helpers/LightboxStreamComponents
89 1 2019-05-21 2022-02-10 6 1 +315 / -55 andy.gallagher andy.gallagher
ScanTargetsList.tsx
in frontend/app/ScanTargets
88 - 2021-01-21 2021-02-22 9 1 +237 / -33 andy.gallagher andy.gallagher
hmac_client.py
in testscripts
86 2 2022-02-21 2022-03-18 2 1 +405 / -0 andy.gallagher andy.gallagher
86 - 2019-12-18 2022-04-19 19 1 +303 / -46 andy.gallagher andy.gallagher
InfoTable.tsx
in frontend/app/ProxyHealthDetail
85 - 2021-01-31 2021-02-22 2 1 +190 / -0 andy.gallagher andy.gallagher
BrowseFilter.tsx
in frontend/app/browse
81 - 2021-12-16 2023-11-06 3 1 +189 / -7 david.allison david.allison
BrowseSummaryDisplay.tsx
in frontend/app/browse
79 - 2021-03-31 2021-04-10 3 1 +189 / -1 andy.gallagher andy.gallagher
LoginStatusComponent.tsx
in frontend/app/Login
79 - 2021-01-23 2021-09-05 5 1 +288 / -106 andy.gallagher andy.gallagher
PathCacheExtractor.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers
71 3 2021-01-22 2021-02-08 3 1 +258 / -0 andy.gallagher andy.gallagher
hmac-search.py
in testscripts
69 3 2022-02-21 2022-03-18 3 1 +311 / -2 andy.gallagher andy.gallagher
ProxyFrameworkList.tsx
in frontend/app/ProxyFramework
68 - 2021-01-29 2021-02-22 3 1 +156 / -0 andy.gallagher andy.gallagher
PathCacheIndexer.scala
in common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models
68 6 2021-01-22 2021-06-18 7 1 +310 / -21 andy.gallagher andy.gallagher
DeletedItemSummary.tsx
in frontend/app/DeletedItems
66 - 2021-03-31 2021-04-10 3 1 +160 / -4 andy.gallagher andy.gallagher
BulkRestoreStatsSink.scala
in app/helpers/LightboxStreamComponents
65 1 2019-05-22 2022-02-10 6 1 +180 / -10 andy.gallagher andy.gallagher
VerifyChecksum.scala
in app/services/FileMove
65 1 2022-03-20 2022-03-23 2 1 +158 / -0 andy.gallagher andy.gallagher
EntryLightboxBanner.tsx
in frontend/app/Entry
62 - 2021-02-02 2021-09-05 4 1 +145 / -11 andy.gallagher andy.gallagher
AutocompletingEditBox.jsx
in frontend/app/common
60 - 2019-05-10 2019-05-10 1 1 +139 / -1 andy.gallagher andy.gallagher
request-move-file.py
in testscripts
59 2 2022-02-07 2022-03-18 4 1 +332 / -8 andy.gallagher andy.gallagher
LightboxInsert.tsx
in frontend/app/Entry/details
58 - 2021-02-02 2021-09-05 6 1 +181 / -45 andy.gallagher andy.gallagher
Correlations

File Size vs. Number of Changes: 358 points

app/auth/BearerTokenAuth.scala x: 247 lines of code y: 13 # changes cloudformation/appstack.yaml x: 1223 lines of code y: 90 # changes frontend/app/browse/NewTreeView.tsx x: 132 lines of code y: 9 # changes app/controllers/Auth.scala x: 439 lines of code y: 25 # changes app/controllers/SearchController.scala x: 270 lines of code y: 47 # changes frontend/app/common/NewSearchComponent.tsx x: 194 lines of code y: 14 # changes frontend/app/search/NewBasicSearch.tsx x: 123 lines of code y: 8 # changes frontend/app/Lightbox/NewLightbox.tsx x: 257 lines of code y: 14 # changes frontend/app/browse/BrowseFilter.tsx x: 81 lines of code y: 3 # changes frontend/app/browse/NewBrowseComponent.tsx x: 271 lines of code y: 17 # changes frontend/app/LoginComponent.tsx x: 82 lines of code y: 6 # changes app/controllers/UserController.scala x: 172 lines of code y: 15 # changes app/models/UserProfileDAO.scala x: 35 lines of code y: 6 # changes frontend/app/Users/UserList.jsx x: 223 lines of code y: 13 # changes frontend/app/Users/UserListContent.tsx x: 82 lines of code y: 4 # changes frontend/app/ItemView/ItemActions.tsx x: 130 lines of code y: 4 # changes frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 209 lines of code y: 10 # changes lambda/input/src/main/scala/InputLambdaMain.scala x: 346 lines of code y: 43 # changes cloudformation/bucketmonitor.yaml x: 132 lines of code y: 8 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 84 lines of code y: 31 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 66 lines of code y: 20 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfigurationExt.scala x: 25 lines of code y: 9 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxEntryDAO.scala x: 55 lines of code y: 10 # changes lambda/input/src/main/scala/Module.scala x: 13 lines of code y: 4 # changes lambda/input/src/main/scala/TestMain.scala x: 66 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/ProxyGenerators.scala x: 260 lines of code y: 25 # changes frontend/app/Lightbox/LightboxAvailability.tsx x: 49 lines of code y: 1 # changes app/controllers/LightboxController.scala x: 449 lines of code y: 38 # changes app/services/GlacierRestoreActor.scala x: 233 lines of code y: 21 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 12 lines of code y: 5 # changes frontend/app/Lightbox/RestoreStatusComponent.jsx x: 66 lines of code y: 7 # changes frontend/app/Lightbox/RestoreStatusIndicator.tsx x: 46 lines of code y: 3 # changes app/controllers/BulkDownloadsController.scala x: 256 lines of code y: 25 # changes app/controllers/ProxiesController.scala x: 415 lines of code y: 39 # changes app/helpers/S3Helper.scala x: 33 lines of code y: 7 # changes app/helpers/UserAvatarHelper.scala x: 93 lines of code y: 12 # changes app/services/BucketScanner.scala x: 207 lines of code y: 35 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/S3ClientManager.scala x: 47 lines of code y: 12 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3ClientExtensions.scala x: 41 lines of code y: 5 # changes frontend/app/common/Fileinfo.ts x: 35 lines of code y: 3 # changes app/services/BucketNotificationConfigurations.scala x: 146 lines of code y: 6 # changes app/controllers/ImportController.scala x: 203 lines of code y: 9 # changes app/controllers/ScanTargetController.scala x: 214 lines of code y: 33 # changes app/helpers/ProxyLocator.scala x: 102 lines of code y: 18 # changes app/helpers/S3ToArchiveEntryFlow.scala x: 101 lines of code y: 19 # changes app/helpers/S3XMLProcessor.scala x: 165 lines of code y: 7 # changes app/services/FileMove/CopyMainFile.scala x: 96 lines of code y: 15 # changes app/services/FileMove/CopyProxyFiles.scala x: 91 lines of code y: 7 # changes app/services/FileMove/DeleteOriginalFiles.scala x: 117 lines of code y: 7 # changes app/services/IngestProxyQueue.scala x: 180 lines of code y: 28 # changes app/services/ProxyFrameworkQueue.scala x: 434 lines of code y: 33 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/Indexer.scala x: 92 lines of code y: 19 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocation.scala x: 105 lines of code y: 25 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3RestoreHeader.scala x: 48 lines of code y: 2 # changes conf/logback-deployment.xml x: 86 lines of code y: 19 # changes app/responses/CheckNotificationResponse.scala x: 2 lines of code y: 2 # changes conf/logback.xml x: 69 lines of code y: 73 # changes frontend/app/ScanTargets/MonitoringSetupCheck.tsx x: 92 lines of code y: 3 # changes frontend/app/ScanTargets/ScanTargetEdit.jsx x: 339 lines of code y: 23 # changes riff-raff.yaml x: 32 lines of code y: 10 # changes app/helpers/DigestSink.scala x: 44 lines of code y: 2 # changes app/helpers/S3Signer.scala x: 179 lines of code y: 11 # changes app/services/AppStartup.scala x: 45 lines of code y: 15 # changes app/services/ClockPerInstance.scala x: 22 lines of code y: 3 # changes app/services/ClockSingleton.scala x: 43 lines of code y: 21 # changes app/services/FileMove/ImprovedLargeFileCopier.scala x: 443 lines of code y: 9 # changes app/services/FileMove/VerifyChecksum.scala x: 65 lines of code y: 2 # changes app/services/FileMove/VerifySource.scala x: 49 lines of code y: 9 # changes app/services/FileMoveActor.scala x: 107 lines of code y: 13 # changes app/services/FileMoveQueue.scala x: 129 lines of code y: 8 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/DocId.scala x: 17 lines of code y: 4 # changes app/Module.scala x: 26 lines of code y: 32 # changes app/controllers/FileMoveController.scala x: 56 lines of code y: 11 # changes app/helpers/ParanoidS3Source.scala x: 101 lines of code y: 10 # changes app/services/GenericSqsActor.scala x: 84 lines of code y: 9 # changes cloudformation/make-dev-config.rb x: 83 lines of code y: 10 # changes testscripts/build-id-list.py x: 38 lines of code y: 2 # changes testscripts/hmac-search.py x: 69 lines of code y: 3 # changes testscripts/hmac_client.py x: 86 lines of code y: 2 # changes testscripts/request-move-file.py x: 59 lines of code y: 4 # changes lambda/autodowning/src/main/scala/ApacheComms.scala x: 92 lines of code y: 5 # changes lambda/autodowning/src/main/scala/AutoDowningLambdaMain.scala x: 141 lines of code y: 13 # changes lambda/autodowning/src/main/scala/models/AkkaMembersResponse.scala x: 3 lines of code y: 3 # changes ProxyStatsGathering/src/main/scala/MainContent.scala x: 126 lines of code y: 12 # changes app/helpers/HasThumbnailFilter.scala x: 46 lines of code y: 8 # changes app/helpers/ProxyVerifyFlow.scala x: 49 lines of code y: 7 # changes app/services/BulkThumbnailer.scala x: 84 lines of code y: 11 # changes app/services/LegacyProxiesScanner.scala x: 175 lines of code y: 19 # changes app/services/ProblemItemRetry.scala x: 58 lines of code y: 8 # changes app/services/ProxiesRelinker.scala x: 170 lines of code y: 13 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/JobModelDAO.scala x: 88 lines of code y: 9 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxBulkEntryDAO.scala x: 52 lines of code y: 5 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ScanTargetDAO.scala x: 117 lines of code y: 11 # changes lambda/autodowning/src/main/scala/models/EnhancedLambdaLogger.scala x: 23 lines of code y: 1 # changes lambda/autodowning/src/main/scala/models/LifecycleMessage.scala x: 32 lines of code y: 6 # changes lambda/autodowning/src/main/scala/models/LifecycleMessageDecoder.scala x: 47 lines of code y: 4 # changes ProxyStatsGathering/src/main/scala/DockerMain.scala x: 61 lines of code y: 11 # changes app/controllers/Application.scala x: 31 lines of code y: 16 # changes app/controllers/JobController.scala x: 118 lines of code y: 31 # changes app/controllers/ProxyFrameworkAdminController.scala x: 215 lines of code y: 16 # changes app/helpers/DDBSink.scala x: 67 lines of code y: 10 # changes app/helpers/LightboxHelper.scala x: 152 lines of code y: 13 # changes app/helpers/LightboxStreamComponents/BulkRestoreStatsSink.scala x: 65 lines of code y: 6 # changes app/helpers/LightboxStreamComponents/LightboxDynamoSource.scala x: 89 lines of code y: 6 # changes app/helpers/LightboxStreamComponents/LookupLightboxEntryFlow.scala x: 50 lines of code y: 6 # changes app/helpers/LightboxStreamComponents/RemoveLightboxEntrySink.scala x: 41 lines of code y: 7 # changes app/helpers/ProxyFramework.scala x: 160 lines of code y: 6 # changes app/models/OAuthTokenEntryDAO.scala x: 45 lines of code y: 5 # changes app/models/ServerTokenDAO.scala x: 26 lines of code y: 4 # changes app/requests/JobSearchRequest.scala x: 63 lines of code y: 4 # changes app/services/DynamoCapacityActor.scala x: 157 lines of code y: 12 # changes app/services/FileMove/UpdateIndexRecords.scala x: 146 lines of code y: 7 # changes app/services/JobPurgerActor.scala x: 94 lines of code y: 10 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocationDAO.scala x: 72 lines of code y: 9 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/RequestModel.scala x: 17 lines of code y: 8 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/StorageClass.scala x: 21 lines of code y: 6 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/ClientManagerBase.scala x: 22 lines of code y: 4 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/DynamoClientManager.scala x: 18 lines of code y: 7 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/ZonedTimeFormat.scala x: 10 lines of code y: 4 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/JobModel.scala x: 54 lines of code y: 16 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProxyFrameworkInstanceDAO.scala x: 32 lines of code y: 4 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProxyHealth.scala x: 9 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/QueryRemaps.scala x: 14 lines of code y: 4 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ScanTarget.scala x: 22 lines of code y: 10 # changes app/auth/Security.scala x: 178 lines of code y: 7 # changes app/helpers/IndexerFactory.scala x: 8 lines of code y: 2 # changes app/requests/ProxyImportRequest.scala x: 3 lines of code y: 2 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyType.scala x: 10 lines of code y: 7 # changes app/controllers/BrowseCollectionController.scala x: 116 lines of code y: 25 # changes app/requests/SpecificImportRequest.scala x: 5 lines of code y: 2 # changes frontend/app/admin/AdminContainer.tsx x: 199 lines of code y: 7 # changes frontend/app/admin/ManualImporter.tsx x: 149 lines of code y: 2 # changes frontend/app/index.tsx x: 157 lines of code y: 21 # changes app/auth/HMAC.scala x: 35 lines of code y: 2 # changes app/controllers/DeletedItemsController.scala x: 162 lines of code y: 7 # changes app/controllers/PathCacheController.scala x: 51 lines of code y: 8 # changes app/controllers/ProxyHealthController.scala x: 99 lines of code y: 10 # changes app/controllers/VersionController.scala x: 67 lines of code y: 5 # changes app/helpers/HttpClientFactoryReal.scala x: 7 lines of code y: 3 # changes app/models/UserProfile.scala x: 12 lines of code y: 7 # changes app/responses/UserResponse.scala x: 25 lines of code y: 5 # changes frontend/app/Context/UserContext.tsx x: 12 lines of code y: 3 # changes frontend/app/Entry/EntryDetails.tsx x: 110 lines of code y: 2 # changes frontend/app/Entry/EntryJobs.jsx x: 96 lines of code y: 10 # changes frontend/app/Entry/MediaPreview.tsx x: 177 lines of code y: 8 # changes frontend/app/Entry/details/LightboxInsert.tsx x: 58 lines of code y: 6 # changes frontend/app/ItemView/ItemView.tsx x: 162 lines of code y: 9 # changes frontend/app/Login/LoginStatusComponent.tsx x: 79 lines of code y: 5 # changes frontend/app/admin/About.tsx x: 56 lines of code y: 5 # changes frontend/app/Lightbox/BulkSelectionsScroll.tsx x: 245 lines of code y: 4 # changes utils/datamigration/lightbox_migration.py x: 22 lines of code y: 2 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/PathCacheIndexer.scala x: 68 lines of code y: 7 # changes frontend/app/admin/PathCacheAdmin.jsx x: 95 lines of code y: 6 # changes app/models/BulkRestoreStats.scala x: 5 lines of code y: 4 # changes app/models/JobReportNew.scala x: 24 lines of code y: 9 # changes app/requests/SearchRequest.scala x: 33 lines of code y: 8 # changes app/helpers/WithScanTarget.scala x: 26 lines of code y: 2 # changes frontend/app/DeletedItems/DeletedItems.tsx x: 214 lines of code y: 4 # changes frontend/app/DeletedItems/DeletedItemsStreamConsumer.jsx x: 58 lines of code y: 3 # changes frontend/app/DeletedItems/DeletedItemsTable.tsx x: 101 lines of code y: 3 # changes frontend/app/browse/BrowsePathSummary.jsx x: 125 lines of code y: 16 # changes frontend/app/browse/BrowseSummaryDisplay.tsx x: 79 lines of code y: 3 # changes app/responses/BulkDownloadInitiateResponse.scala x: 4 lines of code y: 5 # changes frontend/app/Entry/MediaPlayer.tsx x: 121 lines of code y: 6 # changes frontend/app/Entry/ReconnectDialog.tsx x: 101 lines of code y: 2 # changes frontend/app/Entry/details/MetadataTable.tsx x: 135 lines of code y: 7 # changes frontend/app/Entry/EntryPreviewSwitcher.tsx x: 51 lines of code y: 4 # changes frontend/app/ItemView/FlexMetadata.tsx x: 125 lines of code y: 3 # changes frontend/app/ItemView/FlexMetadataEntry.tsx x: 41 lines of code y: 3 # changes frontend/app/browse/PathDisplayComponent.tsx x: 34 lines of code y: 5 # changes app/helpers/LightboxStreamComponents/RemoveLightboxIndexInfoSink.scala x: 43 lines of code y: 7 # changes app/helpers/LightboxStreamComponents/SaveLightboxEntryFlow.scala x: 54 lines of code y: 6 # changes app/helpers/LightboxStreamComponents/UpdateLightboxIndexInfoSink.scala x: 53 lines of code y: 8 # changes app/helpers/SearchHitToArchiveEntryFlow.scala x: 39 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemCountHitReader.scala x: 26 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemHitReader.scala x: 34 lines of code y: 7 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/ESClientManager.scala x: 14 lines of code y: 5 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/IndexerErrors.scala x: 23 lines of code y: 3 # changes app/views/index.scala.html x: 12 lines of code y: 6 # changes frontend/app/BaseStyles.ts x: 36 lines of code y: 5 # changes frontend/app/JobsList/JobsFilterComponent.jsx x: 119 lines of code y: 12 # changes frontend/app/JobsList/JobsList.jsx x: 317 lines of code y: 15 # changes frontend/app/JobsList/JobsListContent.tsx x: 106 lines of code y: 5 # changes frontend/app/ProxyFramework/ProxyFrameworkAdd.tsx x: 170 lines of code y: 4 # changes frontend/app/ProxyFramework/ProxyFrameworkContent.tsx x: 40 lines of code y: 2 # changes frontend/app/ProxyFramework/ProxyFrameworkList.tsx x: 68 lines of code y: 3 # changes frontend/app/ProxyFramework/multistep/ConfirmationComponent.jsx x: 41 lines of code y: 4 # changes frontend/app/ProxyFramework/multistep/EnterDeploymentComponent.tsx x: 19 lines of code y: 2 # changes frontend/app/ProxyFramework/multistep/FindDeploymentComponent.tsx x: 134 lines of code y: 4 # changes frontend/app/ProxyHealth/ProxyHealthDash.jsx x: 163 lines of code y: 5 # changes frontend/app/ProxyHealthDetail/AttemptRetry.jsx x: 73 lines of code y: 5 # changes frontend/app/ProxyHealthDetail/ByCollectionChart.jsx x: 98 lines of code y: 4 # changes frontend/app/ProxyHealthDetail/GeneralOverviewChart.jsx x: 84 lines of code y: 4 # changes frontend/app/ProxyHealthDetail/ProxyHealthDetail.jsx x: 214 lines of code y: 11 # changes frontend/app/ProxyHealthDetail/ThreeWayIcon.jsx x: 21 lines of code y: 5 # changes frontend/app/ScanTargets/ScanTargetActionsBox.tsx x: 120 lines of code y: 3 # changes frontend/app/ScanTargets/ScanTargetsListContent.tsx x: 53 lines of code y: 5 # changes frontend/app/ScanTargets/TranscoderCheckComponent.jsx x: 39 lines of code y: 5 # changes frontend/app/Users/CollectionSelector.tsx x: 36 lines of code y: 2 # changes frontend/app/Users/DepartmentSelector.tsx x: 28 lines of code y: 2 # changes frontend/app/admin/AdminFront.tsx x: 17 lines of code y: 3 # changes frontend/app/admin/ErrorCatcher.tsx x: 33 lines of code y: 2 # changes frontend/app/admin/QuickRestore.jsx x: 222 lines of code y: 5 # changes frontend/app/browse/BrowseSortOrder.tsx x: 57 lines of code y: 3 # changes frontend/app/browse/BulkLightboxAdd.jsx x: 84 lines of code y: 10 # changes frontend/app/common/ErrorViewComponent.jsx x: 74 lines of code y: 8 # changes frontend/app/common/GenericDropdown.tsx x: 15 lines of code y: 2 # changes frontend/app/common/RefreshButton.tsx x: 32 lines of code y: 3 # changes frontend/app/common/RegionSelector.jsx x: 35 lines of code y: 4 # changes frontend/app/common/SizeInput.jsx x: 84 lines of code y: 6 # changes frontend/app/common/TickCrossIcon.tsx x: 9 lines of code y: 2 # changes frontend/app/common/TimestampFormatter.tsx x: 14 lines of code y: 3 # changes frontend/app/common/UrlPathHelpers.ts x: 13 lines of code y: 2 # changes frontend/app/search/EntryView.tsx x: 110 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/PathCacheExtractor.scala x: 71 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/PathCacheEntry.scala x: 2 lines of code y: 3 # changes app/services/FileMove/GenericMoveActor.scala x: 27 lines of code y: 4 # changes app/responses/RestoreStatusResponse.scala x: 4 lines of code y: 4 # changes frontend/app/Lightbox/BulkSelectionStats.jsx x: 50 lines of code y: 2 # changes frontend/app/common/AutocompletingEditBox.jsx x: 60 lines of code y: 1 # changes ProxyStatsGathering/src/main/scala/StreamComponents/ConvertToProblemItemFilter.scala x: 44 lines of code y: 1 # changes ProxyStatsGathering/src/main/scala/StreamComponents/FileTypeWantProxyBranch.scala x: 80 lines of code y: 5 # changes ProxyStatsGathering/src/main/scala/StreamComponents/MimeTypeBranch.scala x: 47 lines of code y: 5 # changes ProxyStatsGathering/src/main/scala/StreamComponents/MimeTypeWantProxyBranch.scala x: 64 lines of code y: 5 # changes ProxyStatsGathering/src/main/scala/StreamComponents/ProblemItemDeleteIfEmpty.scala x: 59 lines of code y: 2 # changes app/models/ChartFacetData.scala x: 17 lines of code y: 2 # changes cloudformation/proxy-stats-gathering.yaml x: 136 lines of code y: 4 # changes frontend/app/common/LoadingThrobber.jsx x: 19 lines of code y: 5 # changes frontend/app/common/JobEntry.jsx x: 43 lines of code y: 3 # changes app/helpers/CreateProxySink.scala x: 63 lines of code y: 13 # changes utils/replay_dlq.rb x: 90 lines of code y: 2 # changes utils/dump_index.rb x: 41 lines of code y: 1 # changes frontend/app/testing/test419.jsx x: 28 lines of code y: 1 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/MediaMetadata.scala x: 88 lines of code y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/MediaMetadataMapConverters.scala x: 73 lines of code y: 4 # changes cloudformation/make-dev-stack.rb x: 122 lines of code y: 2 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/SNSClientManager.scala x: 23 lines of code y: 2 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/SQSClientManager.scala x: 8 lines of code y: 4 # changes conf/log4j2.yaml x: 32 lines of code y: 9 # changes app/responses/VersionInfoResponse.scala x: 3 lines of code y: 1 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryRequestBuilder.scala x: 13 lines of code y: 8 # changes app/responses/ErrorListResponse.scala x: 2 lines of code y: 1 # changes frontend/app/common/BytesFormatter.jsx x: 24 lines of code y: 4 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfiguration.scala x: 18 lines of code y: 3 # changes app/helpers/EOSDetect.scala x: 29 lines of code y: 2 # changes lambda/input/src/main/resources/logback.xml x: 15 lines of code y: 1 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ZonedDateTimeEncoder.scala x: 17 lines of code y: 1 # changes
90.0
# changes
  min: 1.0
  average: 7.06
  25th percentile: 2.0
  median: 4.0
  75th percentile: 8.0
  max: 90.0
0 1223.0
lines of code
min: 1.0 | average: 72.33 | 25th percentile: 17.0 | median: 45.0 | 75th percentile: 92.0 | max: 1223.0

Number of Contributors vs. Number of Changes: 358 points

app/auth/BearerTokenAuth.scala x: 2 # contributors y: 13 # changes cloudformation/appstack.yaml x: 4 # contributors y: 90 # changes frontend/app/browse/NewTreeView.tsx x: 2 # contributors y: 9 # changes app/controllers/Auth.scala x: 4 # contributors y: 25 # changes app/controllers/SearchController.scala x: 3 # contributors y: 47 # changes frontend/app/common/NewSearchComponent.tsx x: 2 # contributors y: 14 # changes frontend/app/search/NewBasicSearch.tsx x: 2 # contributors y: 8 # changes frontend/app/browse/BrowseFilter.tsx x: 1 # contributors y: 3 # changes frontend/app/browse/NewBrowseComponent.tsx x: 2 # contributors y: 17 # changes frontend/app/LoginComponent.tsx x: 2 # contributors y: 6 # changes app/controllers/UserController.scala x: 3 # contributors y: 15 # changes app/models/UserProfileDAO.scala x: 3 # contributors y: 6 # changes frontend/app/Users/UserList.jsx x: 3 # contributors y: 13 # changes frontend/app/Users/UserListContent.tsx x: 2 # contributors y: 4 # changes frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 2 # contributors y: 10 # changes lambda/input/src/main/scala/InputLambdaMain.scala x: 3 # contributors y: 43 # changes cloudformation/bucketmonitor.yaml x: 3 # contributors y: 8 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 3 # contributors y: 31 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 3 # contributors y: 20 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfigurationExt.scala x: 3 # contributors y: 9 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxEntryDAO.scala x: 3 # contributors y: 10 # changes lambda/input/src/main/scala/Module.scala x: 3 # contributors y: 4 # changes lambda/input/src/main/scala/TestMain.scala x: 2 # contributors y: 3 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/ProxyGenerators.scala x: 2 # contributors y: 25 # changes frontend/app/Lightbox/LightboxAvailability.tsx x: 1 # contributors y: 1 # changes app/controllers/LightboxController.scala x: 3 # contributors y: 38 # changes app/services/GlacierRestoreActor.scala x: 2 # contributors y: 21 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 2 # contributors y: 5 # changes frontend/app/Lightbox/RestoreStatusComponent.jsx x: 3 # contributors y: 7 # changes app/controllers/ProxiesController.scala x: 2 # contributors y: 39 # changes app/helpers/S3Helper.scala x: 1 # contributors y: 7 # changes app/helpers/UserAvatarHelper.scala x: 1 # contributors y: 12 # changes app/services/BucketScanner.scala x: 2 # contributors y: 35 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/S3ClientManager.scala x: 2 # contributors y: 12 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3ClientExtensions.scala x: 1 # contributors y: 5 # changes app/services/BucketNotificationConfigurations.scala x: 1 # contributors y: 6 # changes app/controllers/ImportController.scala x: 1 # contributors y: 9 # changes app/controllers/ScanTargetController.scala x: 2 # contributors y: 33 # changes app/helpers/ProxyLocator.scala x: 2 # contributors y: 18 # changes app/helpers/S3ToArchiveEntryFlow.scala x: 2 # contributors y: 19 # changes app/helpers/S3XMLProcessor.scala x: 2 # contributors y: 7 # changes app/services/FileMove/CopyMainFile.scala x: 1 # contributors y: 15 # changes app/services/IngestProxyQueue.scala x: 2 # contributors y: 28 # changes common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3RestoreHeader.scala x: 1 # contributors y: 2 # changes conf/logback-deployment.xml x: 1 # contributors y: 19 # changes conf/logback.xml x: 2 # contributors y: 73 # changes frontend/app/ScanTargets/ScanTargetEdit.jsx x: 3 # contributors y: 23 # changes app/helpers/S3Signer.scala x: 2 # contributors y: 11 # changes app/services/AppStartup.scala x: 2 # contributors y: 15 # changes app/services/FileMoveActor.scala x: 1 # contributors y: 13 # changes app/services/FileMoveQueue.scala x: 1 # contributors y: 8 # changes app/Module.scala x: 2 # contributors y: 32 # changes app/controllers/FileMoveController.scala x: 1 # contributors y: 11 # changes testscripts/request-move-file.py x: 1 # contributors y: 4 # changes app/controllers/Application.scala x: 2 # contributors y: 16 # changes app/controllers/JobController.scala x: 2 # contributors y: 31 # changes frontend/app/index.tsx x: 1 # contributors y: 21 # changes ProxyStatsGathering/src/main/scala/LambdaMain.scala x: 2 # contributors y: 2 # changes ProxyStatsGathering/src/main/scala/StreamComponents/ConvertToProblemItemFilter.scala x: 2 # contributors y: 1 # changes
90.0
# changes
  min: 1.0
  average: 7.06
  25th percentile: 2.0
  median: 4.0
  75th percentile: 8.0
  max: 90.0
0 4.0
# contributors
min: 1.0 | average: 1.71 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 2.0 | max: 4.0

Number of Contributors vs. File Size: 358 points

app/auth/BearerTokenAuth.scala x: 2 # contributors y: 247 lines of code cloudformation/appstack.yaml x: 4 # contributors y: 1223 lines of code frontend/app/browse/NewTreeView.tsx x: 2 # contributors y: 132 lines of code app/controllers/Auth.scala x: 4 # contributors y: 439 lines of code app/controllers/SearchController.scala x: 3 # contributors y: 270 lines of code frontend/app/common/NewSearchComponent.tsx x: 2 # contributors y: 194 lines of code frontend/app/search/NewBasicSearch.tsx x: 2 # contributors y: 123 lines of code frontend/app/Lightbox/NewLightbox.tsx x: 2 # contributors y: 257 lines of code frontend/app/browse/BrowseFilter.tsx x: 1 # contributors y: 81 lines of code frontend/app/browse/NewBrowseComponent.tsx x: 2 # contributors y: 271 lines of code frontend/app/LoginComponent.tsx x: 2 # contributors y: 82 lines of code app/controllers/UserController.scala x: 3 # contributors y: 172 lines of code app/models/UserProfileDAO.scala x: 3 # contributors y: 35 lines of code frontend/app/Users/UserList.jsx x: 3 # contributors y: 223 lines of code frontend/app/ItemView/ItemActions.tsx x: 2 # contributors y: 130 lines of code frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 2 # contributors y: 209 lines of code lambda/input/src/main/scala/InputLambdaMain.scala x: 3 # contributors y: 346 lines of code cloudformation/bucketmonitor.yaml x: 3 # contributors y: 132 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 3 # contributors y: 84 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 3 # contributors y: 66 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfigurationExt.scala x: 3 # contributors y: 25 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxEntryDAO.scala x: 3 # contributors y: 55 lines of code lambda/input/src/main/scala/Module.scala x: 3 # contributors y: 13 lines of code lambda/input/src/main/scala/TestMain.scala x: 2 # contributors y: 66 lines of code frontend/app/Lightbox/LightboxAvailability.tsx x: 1 # contributors y: 49 lines of code app/controllers/LightboxController.scala x: 3 # contributors y: 449 lines of code app/services/GlacierRestoreActor.scala x: 2 # contributors y: 233 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 2 # contributors y: 12 lines of code frontend/app/Lightbox/RestoreStatusIndicator.tsx x: 1 # contributors y: 46 lines of code app/controllers/ProxiesController.scala x: 2 # contributors y: 415 lines of code app/helpers/S3Helper.scala x: 1 # contributors y: 33 lines of code app/helpers/UserAvatarHelper.scala x: 1 # contributors y: 93 lines of code app/services/BucketScanner.scala x: 2 # contributors y: 207 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/S3ClientManager.scala x: 2 # contributors y: 47 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3ClientExtensions.scala x: 1 # contributors y: 41 lines of code frontend/app/common/Fileinfo.ts x: 1 # contributors y: 35 lines of code app/services/BucketNotificationConfigurations.scala x: 1 # contributors y: 146 lines of code app/controllers/ImportController.scala x: 1 # contributors y: 203 lines of code app/controllers/ScanTargetController.scala x: 2 # contributors y: 214 lines of code app/helpers/ProxyLocator.scala x: 2 # contributors y: 102 lines of code app/helpers/ProxyLocatorFlow.scala x: 2 # contributors y: 53 lines of code app/helpers/S3ToArchiveEntryFlow.scala x: 2 # contributors y: 101 lines of code app/helpers/S3XMLProcessor.scala x: 2 # contributors y: 165 lines of code app/services/FileMove/CopyProxyFiles.scala x: 1 # contributors y: 91 lines of code app/services/FileMove/DeleteOriginalFiles.scala x: 1 # contributors y: 117 lines of code app/services/IngestProxyQueue.scala x: 2 # contributors y: 180 lines of code app/services/ProxyFrameworkQueue.scala x: 2 # contributors y: 434 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/Indexer.scala x: 2 # contributors y: 92 lines of code conf/logback-deployment.xml x: 1 # contributors y: 86 lines of code app/responses/CheckNotificationResponse.scala x: 1 # contributors y: 2 lines of code conf/logback.xml x: 2 # contributors y: 69 lines of code frontend/app/ScanTargets/ScanTargetEdit.jsx x: 3 # contributors y: 339 lines of code riff-raff.yaml x: 2 # contributors y: 32 lines of code app/services/ClockPerInstance.scala x: 1 # contributors y: 22 lines of code app/services/ClockSingleton.scala x: 2 # contributors y: 43 lines of code app/services/FileMove/ImprovedLargeFileCopier.scala x: 1 # contributors y: 443 lines of code app/services/FileMove/VerifyChecksum.scala x: 1 # contributors y: 65 lines of code app/services/FileMoveActor.scala x: 1 # contributors y: 107 lines of code app/services/FileMoveQueue.scala x: 1 # contributors y: 129 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/DocId.scala x: 2 # contributors y: 17 lines of code app/Module.scala x: 2 # contributors y: 26 lines of code app/controllers/FileMoveController.scala x: 1 # contributors y: 56 lines of code testscripts/hmac-search.py x: 1 # contributors y: 69 lines of code testscripts/request-move-file.py x: 1 # contributors y: 59 lines of code lambda/autodowning/src/main/scala/AutoDowningLambdaMain.scala x: 2 # contributors y: 141 lines of code lambda/autodowning/src/main/scala/models/AkkaMembersResponse.scala x: 2 # contributors y: 3 lines of code app/helpers/ProxyVerifyFlow.scala x: 2 # contributors y: 49 lines of code app/services/LegacyProxiesScanner.scala x: 2 # contributors y: 175 lines of code app/services/ProblemItemRetry.scala x: 2 # contributors y: 58 lines of code app/services/ProxiesRelinker.scala x: 2 # contributors y: 170 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/JobModelDAO.scala x: 2 # contributors y: 88 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ScanTargetDAO.scala x: 2 # contributors y: 117 lines of code app/helpers/LightboxHelper.scala x: 2 # contributors y: 152 lines of code app/helpers/ProxyFramework.scala x: 2 # contributors y: 160 lines of code app/services/DynamoCapacityActor.scala x: 2 # contributors y: 157 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/StorageClass.scala x: 2 # contributors y: 21 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProxyHealth.scala x: 2 # contributors y: 9 lines of code app/auth/Security.scala x: 1 # contributors y: 178 lines of code app/helpers/IndexerFactory.scala x: 1 # contributors y: 8 lines of code frontend/app/admin/AdminContainer.tsx x: 1 # contributors y: 199 lines of code frontend/app/index.tsx x: 1 # contributors y: 157 lines of code app/controllers/DeletedItemsController.scala x: 1 # contributors y: 162 lines of code frontend/app/Context/UserContext.tsx x: 1 # contributors y: 12 lines of code frontend/app/Lightbox/BulkSelectionsScroll.tsx x: 1 # contributors y: 245 lines of code app/helpers/WithScanTarget.scala x: 1 # contributors y: 26 lines of code frontend/app/DeletedItems/DeletedItems.tsx x: 1 # contributors y: 214 lines of code frontend/app/DeletedItems/DeletedItemsTable.tsx x: 1 # contributors y: 101 lines of code frontend/app/Entry/details/MetadataTable.tsx x: 1 # contributors y: 135 lines of code frontend/app/ItemView/FlexMetadata.tsx x: 1 # contributors y: 125 lines of code common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemHitReader.scala x: 2 # contributors y: 34 lines of code frontend/app/JobsList/JobsList.jsx x: 2 # contributors y: 317 lines of code frontend/app/ProxyFramework/ProxyFrameworkAdd.tsx x: 1 # contributors y: 170 lines of code frontend/app/ProxyFramework/multistep/EnterDeploymentComponent.tsx x: 1 # contributors y: 19 lines of code frontend/app/ProxyFramework/multistep/FindDeploymentComponent.tsx x: 1 # contributors y: 134 lines of code frontend/app/ProxyHealthDetail/AttemptRetry.jsx x: 2 # contributors y: 73 lines of code frontend/app/admin/QuickRestore.jsx x: 1 # contributors y: 222 lines of code ProxyStatsGathering/src/main/scala/StreamComponents/FileTypeWantProxyBranch.scala x: 2 # contributors y: 80 lines of code cloudformation/proxy-stats-gathering.yaml x: 2 # contributors y: 136 lines of code
1223.0
lines of code
  min: 1.0
  average: 72.33
  25th percentile: 17.0
  median: 45.0
  75th percentile: 92.0
  max: 1223.0
0 4.0
# contributors
min: 1.0 | average: 1.71 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 2.0 | max: 4.0

Number of Changes vs. Line Churn: 618 points

frontend/package-lock.json x: 58 # changes y: 311676 line churn frontend/package.json x: 64 # changes y: 812 line churn build.sbt x: 67 # changes y: 1193 line churn .github/workflows/build.yml x: 6 # changes y: 302 line churn app/auth/BearerTokenAuth.scala x: 13 # changes y: 892 line churn cloudformation/appstack.yaml x: 90 # changes y: 3949 line churn conf/application.conf x: 56 # changes y: 850 line churn frontend/app/browse/NewTreeView.tsx x: 9 # changes y: 478 line churn app/controllers/Auth.scala x: 25 # changes y: 1943 line churn app/controllers/SearchController.scala x: 47 # changes y: 1282 line churn conf/routes x: 86 # changes y: 371 line churn frontend/app/common/NewSearchComponent.tsx x: 14 # changes y: 584 line churn frontend/app/search/NewBasicSearch.tsx x: 8 # changes y: 380 line churn frontend/app/browse/BrowseFilter.tsx x: 3 # changes y: 196 line churn frontend/app/browse/NewBrowseComponent.tsx x: 17 # changes y: 818 line churn frontend/script/ci.sh x: 1 # changes y: 10 line churn test/controllers/AuthSpec.scala x: 13 # changes y: 1244 line churn app/controllers/UserController.scala x: 15 # changes y: 624 line churn frontend/app/Users/UserListContent.tsx x: 4 # changes y: 178 line churn frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 10 # changes y: 878 line churn lambda/input/src/main/scala/InputLambdaMain.scala x: 43 # changes y: 1744 line churn lambda/input/src/test/scala/InputLambdaMainSpec.scala x: 28 # changes y: 963 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 31 # changes y: 544 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 20 # changes y: 240 line churn test/ProxyFrameworkQueueSpec.scala x: 31 # changes y: 2208 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/ProxyGenerators.scala x: 25 # changes y: 1123 line churn app/controllers/LightboxController.scala x: 38 # changes y: 2218 line churn app/services/GlacierRestoreActor.scala x: 21 # changes y: 1066 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 5 # changes y: 76 line churn frontend/app/Lightbox/RestoreStatusComponent.jsx x: 7 # changes y: 182 line churn frontend/app/types.d.ts x: 22 # changes y: 744 line churn app/controllers/ProxiesController.scala x: 39 # changes y: 2006 line churn app/helpers/UserAvatarHelper.scala x: 12 # changes y: 374 line churn app/services/BucketScanner.scala x: 35 # changes y: 1080 line churn app/controllers/ScanTargetController.scala x: 33 # changes y: 1108 line churn app/helpers/ProxyLocator.scala x: 18 # changes y: 508 line churn app/helpers/S3ToArchiveEntryFlow.scala x: 19 # changes y: 414 line churn app/services/ProxyFrameworkQueue.scala x: 33 # changes y: 2026 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3RestoreHeader.scala x: 2 # changes y: 124 line churn test/IngestProxyQueueSpec.scala x: 23 # changes y: 1686 line churn conf/logback.xml x: 73 # changes y: 517 line churn app/helpers/S3Signer.scala x: 11 # changes y: 636 line churn app/services/FileMove/ImprovedLargeFileCopier.scala x: 9 # changes y: 1765 line churn app/Module.scala x: 32 # changes y: 107 line churn lambda/autodowning/src/test/scala/AutodowningLambdaSpec.scala x: 4 # changes y: 1380 line churn app/controllers/Application.scala x: 16 # changes y: 226 line churn frontend/app/Entry/EntryDetails.jsx x: 28 # changes y: 1550 line churn frontend/app/JobsList/JobsList.jsx x: 15 # changes y: 1590 line churn frontend/app/Lightbox/MyLightbox.jsx x: 16 # changes y: 1318 line churn frontend/app/ScanTargets/ScanTargetsList.jsx x: 17 # changes y: 1508 line churn frontend/app/browse/BrowseComponent.jsx x: 26 # changes y: 2104 line churn frontend/app/index.jsx x: 39 # changes y: 611 line churn public/font-awesome-4.7.0/css/font-awesome.css x: 4 # changes y: 9348 line churn public/font-awesome-4.7.0/fonts/fontawesome-webfont.svg x: 4 # changes y: 10684 line churn public/font-awesome-4.7.0/less/icons.less x: 4 # changes y: 3156 line churn public/stylesheets/main.css x: 55 # changes y: 2997 line churn frontend/yarn.lock x: 9 # changes y: 28010 line churn app/services/ETSProxyActor.scala x: 16 # changes y: 2572 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_services/ProxyGenerators.scala x: 11 # changes y: 1248 line churn
311676.0
line churn
  min: 2.0
  average: 882.15
  25th percentile: 56.0
  median: 138.0
  75th percentile: 346.75
  max: 311676.0
0 90.0
# changes
min: 1.0 | average: 6.95 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 7.0 | max: 90.0

Number of Contributors vs. Line Churn: 358 points

app/auth/BearerTokenAuth.scala x: 2 # contributors y: 892 line churn cloudformation/appstack.yaml x: 4 # contributors y: 3949 line churn frontend/app/browse/NewTreeView.tsx x: 2 # contributors y: 478 line churn app/controllers/Auth.scala x: 4 # contributors y: 1943 line churn app/controllers/SearchController.scala x: 3 # contributors y: 1282 line churn frontend/app/common/NewSearchComponent.tsx x: 2 # contributors y: 584 line churn frontend/app/search/NewBasicSearch.tsx x: 2 # contributors y: 380 line churn frontend/app/Lightbox/NewLightbox.tsx x: 2 # contributors y: 962 line churn frontend/app/browse/BrowseFilter.tsx x: 1 # contributors y: 196 line churn frontend/app/browse/NewBrowseComponent.tsx x: 2 # contributors y: 818 line churn frontend/app/LoginComponent.tsx x: 2 # contributors y: 186 line churn app/controllers/UserController.scala x: 3 # contributors y: 624 line churn app/models/UserProfileDAO.scala x: 3 # contributors y: 122 line churn frontend/app/Users/UserList.jsx x: 3 # contributors y: 1028 line churn frontend/app/ItemView/ItemActions.tsx x: 2 # contributors y: 372 line churn frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 2 # contributors y: 878 line churn lambda/input/src/main/scala/InputLambdaMain.scala x: 3 # contributors y: 1744 line churn cloudformation/bucketmonitor.yaml x: 3 # contributors y: 379 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 3 # contributors y: 544 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 3 # contributors y: 240 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfigurationExt.scala x: 3 # contributors y: 70 line churn lambda/input/src/main/scala/Module.scala x: 3 # contributors y: 32 line churn lambda/input/src/main/scala/TestMain.scala x: 2 # contributors y: 80 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/ProxyGenerators.scala x: 2 # contributors y: 1123 line churn frontend/app/Lightbox/LightboxAvailability.tsx x: 1 # contributors y: 120 line churn app/controllers/LightboxController.scala x: 3 # contributors y: 2218 line churn app/services/GlacierRestoreActor.scala x: 2 # contributors y: 1066 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 2 # contributors y: 76 line churn frontend/app/Lightbox/RestoreStatusComponent.jsx x: 3 # contributors y: 182 line churn app/controllers/BulkDownloadsController.scala x: 2 # contributors y: 1136 line churn app/controllers/ProxiesController.scala x: 2 # contributors y: 2006 line churn app/helpers/UserAvatarHelper.scala x: 1 # contributors y: 374 line churn app/services/BucketScanner.scala x: 2 # contributors y: 1080 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/S3ClientManager.scala x: 2 # contributors y: 248 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3ClientExtensions.scala x: 1 # contributors y: 152 line churn frontend/app/common/Fileinfo.ts x: 1 # contributors y: 84 line churn app/services/BucketNotificationConfigurations.scala x: 1 # contributors y: 758 line churn app/controllers/ImportController.scala x: 1 # contributors y: 636 line churn app/controllers/ScanTargetController.scala x: 2 # contributors y: 1108 line churn app/helpers/ArchiveEntryVerifyFlow.scala x: 2 # contributors y: 158 line churn app/helpers/ProxyLocator.scala x: 2 # contributors y: 508 line churn app/helpers/S3ToArchiveEntryFlow.scala x: 2 # contributors y: 414 line churn app/helpers/S3XMLProcessor.scala x: 2 # contributors y: 440 line churn app/services/FileMove/CopyMainFile.scala x: 1 # contributors y: 971 line churn app/services/FileMove/CopyProxyFiles.scala x: 1 # contributors y: 294 line churn app/services/FileMove/DeleteOriginalFiles.scala x: 1 # contributors y: 530 line churn app/services/IngestProxyQueue.scala x: 2 # contributors y: 752 line churn app/services/ProxyFrameworkQueue.scala x: 2 # contributors y: 2026 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocation.scala x: 2 # contributors y: 430 line churn conf/logback-deployment.xml x: 1 # contributors y: 349 line churn app/responses/CheckNotificationResponse.scala x: 1 # contributors y: 6 line churn conf/logback.xml x: 2 # contributors y: 517 line churn frontend/app/ScanTargets/MonitoringSetupCheck.tsx x: 1 # contributors y: 250 line churn frontend/app/ScanTargets/ScanTargetEdit.jsx x: 3 # contributors y: 1406 line churn app/helpers/S3Signer.scala x: 2 # contributors y: 636 line churn app/services/ClockPerInstance.scala x: 1 # contributors y: 62 line churn app/services/ClockSingleton.scala x: 2 # contributors y: 220 line churn app/services/FileMove/ImprovedLargeFileCopier.scala x: 1 # contributors y: 1765 line churn app/services/FileMove/VerifyChecksum.scala x: 1 # contributors y: 158 line churn app/services/FileMoveActor.scala x: 1 # contributors y: 473 line churn app/Module.scala x: 2 # contributors y: 107 line churn app/helpers/ParanoidS3Source.scala x: 2 # contributors y: 328 line churn app/services/GenericSqsActor.scala x: 2 # contributors y: 298 line churn testscripts/hmac-search.py x: 1 # contributors y: 313 line churn testscripts/hmac_client.py x: 1 # contributors y: 405 line churn testscripts/request-move-file.py x: 1 # contributors y: 340 line churn lambda/autodowning/src/main/scala/ApacheComms.scala x: 1 # contributors y: 247 line churn lambda/autodowning/src/main/scala/models/AkkaMembersResponse.scala x: 2 # contributors y: 50 line churn app/helpers/HasThumbnailFilter.scala x: 2 # contributors y: 148 line churn app/services/LegacyProxiesScanner.scala x: 2 # contributors y: 684 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxBulkEntryDAO.scala x: 2 # contributors y: 260 line churn lambda/autodowning/src/main/scala/models/LifecycleMessageDecoder.scala x: 2 # contributors y: 122 line churn app/controllers/JobController.scala x: 2 # contributors y: 982 line churn app/controllers/ProxyFrameworkAdminController.scala x: 2 # contributors y: 694 line churn app/helpers/LightboxHelper.scala x: 2 # contributors y: 782 line churn app/helpers/LightboxStreamComponents/LightboxDynamoSource.scala x: 1 # contributors y: 370 line churn app/helpers/LightboxStreamComponents/LookupLightboxEntryFlow.scala x: 1 # contributors y: 138 line churn app/helpers/ProxyFramework.scala x: 2 # contributors y: 566 line churn app/requests/JobSearchRequest.scala x: 2 # contributors y: 202 line churn app/services/FileMove/UpdateIndexRecords.scala x: 1 # contributors y: 792 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocationDAO.scala x: 2 # contributors y: 488 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/ZonedTimeFormat.scala x: 2 # contributors y: 44 line churn app/auth/Security.scala x: 1 # contributors y: 737 line churn app/helpers/IndexerFactory.scala x: 1 # contributors y: 32 line churn app/requests/ProxyImportRequest.scala x: 1 # contributors y: 30 line churn app/controllers/BrowseCollectionController.scala x: 2 # contributors y: 1016 line churn frontend/app/admin/AdminContainer.tsx x: 1 # contributors y: 494 line churn frontend/app/index.tsx x: 1 # contributors y: 614 line churn app/auth/User.scala x: 1 # contributors y: 76 line churn app/controllers/DeletedItemsController.scala x: 1 # contributors y: 518 line churn frontend/app/Entry/details/LightboxInsert.tsx x: 1 # contributors y: 226 line churn frontend/app/Login/LoginStatusComponent.tsx x: 1 # contributors y: 394 line churn frontend/app/Lightbox/BulkSelectionsScroll.tsx x: 1 # contributors y: 646 line churn app/models/TranscoderMessage.scala x: 2 # contributors y: 138 line churn app/responses/BulkDownloadInitiateResponse.scala x: 2 # contributors y: 18 line churn frontend/app/ItemView/FlexMetadataEntry.tsx x: 1 # contributors y: 104 line churn app/helpers/LightboxStreamComponents/UpdateLightboxIndexInfoSink.scala x: 2 # contributors y: 212 line churn frontend/app/Entry/EntryThumbnail.jsx x: 2 # contributors y: 292 line churn frontend/app/JobsList/JobsList.jsx x: 2 # contributors y: 1590 line churn frontend/app/ProxyFramework/multistep/ConfirmationComponent.jsx x: 2 # contributors y: 346 line churn frontend/app/ScanTargets/ScanTargetActionsBox.tsx x: 1 # contributors y: 276 line churn frontend/app/ScanTargets/ScanTargetsListContent.tsx x: 1 # contributors y: 174 line churn frontend/app/admin/QuickRestore.jsx x: 1 # contributors y: 668 line churn frontend/app/common/ErrorViewComponent.jsx x: 2 # contributors y: 312 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProblemItemCount.scala x: 2 # contributors y: 12 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/MediaMetadata.scala x: 2 # contributors y: 454 line churn
3949.0
line churn
  min: 4.0
  average: 270.52
  25th percentile: 57.5
  median: 138.0
  75th percentile: 338.5
  max: 3949.0
0 4.0
# contributors
min: 1.0 | average: 1.71 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 2.0 | max: 4.0

File Size vs. Line Churn: 358 points

app/auth/BearerTokenAuth.scala x: 247 lines of code y: 892 line churn cloudformation/appstack.yaml x: 1223 lines of code y: 3949 line churn frontend/app/browse/NewTreeView.tsx x: 132 lines of code y: 478 line churn app/controllers/Auth.scala x: 439 lines of code y: 1943 line churn app/controllers/SearchController.scala x: 270 lines of code y: 1282 line churn frontend/app/common/NewSearchComponent.tsx x: 194 lines of code y: 584 line churn frontend/app/search/NewBasicSearch.tsx x: 123 lines of code y: 380 line churn frontend/app/Lightbox/NewLightbox.tsx x: 257 lines of code y: 962 line churn frontend/app/browse/BrowseFilter.tsx x: 81 lines of code y: 196 line churn frontend/app/browse/NewBrowseComponent.tsx x: 271 lines of code y: 818 line churn frontend/app/LoginComponent.tsx x: 82 lines of code y: 186 line churn app/controllers/UserController.scala x: 172 lines of code y: 624 line churn app/models/UserProfileDAO.scala x: 35 lines of code y: 122 line churn frontend/app/Users/UserList.jsx x: 223 lines of code y: 1028 line churn frontend/app/ItemView/ItemActions.tsx x: 130 lines of code y: 372 line churn frontend/app/Lightbox/LightboxDetailsInsert.tsx x: 209 lines of code y: 878 line churn lambda/input/src/main/scala/InputLambdaMain.scala x: 346 lines of code y: 1744 line churn cloudformation/bucketmonitor.yaml x: 132 lines of code y: 379 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntry.scala x: 84 lines of code y: 544 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryHitReader.scala x: 66 lines of code y: 240 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveHunterConfigurationExt.scala x: 25 lines of code y: 70 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxEntryDAO.scala x: 55 lines of code y: 240 line churn lambda/input/src/main/scala/Module.scala x: 13 lines of code y: 32 line churn lambda/input/src/main/scala/TestMain.scala x: 66 lines of code y: 80 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/ProxyGenerators.scala x: 260 lines of code y: 1123 line churn frontend/app/Lightbox/LightboxAvailability.tsx x: 49 lines of code y: 120 line churn app/controllers/LightboxController.scala x: 449 lines of code y: 2218 line churn app/services/GlacierRestoreActor.scala x: 233 lines of code y: 1066 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/RestoreStatus.scala x: 12 lines of code y: 76 line churn frontend/app/Lightbox/RestoreStatusComponent.jsx x: 66 lines of code y: 182 line churn frontend/app/Lightbox/RestoreStatusIndicator.tsx x: 46 lines of code y: 110 line churn app/controllers/BulkDownloadsController.scala x: 256 lines of code y: 1136 line churn app/controllers/ProxiesController.scala x: 415 lines of code y: 2006 line churn app/helpers/S3Helper.scala x: 33 lines of code y: 190 line churn app/helpers/UserAvatarHelper.scala x: 93 lines of code y: 374 line churn app/services/BucketScanner.scala x: 207 lines of code y: 1080 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/S3ClientManager.scala x: 47 lines of code y: 248 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3ClientExtensions.scala x: 41 lines of code y: 152 line churn frontend/app/common/Fileinfo.ts x: 35 lines of code y: 84 line churn app/services/BucketNotificationConfigurations.scala x: 146 lines of code y: 758 line churn app/controllers/ImportController.scala x: 203 lines of code y: 636 line churn app/controllers/ScanTargetController.scala x: 214 lines of code y: 1108 line churn app/helpers/ArchiveEntryVerifyFlow.scala x: 47 lines of code y: 158 line churn app/helpers/ProxyLocator.scala x: 102 lines of code y: 508 line churn app/helpers/ProxyLocatorFlow.scala x: 53 lines of code y: 164 line churn app/helpers/S3ToArchiveEntryFlow.scala x: 101 lines of code y: 414 line churn app/helpers/S3XMLProcessor.scala x: 165 lines of code y: 440 line churn app/services/FileMove/CopyMainFile.scala x: 96 lines of code y: 971 line churn app/services/FileMove/CopyProxyFiles.scala x: 91 lines of code y: 294 line churn app/services/FileMove/DeleteOriginalFiles.scala x: 117 lines of code y: 530 line churn app/services/IngestProxyQueue.scala x: 180 lines of code y: 752 line churn app/services/ProxyFrameworkQueue.scala x: 434 lines of code y: 2026 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/Indexer.scala x: 92 lines of code y: 443 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocation.scala x: 105 lines of code y: 430 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/S3RestoreHeader.scala x: 48 lines of code y: 124 line churn conf/logback-deployment.xml x: 86 lines of code y: 349 line churn app/responses/CheckNotificationResponse.scala x: 2 lines of code y: 6 line churn conf/logback.xml x: 69 lines of code y: 517 line churn frontend/app/ScanTargets/MonitoringSetupCheck.tsx x: 92 lines of code y: 250 line churn frontend/app/ScanTargets/ScanTargetEdit.jsx x: 339 lines of code y: 1406 line churn riff-raff.yaml x: 32 lines of code y: 82 line churn app/helpers/DigestSink.scala x: 44 lines of code y: 118 line churn app/helpers/S3Signer.scala x: 179 lines of code y: 636 line churn app/services/AppStartup.scala x: 45 lines of code y: 244 line churn app/services/ClockPerInstance.scala x: 22 lines of code y: 62 line churn app/services/ClockSingleton.scala x: 43 lines of code y: 220 line churn app/services/FileMove/ImprovedLargeFileCopier.scala x: 443 lines of code y: 1765 line churn app/services/FileMove/VerifyChecksum.scala x: 65 lines of code y: 158 line churn app/services/FileMove/VerifySource.scala x: 49 lines of code y: 162 line churn app/services/FileMoveActor.scala x: 107 lines of code y: 473 line churn app/services/FileMoveQueue.scala x: 129 lines of code y: 634 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/DocId.scala x: 17 lines of code y: 80 line churn app/Module.scala x: 26 lines of code y: 107 line churn app/controllers/FileMoveController.scala x: 56 lines of code y: 292 line churn app/helpers/ParanoidS3Source.scala x: 101 lines of code y: 328 line churn app/services/GenericSqsActor.scala x: 84 lines of code y: 298 line churn cloudformation/make-dev-config.rb x: 83 lines of code y: 242 line churn testscripts/build-id-list.py x: 38 lines of code y: 189 line churn testscripts/hmac-search.py x: 69 lines of code y: 313 line churn testscripts/hmac_client.py x: 86 lines of code y: 405 line churn testscripts/request-move-file.py x: 59 lines of code y: 340 line churn lambda/autodowning/src/main/scala/ApacheComms.scala x: 92 lines of code y: 247 line churn lambda/autodowning/src/main/scala/AutoDowningLambdaMain.scala x: 141 lines of code y: 1063 line churn lambda/autodowning/src/main/scala/models/AkkaMembersResponse.scala x: 3 lines of code y: 50 line churn ProxyStatsGathering/src/main/scala/MainContent.scala x: 126 lines of code y: 442 line churn app/helpers/HasThumbnailFilter.scala x: 46 lines of code y: 148 line churn app/services/BulkThumbnailer.scala x: 84 lines of code y: 246 line churn app/services/LegacyProxiesScanner.scala x: 175 lines of code y: 684 line churn app/services/ProblemItemRetry.scala x: 58 lines of code y: 226 line churn app/services/ProxiesRelinker.scala x: 170 lines of code y: 474 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/JobModelDAO.scala x: 88 lines of code y: 384 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/LightboxBulkEntryDAO.scala x: 52 lines of code y: 260 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ScanTargetDAO.scala x: 117 lines of code y: 444 line churn lambda/autodowning/src/main/scala/models/EnhancedLambdaLogger.scala x: 23 lines of code y: 54 line churn lambda/autodowning/src/main/scala/models/LifecycleMessage.scala x: 32 lines of code y: 148 line churn ProxyStatsGathering/src/main/scala/DockerMain.scala x: 61 lines of code y: 408 line churn app/controllers/Application.scala x: 31 lines of code y: 226 line churn app/controllers/JobController.scala x: 118 lines of code y: 982 line churn app/controllers/ProxyFrameworkAdminController.scala x: 215 lines of code y: 694 line churn app/helpers/DDBSink.scala x: 67 lines of code y: 222 line churn app/helpers/LightboxHelper.scala x: 152 lines of code y: 782 line churn app/helpers/LightboxStreamComponents/BulkRestoreStatsSink.scala x: 65 lines of code y: 190 line churn app/helpers/LightboxStreamComponents/LightboxDynamoSource.scala x: 89 lines of code y: 370 line churn app/helpers/LightboxStreamComponents/LookupLightboxEntryFlow.scala x: 50 lines of code y: 138 line churn app/helpers/LightboxStreamComponents/RemoveLightboxEntrySink.scala x: 41 lines of code y: 114 line churn app/helpers/ProxyFramework.scala x: 160 lines of code y: 566 line churn app/models/OAuthTokenEntryDAO.scala x: 45 lines of code y: 190 line churn app/requests/JobSearchRequest.scala x: 63 lines of code y: 202 line churn app/services/DynamoCapacityActor.scala x: 157 lines of code y: 632 line churn app/services/FileMove/UpdateIndexRecords.scala x: 146 lines of code y: 792 line churn app/services/JobPurgerActor.scala x: 94 lines of code y: 441 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyLocationDAO.scala x: 72 lines of code y: 488 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProxyTranscodeFramework/RequestModel.scala x: 17 lines of code y: 72 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/StorageClass.scala x: 21 lines of code y: 86 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/ClientManagerBase.scala x: 22 lines of code y: 72 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/clientManagers/DynamoClientManager.scala x: 18 lines of code y: 142 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/ZonedTimeFormat.scala x: 10 lines of code y: 44 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/JobModel.scala x: 54 lines of code y: 260 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProxyFrameworkInstanceDAO.scala x: 32 lines of code y: 124 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/QueryRemaps.scala x: 14 lines of code y: 56 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ScanTarget.scala x: 22 lines of code y: 120 line churn app/auth/Security.scala x: 178 lines of code y: 737 line churn app/helpers/IndexerFactory.scala x: 8 lines of code y: 32 line churn app/requests/ProxyImportRequest.scala x: 3 lines of code y: 30 line churn app/controllers/BrowseCollectionController.scala x: 116 lines of code y: 1016 line churn app/requests/SpecificImportRequest.scala x: 5 lines of code y: 12 line churn frontend/app/admin/AdminContainer.tsx x: 199 lines of code y: 494 line churn frontend/app/admin/ManualImporter.tsx x: 149 lines of code y: 352 line churn frontend/app/index.tsx x: 157 lines of code y: 614 line churn app/auth/User.scala x: 4 lines of code y: 76 line churn app/controllers/DeletedItemsController.scala x: 162 lines of code y: 518 line churn app/controllers/PathCacheController.scala x: 51 lines of code y: 237 line churn app/controllers/ProxyHealthController.scala x: 99 lines of code y: 420 line churn app/controllers/VersionController.scala x: 67 lines of code y: 182 line churn app/helpers/HttpClientFactory.scala x: 5 lines of code y: 22 line churn app/helpers/HttpClientFactoryReal.scala x: 7 lines of code y: 28 line churn frontend/app/Entry/EntryDetails.tsx x: 110 lines of code y: 254 line churn frontend/app/Entry/EntryJobs.jsx x: 96 lines of code y: 302 line churn frontend/app/Entry/EntryLightboxBanner.tsx x: 62 lines of code y: 156 line churn frontend/app/Entry/MediaPreview.tsx x: 177 lines of code y: 428 line churn frontend/app/ItemView/ItemView.tsx x: 162 lines of code y: 492 line churn frontend/app/Login/LoginStatusComponent.tsx x: 79 lines of code y: 394 line churn frontend/app/admin/About.tsx x: 56 lines of code y: 134 line churn frontend/app/Lightbox/BulkSelectionsScroll.tsx x: 245 lines of code y: 646 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/PathCacheIndexer.scala x: 68 lines of code y: 331 line churn frontend/app/admin/PathCacheAdmin.jsx x: 95 lines of code y: 358 line churn app/models/JobReportNew.scala x: 24 lines of code y: 108 line churn app/models/TranscoderMessage.scala x: 45 lines of code y: 138 line churn app/requests/SearchRequest.scala x: 33 lines of code y: 138 line churn app/requests/UserProfileFieldUpdate.scala x: 14 lines of code y: 80 line churn frontend/app/DeletedItems/DeletedItems.tsx x: 214 lines of code y: 544 line churn frontend/app/DeletedItems/DeletedItemsStreamConsumer.jsx x: 58 lines of code y: 134 line churn frontend/app/DeletedItems/DeletedItemsTable.tsx x: 101 lines of code y: 312 line churn frontend/app/browse/BrowsePathSummary.jsx x: 125 lines of code y: 897 line churn frontend/app/browse/BrowseSummaryDisplay.tsx x: 79 lines of code y: 190 line churn frontend/app/Entry/MediaPlayer.tsx x: 121 lines of code y: 408 line churn frontend/app/Entry/ReconnectDialog.tsx x: 101 lines of code y: 226 line churn frontend/app/Entry/details/MetadataTable.tsx x: 135 lines of code y: 404 line churn frontend/app/Entry/EntryPreviewSwitcher.tsx x: 51 lines of code y: 118 line churn frontend/app/Entry/FileSizeView.jsx x: 48 lines of code y: 126 line churn frontend/app/ItemView/FlexMetadata.tsx x: 125 lines of code y: 350 line churn frontend/app/ItemView/FlexMetadataEntry.tsx x: 41 lines of code y: 104 line churn app/helpers/LightboxStreamComponents/RemoveLightboxIndexInfoSink.scala x: 43 lines of code y: 166 line churn app/helpers/LightboxStreamComponents/SaveLightboxEntryFlow.scala x: 54 lines of code y: 174 line churn app/helpers/LightboxStreamComponents/UpdateLightboxIndexInfoSink.scala x: 53 lines of code y: 212 line churn app/helpers/SearchHitToArchiveEntryFlow.scala x: 39 lines of code y: 100 line churn app/services/IndexManagement.scala x: 60 lines of code y: 236 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemCountHitReader.scala x: 26 lines of code y: 114 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemHitReader.scala x: 34 lines of code y: 142 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ProblemItemIndexer.scala x: 96 lines of code y: 414 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/IndexerErrors.scala x: 23 lines of code y: 84 line churn frontend/app/BaseStyles.ts x: 36 lines of code y: 102 line churn frontend/app/Entry/EntryThumbnail.jsx x: 97 lines of code y: 292 line churn frontend/app/JobsList/JobsFilterComponent.jsx x: 119 lines of code y: 424 line churn frontend/app/JobsList/JobsList.jsx x: 317 lines of code y: 1590 line churn frontend/app/JobsList/JobsListContent.tsx x: 106 lines of code y: 260 line churn frontend/app/JobsList/ResubmitComponent.jsx x: 83 lines of code y: 254 line churn frontend/app/ProxyFramework/ProxyFrameworkAdd.tsx x: 170 lines of code y: 392 line churn frontend/app/ProxyFramework/ProxyFrameworkContent.tsx x: 40 lines of code y: 92 line churn frontend/app/ProxyFramework/ProxyFrameworkList.tsx x: 68 lines of code y: 156 line churn frontend/app/ProxyFramework/multistep/ConfirmationComponent.jsx x: 41 lines of code y: 346 line churn frontend/app/ProxyFramework/multistep/EnterDeploymentComponent.tsx x: 19 lines of code y: 50 line churn frontend/app/ProxyFramework/multistep/FindDeploymentComponent.tsx x: 134 lines of code y: 338 line churn frontend/app/ProxyFramework/multistep/InitiateAddComponent.tsx x: 25 lines of code y: 60 line churn frontend/app/ProxyHealth/ProxyHealthDash.jsx x: 163 lines of code y: 420 line churn frontend/app/ProxyHealthDetail/AttemptRetry.jsx x: 73 lines of code y: 178 line churn frontend/app/ProxyHealthDetail/ByCollectionChart.jsx x: 98 lines of code y: 222 line churn frontend/app/ProxyHealthDetail/GeneralOverviewChart.jsx x: 84 lines of code y: 196 line churn frontend/app/ProxyHealthDetail/ProxyHealthDetail.jsx x: 214 lines of code y: 634 line churn frontend/app/ScanTargets/ScanTargetActionsBox.tsx x: 120 lines of code y: 276 line churn frontend/app/ScanTargets/ScanTargetsList.tsx x: 88 lines of code y: 270 line churn frontend/app/Users/CollectionSelector.tsx x: 36 lines of code y: 92 line churn frontend/app/Users/DepartmentSelector.tsx x: 28 lines of code y: 64 line churn frontend/app/admin/AdminFront.tsx x: 17 lines of code y: 42 line churn frontend/app/admin/ErrorCatcher.tsx x: 33 lines of code y: 100 line churn frontend/app/admin/QuickRestore.jsx x: 222 lines of code y: 668 line churn frontend/app/browse/BulkLightboxAdd.jsx x: 84 lines of code y: 486 line churn frontend/app/common/BreadcrumbComponent.tsx x: 35 lines of code y: 98 line churn frontend/app/common/ErrorViewComponent.jsx x: 74 lines of code y: 312 line churn frontend/app/common/GenericDropdown.tsx x: 15 lines of code y: 36 line churn frontend/app/common/SizeInput.jsx x: 84 lines of code y: 258 line churn frontend/app/common/TickCrossIcon.tsx x: 9 lines of code y: 24 line churn frontend/app/common/TimeIntervalComponent.jsx x: 88 lines of code y: 296 line churn app/helpers/ItemFolderHelper.scala x: 57 lines of code y: 265 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_helpers/PathCacheExtractor.scala x: 71 lines of code y: 258 line churn app/services/FileMove/GenericMoveActor.scala x: 27 lines of code y: 82 line churn app/services/BucketScannerFunctions.scala x: 36 lines of code y: 110 line churn frontend/app/common/AutocompletingEditBox.jsx x: 60 lines of code y: 140 line churn ProxyStatsGathering/scripts/rundev.py x: 133 lines of code y: 408 line churn ProxyStatsGathering/src/main/scala/StreamComponents/FileTypeWantProxyBranch.scala x: 80 lines of code y: 252 line churn ProxyStatsGathering/src/main/scala/StreamComponents/GroupCounter.scala x: 39 lines of code y: 110 line churn ProxyStatsGathering/src/main/scala/StreamComponents/GroupedResultCounter.scala x: 46 lines of code y: 178 line churn ProxyStatsGathering/src/main/scala/StreamComponents/IsGlacierBranch.scala x: 59 lines of code y: 186 line churn ProxyStatsGathering/src/main/scala/StreamComponents/MimeTypeBranch.scala x: 47 lines of code y: 142 line churn ProxyStatsGathering/src/main/scala/StreamComponents/MimeTypeWantProxyBranch.scala x: 64 lines of code y: 206 line churn ProxyStatsGathering/src/main/scala/StreamComponents/ProblemItemDeleteIfEmpty.scala x: 59 lines of code y: 160 line churn app/helpers/ProblemItemReproxySink.scala x: 59 lines of code y: 148 line churn cloudformation/proxy-stats-gathering.yaml x: 136 lines of code y: 282 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/ProblemItemCount.scala x: 3 lines of code y: 12 line churn frontend/app/common/TimestampDiffComponent.jsx x: 18 lines of code y: 44 line churn app/helpers/CreateProxySink.scala x: 63 lines of code y: 220 line churn utils/replay_dlq.rb x: 90 lines of code y: 244 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/MediaMetadata.scala x: 88 lines of code y: 454 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/cmn_models/MediaMetadataMapConverters.scala x: 73 lines of code y: 242 line churn utils/copy_dynamo_table.rb x: 35 lines of code y: 74 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ArchiveEntryRequestBuilder.scala x: 13 lines of code y: 60 line churn frontend/app/common/BytesFormatter.jsx x: 24 lines of code y: 66 line churn lambda/input/src/main/resources/log4j2.yaml x: 25 lines of code y: 86 line churn app/helpers/EOSDetect.scala x: 29 lines of code y: 90 line churn common/src/main/scala/com/theguardian/multimedia/archivehunter/common/ZonedDateTimeEncoder.scala x: 17 lines of code y: 21 line churn
3949.0
line churn
  min: 4.0
  average: 270.52
  25th percentile: 57.5
  median: 138.0
  75th percentile: 338.5
  max: 3949.0
0 1223.0
lines of code
min: 1.0 | average: 72.33 | 25th percentile: 17.0 | median: 45.0 | 75th percentile: 92.0 | max: 1223.0