Overview
File Change Frequency Overall
  • There are 1,322 files with 94,364 lines of code.
    • 3 files changed more than 100 times (822 lines of code)
    • 24 files changed 51-100 times (7,174 lines of code)
    • 159 files changed 21-50 times (22,921 lines of code)
    • 567 files changed 6-20 times (41,014 lines of code)
    • 569 files changed 1-5 times (22,433 lines of code)
<1% | 7% | 24% | 43% | 23%
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 1,322 files with 94,364 lines of code.
    • 1 file changed by more than 25 contributors (119 lines of code)
    • 104 files changed by 11-25 contributors (19,199 lines of code)
    • 307 files changed by 6-10 contributors (32,030 lines of code)
    • 615 files changed by 2-5 contributors (30,365 lines of code)
    • 295 files changed by 1 contributor (12,651 lines of code)
<1% | 20% | 33% | 32% | 13%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
ts, scala, json, md, yaml, js, snap, xml, t, sh, gitignore, properties, yml, mjs, sbt, txt, sc, svg, prettierignore
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
scala2% | 7% | 36% | 43% | 10%
ts<1% | 8% | 12% | 45% | 32%
yaml0% | 6% | 44% | 32% | 16%
t0% | 0% | 0% | 27% | 72%
xml0% | 0% | 0% | 13% | 86%
js0% | 0% | 0% | 100% | 0%
sc0% | 0% | 0% | 100% | 0%
mjs0% | 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
handlers1% | 5% | 23% | 50% | 19%
project100% | 0% | 0% | 0% | 0%
modules0% | 18% | 13% | 30% | 37%
cdk0% | 6% | 29% | 32% | 31%
lib0% | 7% | 43% | 35% | 13%
buildcheck0% | 0% | 63% | 5% | 30%
_templates0% | 0% | 0% | 32% | 67%
ROOT0% | 0% | 0% | 0% | 100%
.devcontainer0% | 0% | 0% | 0% | 100%
.github0% | 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
119 - 2018-06-06 2026-10-07 409 38 +2342 / -2020 john.duffell john.duffell
Handler.scala
in handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops
552 14 2019-05-20 2026-04-20 122 15 +4255 / -2554 thomas.w.richards andradeolivier
alarmMappings.ts
in handlers/alarms-handler/src
151 - 2024-04-24 2026-10-06 113 18 +1003 / -592 tom.forbes graham.hopgood
Handler.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
191 4 2018-07-13 2026-09-07 100 25 +2783 / -1860 pvighi andradeolivier
ProductMoveEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move
216 2 2022-06-30 2025-09-17 99 14 +3337 / -3603 john.duffell john.duffell
SalesforceHolidayStopRequest.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
356 10 2019-05-16 2026-04-20 99 15 +2781 / -1552 thomas.w.richards andradeolivier
cfn.yaml
in handlers/product-move-api
636 - 2022-05-12 2026-10-05 93 16 +2651 / -1070 john.duffell john.duffell
Handler.scala
in handlers/identity-backfill/src/main/scala/com/gu/identityBackfill
194 6 2018-03-12 2026-05-05 83 19 +1441 / -879 john.duffell andradeolivier
SubscriptionCancelEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel
168 2 2022-09-01 2026-10-05 78 13 +2238 / -1366 john.duffell john.duffell
ZuoraClient.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest
107 4 2022-05-17 2025-06-26 69 12 +1236 / -717 john.duffell john.duffell
Salesforce.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
41 2 2019-05-30 2024-10-18 66 15 +656 / -554 kelvin.chappell pascal
SubscriptionUpdate.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora
102 4 2022-10-28 2025-12-01 65 11 +1993 / -3127 jon.flynn 108136057+gu-scala-steward-...
productCatalogSchema.ts
in modules/product-catalog/src
2519 - 2024-02-28 2026-09-29 64 11 +19223 / -10689 rupert.bates pgithub5
WireModel.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
203 7 2018-08-06 2026-07-13 62 15 +1404 / -529 patricio.vighi graham.hopgood
discountEndpoint.ts
in handlers/discount-api/src
251 6 2023-12-20 2026-08-21 61 10 +1887 / -1179 rupert.bates andradeolivier
SalesforceHolidayStopRequestsDetail.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
99 4 2019-07-18 2024-03-06 60 13 +1097 / -768 kelvin.chappell andrea.diotallevi
productCatalog.ts
in modules/product-catalog/src
214 5 2024-02-28 2026-09-17 60 12 +1607 / -678 rupert.bates rupert.bates
NewProductApi.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
52 2 2018-08-20 2026-07-23 57 17 +1463 / -1117 patricio.vighi graham.hopgood
zuoraToProductNameMappings.ts
in modules/product-catalog/src
234 - 2024-02-28 2026-09-29 57 11 +1113 / -146 rupert.bates pgithub5
productToDiscountMapping.ts
in handlers/discount-api/src
155 6 2023-12-04 2026-05-15 55 8 +1440 / -916 rupert.bates john.duffell
504 1 2024-02-02 2025-09-17 53 7 +4225 / -2207 andrea.diotallevi john.duffell
WireHolidayStopRequest.scala
in handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops
167 7 2019-07-31 2026-04-20 52 11 +1074 / -600 tom.richards andradeolivier
DeliveryCreditProcessor.scala
in handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor
222 7 2020-01-27 2026-08-24 52 16 +1148 / -413 kelvin.chappell andradeolivier
GetSubscription.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora
76 3 2022-05-12 2025-09-17 51 12 +493 / -171 john.duffell john.duffell
eligibilityChecker.ts
in handlers/discount-api/src
126 2 2023-12-08 2026-07-02 51 8 +880 / -588 rupert.bates rupert.bates
index.ts
in handlers/alarms-handler/src
152 6 2024-03-22 2026-07-02 51 11 +2461 / -1343 andrea.diotallevi rupert.bates
Handler.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
189 9 2021-04-29 2026-10-07 51 15 +1338 / -553 ricardo.costa john.duffell
InvoicingApiRefund.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/invoicingapi
75 2 2022-10-03 2025-06-26 50 13 +655 / -229 rupert.bates john.duffell
index.ts
in handlers/discount-api/src
94 4 2023-11-15 2026-08-21 50 6 +700 / -470 rupert.bates andradeolivier
zuoraClient.ts
in modules/zuora/src
64 2 2023-12-20 2026-08-21 49 9 +737 / -473 rupert.bates andradeolivier
ProductMoveEndpointTypes.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move
53 - 2022-06-30 2025-12-01 48 12 +458 / -188 john.duffell 108136057+gu-scala-steward-...
SendConfirmationEmail.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email
57 3 2018-07-31 2026-03-25 48 15 +557 / -567 patricio.vighi graham.hopgood
Handler.scala
in handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge
85 4 2018-07-06 2024-10-18 48 9 +1385 / -1017 john.duffell pascal
Handler.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
92 3 2019-05-22 2026-08-17 48 13 +627 / -428 kelvin.chappell andradeolivier
HandlerIAP.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
129 5 2023-02-27 2025-12-01 48 12 +2275 / -2149 jon.flynn 108136057+gu-scala-steward-...
SfQueries.scala
in handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api
590 1 2018-11-09 2023-03-06 48 13 +1862 / -556 patricio.vighi pgithub5
cfn.yaml
in handlers/holiday-stop-api
406 - 2019-05-20 2024-10-18 47 17 +1305 / -274 thomas.w.richards pascal
cfn.yaml
in handlers/sf-datalake-export
592 - 2018-09-28 2025-10-10 47 17 +1382 / -133 patricio.vighi michael.mcnamara
GetAccount.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora
125 3 2022-08-03 2025-06-26 46 12 +1150 / -313 37303488+01jonathanf john.duffell
Types.scala
in lib/handler/src/main/scala/com/gu/util/reader
143 13 2018-03-12 2026-01-26 46 11 +1091 / -516 john.duffell andradeolivier
build.ts
in buildcheck/data
994 - 2025-10-03 2026-10-05 46 10 +1635 / -568 john.duffell john.duffell
index.ts
in handlers/mparticle-api/src
161 4 2025-05-28 2026-09-29 45 8 +2542 / -1512 andre.silva.mindera juabara
AvailableProductMovesEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/available
190 5 2022-06-30 2025-06-26 45 12 +1322 / -405 john.duffell john.duffell
Processor.scala
in lib/credit-processor/src/main/scala/com/gu/creditprocessor
281 7 2020-01-17 2026-08-24 44 16 +1316 / -379 kelvin.chappell andradeolivier
cfn.yaml
in handlers/contact-us-api
327 - 2020-09-28 2024-10-18 44 17 +1475 / -740 ricardo.costa pascal
ZuoraIds.scala
in lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog
417 1 2022-09-01 2026-07-16 44 16 +2581 / -1540 john.duffell john.duffell
Handler.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
52 3 2018-08-02 2026-06-29 43 15 +497 / -405 patricio.vighi andradeolivier
IdentityBackfillSteps.scala
in handlers/identity-backfill/src/main/scala/com/gu/identityBackfill
102 4 2018-03-12 2026-05-05 43 9 +725 / -502 john.duffell andradeolivier
RefundSupporterPlus.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/refund
131 5 2023-03-10 2025-09-17 43 9 +930 / -483 rupert.bates john.duffell
SalesforceConnector.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
140 12 2021-03-18 2025-09-17 43 12 +927 / -451 david.pepper john.duffell
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
getUnpaidInvoices.ts
in handlers/write-off-unpaid-invoices/src/handlers
8614 1 2025-05-29 2026-06-29 13 7 +112210 / -31 andrea.diotallevi andradeolivier
productCatalogSchema.ts
in modules/product-catalog/src
2519 - 2024-02-28 2026-09-29 64 11 +19223 / -10689 rupert.bates pgithub5
ProductMoveEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move
216 2 2022-06-30 2025-09-17 99 14 +3337 / -3603 john.duffell john.duffell
Handler.scala
in handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops
552 14 2019-05-20 2026-04-20 122 15 +4255 / -2554 thomas.w.richards andradeolivier
504 1 2024-02-02 2025-09-17 53 7 +4225 / -2207 andrea.diotallevi john.duffell
395 1 2025-06-03 2026-08-10 28 7 +4734 / -622 36296660+david-pepper andradeolivier
SubscriptionUpdate.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora
102 4 2022-10-28 2025-12-01 65 11 +1993 / -3127 jon.flynn 108136057+gu-scala-steward-...
Handler.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
191 4 2018-07-13 2026-09-07 100 25 +2783 / -1860 pvighi andradeolivier
311 1 2025-05-29 2025-10-14 14 6 +4457 / -110 andrea.diotallevi john.duffell
PaperAddressValidator.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper
1335 4 2019-02-13 2025-06-26 25 13 +4280 / -287 patricio.vighi john.duffell
HandlerIAP.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
129 5 2023-02-27 2025-12-01 48 12 +2275 / -2149 jon.flynn 108136057+gu-scala-steward-...
119 - 2018-06-06 2026-10-07 409 38 +2342 / -2020 john.duffell john.duffell
SalesforceHolidayStopRequest.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
356 10 2019-05-16 2026-04-20 99 15 +2781 / -1552 thomas.w.richards andradeolivier
ZuoraIds.scala
in lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog
417 1 2022-09-01 2026-07-16 44 16 +2581 / -1540 john.duffell john.duffell
index.ts
in handlers/mparticle-api/src
161 4 2025-05-28 2026-09-29 45 8 +2542 / -1512 andre.silva.mindera juabara
244 1 2023-05-10 2025-10-14 33 12 +3188 / -678 michael.jacobson john.duffell
index.ts
in handlers/alarms-handler/src
152 6 2024-03-22 2026-07-02 51 11 +2461 / -1343 andrea.diotallevi rupert.bates
cfn.yaml
in handlers/product-move-api
636 - 2022-05-12 2026-10-05 93 16 +2651 / -1070 john.duffell john.duffell
352 1 2025-01-09 2026-08-10 37 6 +2612 / -1011 36296660+david-pepper andradeolivier
SubscriptionCancelEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel
168 2 2022-09-01 2026-10-05 78 13 +2238 / -1366 john.duffell john.duffell
453 1 2025-04-02 2026-10-07 17 4 +3070 / -245 michael.jacobson john.duffell
discountEndpoint.ts
in handlers/discount-api/src
251 6 2023-12-20 2026-08-21 61 10 +1887 / -1179 rupert.bates andradeolivier
219 4 2024-02-27 2025-10-14 26 10 +1823 / -989 “luxmi.r.pillai john.duffell
country.ts
in modules/internationalisation/src
524 3 2025-09-15 2026-09-21 6 4 +2533 / -196 rupert.bates tom.forbes
productPurchaseSchema.ts
in modules/product-catalog/src
220 - 2025-07-22 2026-09-29 21 6 +1880 / -777 rupert.bates pgithub5
NewProductApi.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
52 2 2018-08-20 2026-07-23 57 17 +1463 / -1117 patricio.vighi graham.hopgood
cfn.yaml
in handlers/zuora-sar
207 - 2020-03-05 2024-04-08 22 11 +2235 / -344 lauren.emms john.duffell
170 5 2024-03-22 2026-02-05 39 11 +1879 / -598 andrea.diotallevi john.duffell
SfQueries.scala
in handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api
590 1 2018-11-09 2023-03-06 48 13 +1862 / -556 patricio.vighi pgithub5
Handler.scala
in handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge
85 4 2018-07-06 2024-10-18 48 9 +1385 / -1017 john.duffell pascal
productToDiscountMapping.ts
in handlers/discount-api/src
155 6 2023-12-04 2026-05-15 55 8 +1440 / -916 rupert.bates john.duffell
Handler.scala
in handlers/identity-backfill/src/main/scala/com/gu/identityBackfill
194 6 2018-03-12 2026-05-05 83 19 +1441 / -879 john.duffell andradeolivier
200 1 2025-06-04 2026-02-26 34 8 +1797 / -521 michael.jacobson 90685618+ecguardian
productCatalog.ts
in modules/product-catalog/src
214 5 2024-02-28 2026-09-17 60 12 +1607 / -678 rupert.bates rupert.bates
Handler.scala
in handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter
177 9 2021-12-13 2023-03-06 24 4 +1383 / -865 david.pepper pgithub5
cfn.yaml
in handlers/contact-us-api
327 - 2020-09-28 2024-10-18 44 17 +1475 / -740 ricardo.costa pascal
build.ts
in buildcheck/data
994 - 2025-10-03 2026-10-05 46 10 +1635 / -568 john.duffell john.duffell
cloudwatch.ts
in handlers/alarms-handler/src
58 3 2024-04-24 2026-07-02 32 8 +1436 / -747 tom.forbes rupert.bates
writeOffInvoices.ts
in handlers/write-off-unpaid-invoices/src/handlers
181 3 2025-05-29 2026-07-02 16 7 +2078 / -105 andrea.diotallevi rupert.bates
cfn.yaml
in handlers/catalog-service
195 - 2018-04-23 2025-01-09 26 16 +1000 / -1060 jacob.winch tom.forbes
orderActions.ts
in modules/zuora/src/orders
293 8 2025-07-26 2026-08-25 26 5 +1787 / -230 rupert.bates andradeolivier
284 1 2025-03-21 2025-10-14 18 6 +1762 / -230 andrea.diotallevi john.duffell
SQS.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove
278 12 2022-11-11 2025-12-01 38 10 +1472 / -503 jon.flynn 108136057+gu-scala-steward-...
ZuoraClient.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest
107 4 2022-05-17 2025-06-26 69 12 +1236 / -717 john.duffell john.duffell
HolidayCreditProduct.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
113 1 2020-01-17 2025-06-26 41 12 +1018 / -931 kelvin.chappell john.duffell
WireModel.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
203 7 2018-08-06 2026-07-13 62 15 +1404 / -529 patricio.vighi graham.hopgood
Handler.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
189 9 2021-04-29 2026-10-07 51 15 +1338 / -553 ricardo.costa john.duffell
SalesforceHolidayStopRequestsDetail.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
99 4 2019-07-18 2024-03-06 60 13 +1097 / -768 kelvin.chappell andrea.diotallevi
S3Connector.scala
in handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter
158 10 2021-12-14 2023-03-06 22 4 +1142 / -721 david.pepper pgithub5
appConfig.ts
in modules/aws/src
120 4 2025-06-09 2026-07-02 17 4 +1648 / -183 john.duffell rupert.bates
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
119 - 2018-06-06 2026-10-07 409 38 +2342 / -2020 john.duffell john.duffell
Handler.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
191 4 2018-07-13 2026-09-07 100 25 +2783 / -1860 pvighi andradeolivier
Handler.scala
in handlers/identity-backfill/src/main/scala/com/gu/identityBackfill
194 6 2018-03-12 2026-05-05 83 19 +1441 / -879 john.duffell andradeolivier
alarmMappings.ts
in handlers/alarms-handler/src
151 - 2024-04-24 2026-10-06 113 18 +1003 / -592 tom.forbes graham.hopgood
NewProductApi.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
52 2 2018-08-20 2026-07-23 57 17 +1463 / -1117 patricio.vighi graham.hopgood
cfn.yaml
in handlers/holiday-stop-api
406 - 2019-05-20 2024-10-18 47 17 +1305 / -274 thomas.w.richards pascal
cfn.yaml
in handlers/sf-datalake-export
592 - 2018-09-28 2025-10-10 47 17 +1382 / -133 patricio.vighi michael.mcnamara
cfn.yaml
in handlers/contact-us-api
327 - 2020-09-28 2024-10-18 44 17 +1475 / -740 ricardo.costa pascal
AddGuardianWeeklySub.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
160 4 2020-04-06 2026-09-07 42 17 +1253 / -525 francis andradeolivier
cfn.yaml
in handlers/product-move-api
636 - 2022-05-12 2026-10-05 93 16 +2651 / -1070 john.duffell john.duffell
DeliveryCreditProcessor.scala
in handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor
222 7 2020-01-27 2026-08-24 52 16 +1148 / -413 kelvin.chappell andradeolivier
ZuoraIds.scala
in lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog
417 1 2022-09-01 2026-07-16 44 16 +2581 / -1540 john.duffell john.duffell
Processor.scala
in lib/credit-processor/src/main/scala/com/gu/creditprocessor
281 7 2020-01-17 2026-08-24 44 16 +1316 / -379 kelvin.chappell andradeolivier
cfn.yaml
in handlers/catalog-service
195 - 2018-04-23 2025-01-09 26 16 +1000 / -1060 jacob.winch tom.forbes
cfn.yaml
in handlers/delivery-records-api
207 - 2019-11-21 2024-10-18 22 16 +640 / -56 francis pascal
Handler.scala
in handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops
552 14 2019-05-20 2026-04-20 122 15 +4255 / -2554 thomas.w.richards andradeolivier
SalesforceHolidayStopRequest.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
356 10 2019-05-16 2026-04-20 99 15 +2781 / -1552 thomas.w.richards andradeolivier
Salesforce.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
41 2 2019-05-30 2024-10-18 66 15 +656 / -554 kelvin.chappell pascal
WireModel.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
203 7 2018-08-06 2026-07-13 62 15 +1404 / -529 patricio.vighi graham.hopgood
Handler.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
189 9 2021-04-29 2026-10-07 51 15 +1338 / -553 ricardo.costa john.duffell
SendConfirmationEmail.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email
57 3 2018-07-31 2026-03-25 48 15 +557 / -567 patricio.vighi graham.hopgood
AddPaperSub.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
180 5 2019-02-06 2026-09-07 43 15 +820 / -264 patricio.vighi andradeolivier
Handler.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog
52 3 2018-08-02 2026-06-29 43 15 +497 / -405 patricio.vighi andradeolivier
SupportedProduct.scala
in lib/zuora-core/src/main/scala/com/gu/zuora/subscription
374 - 2020-01-15 2026-09-29 37 15 +1533 / -283 kelvin.chappell pgithub5
AddDigipackSub.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
156 3 2019-02-27 2026-09-07 34 15 +710 / -236 patricio.vighi andradeolivier
ConfigModels.scala
in lib/handler/src/main/scala/com/gu/util/config
46 1 2018-05-04 2023-10-24 33 15 +394 / -373 jacob.winch john.duffell
cfn.yaml
in handlers/fulfilment-date-calculator
135 - 2019-11-22 2024-11-13 31 15 +789 / -85 mario.galic john.duffell
ProductMoveEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move
216 2 2022-06-30 2025-09-17 99 14 +3337 / -3603 john.duffell john.duffell
AddSubscriptionRequest.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
66 - 2018-07-13 2024-04-08 42 14 +427 / -195 pvighi john.duffell
AddSupporterPlus.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
195 4 2022-08-31 2026-09-07 38 14 +1111 / -361 david.pepper andradeolivier
HolidayStopCreditProcessor.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
77 1 2020-01-15 2026-08-17 38 14 +584 / -236 kelvin.chappell andradeolivier
EmailData.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email
109 2 2019-03-05 2026-01-12 29 14 +432 / -71 patricio.vighi rupert.bates
cfn.yaml
in handlers/digital-voucher-api
240 - 2020-01-29 2026-03-12 29 14 +869 / -115 francis.rhys-jones.freelancer andradeolivier
Handler.scala
in handlers/sf-gocardless-sync/src/main/scala/com/gu/sf_gocardless_sync
188 7 2018-11-06 2025-12-01 25 14 +1079 / -258 tom.richards 108136057+gu-scala-steward-...
riff-raff.yaml
in handlers/zuora-callout-apis
38 - 2020-03-19 2026-03-02 23 14 +167 / -26 martin.kuzdowicz.contractor john.duffell
SubscriptionCancelEndpoint.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel
168 2 2022-09-01 2026-10-05 78 13 +2238 / -1366 john.duffell john.duffell
SalesforceHolidayStopRequestsDetail.scala
in lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops
99 4 2019-07-18 2024-03-06 60 13 +1097 / -768 kelvin.chappell andrea.diotallevi
InvoicingApiRefund.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/invoicingapi
75 2 2022-10-03 2025-06-26 50 13 +655 / -229 rupert.bates john.duffell
Handler.scala
in handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor
92 3 2019-05-22 2026-08-17 48 13 +627 / -428 kelvin.chappell andradeolivier
SfQueries.scala
in handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api
590 1 2018-11-09 2023-03-06 48 13 +1862 / -556 patricio.vighi pgithub5
Config.scala
in lib/holiday-stops/src/main/scala/com/gu/holiday_stops
51 4 2019-08-28 2023-10-24 40 13 +625 / -715 kelvin.chappell john.duffell
ZIOApiGatewayRequestHandler.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove/framework
55 1 2022-06-28 2026-08-24 40 13 +664 / -500 john.duffell andradeolivier
cfn.yaml
in handlers/zuora-datalake-export
117 - 2019-03-07 2025-10-09 39 13 +563 / -164 mario.galic michael.mcnamara
Handler.scala
in handlers/dev-env-cleaner/src/main/scala/com/gu/cleaner
231 9 2020-09-15 2025-06-26 38 13 +1110 / -160 john.duffell john.duffell
ConsentsCalculator.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
105 7 2021-03-10 2026-10-06 38 13 +650 / -284 ricardo.costa john.duffell
AddContribution.scala
in handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription
172 3 2019-02-01 2026-09-07 33 13 +723 / -260 patricio.vighi andradeolivier
cfn.yaml
in handlers/identity-retention
214 - 2018-05-15 2024-10-18 33 13 +631 / -110 jacob.winch pascal
Handler.scala
in handlers/batch-email-sender/src/main/scala/com/gu/batchemailsender/api/batchemail
76 3 2018-11-22 2025-09-17 32 13 +515 / -292 leigh-anne.mathieson john.duffell
DownloadBatchHandler.scala
in handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/handlers
157 7 2018-11-15 2024-10-18 32 13 +805 / -446 patricio.vighi pascal
DeliveryRecordsApiApp.scala
in handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api
52 4 2019-11-22 2024-10-18 27 13 +309 / -121 francis pascal
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
321 1 2026-06-23 2026-06-23 1 1 +345 / -0 andradeolivier andradeolivier
acquisitions.ts
in handlers/mparticle-acquisitions-publisher/src
312 15 2026-09-23 2026-09-29 2 1 +373 / -22 juabara juabara
278 4 2026-08-10 2026-08-11 2 1 +385 / -17 andradeolivier andradeolivier
259 1 2026-06-10 2026-09-15 3 1 +303 / -1 rupert.bates rupert.bates
OrderRequest.scala
in lib/zuora-core/src/main/scala/com/gu/zuora/orders
212 2 2026-08-17 2026-08-19 2 1 +252 / -2 andradeolivier andradeolivier
ZuoraOrders.scala
in lib/zuora-core/src/main/scala/com/gu/zuora
211 5 2026-08-17 2026-08-24 3 1 +248 / -13 andradeolivier andradeolivier
mparticleHttpClient.ts
in modules/mparticle/src
200 7 2026-09-29 2026-09-29 1 1 +250 / -0 juabara juabara
guardianRatePlanBuilder.ts
in modules/guardian-subscription/src/reprocessRatePlans
196 8 2026-02-13 2026-09-28 3 1 +346 / -32 john.duffell john.duffell
openapi.yaml
in handlers/promotions-api
193 - 2026-09-08 2026-09-14 4 1 +204 / -0 rupert.bates rupert.bates
downloadRealSubscriptions.ts
in modules/guardian-subscription/runManual/realSubscriptions
190 9 2026-02-13 2026-02-13 1 1 +242 / -0 john.duffell john.duffell
asyncOrderRequests.ts
in modules/zuora/src/orders
181 - 2026-08-21 2026-08-25 3 1 +398 / -197 andradeolivier andradeolivier
state.ts
in modules/internationalisation/src
173 - 2026-07-07 2026-07-07 1 1 +182 / -0 rupert.bates rupert.bates
mapFunctions.ts
in modules
156 6 2026-02-13 2026-09-28 3 1 +230 / -6 john.duffell john.duffell
openapi.yaml
in handlers/user-subscriptions-api
151 - 2026-05-20 2026-05-27 2 1 +195 / -32 john.duffell john.duffell
AutoCancelSqsHandler.scala
in handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel
147 4 2026-01-26 2026-08-19 2 1 +194 / -6 andradeolivier andradeolivier
downloadQueryResultsCommand.ts
in handlers/supporter-product-data-lambdas/src
143 2 2026-07-23 2026-07-23 1 1 +193 / -3 rupert.bates rupert.bates
zuoraRatePlanBuilder.ts
in modules/guardian-subscription/src/reprocessRatePlans
138 5 2026-02-13 2026-09-28 3 1 +226 / -28 john.duffell john.duffell
openapi.yaml
in handlers/observer-benefits-api
127 - 2026-05-15 2026-05-15 1 1 +132 / -0 jorge.costa jorge.costa
oktaTokenHelper.ts
in modules/identity/src
126 5 2026-05-13 2026-07-02 2 1 +137 / -1 rupert.bates rupert.bates
switchCatalogHelper.ts
in handlers/product-switch-api/src/changePlan/prepare
126 1 2026-02-13 2026-07-01 4 1 +148 / -7 john.duffell john.duffell
122 1 2026-09-02 2026-09-21 2 1 +175 / -45 enes.aydogan enes.aydogan
119 1 2026-08-19 2026-09-21 2 1 +178 / -51 enes.aydogan enes.aydogan
logger.ts
in modules/logger/src
113 10 2026-05-15 2026-06-16 3 1 +249 / -86 john.duffell john.duffell
MultipleAccountApiConnector.scala
in handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter
113 5 2026-10-07 2026-10-07 1 1 +128 / -0 john.duffell john.duffell
112 1 2026-02-11 2026-04-01 6 1 +129 / -5 andradeolivier andradeolivier
index.ts
in handlers/mparticle-acquisitions-publisher/src
105 4 2026-09-23 2026-09-29 2 1 +132 / -13 juabara juabara
104 1 2026-06-16 2026-07-23 2 1 +133 / -17 anastasiia.balenko.mindera anastasiia.balenko.mindera
openapi.yaml
in handlers/payment-failure-comms-exit-api
104 - 2026-09-14 2026-09-14 1 1 +112 / -0 andradeolivier andradeolivier
ApiGatewayToSqs.ts
in cdk/lib/cdk
102 3 2025-10-20 2026-03-02 4 1 +147 / -21 john.duffell john.duffell
dynamoService.ts
in handlers/supporter-product-data-lambdas/src/services
96 3 2026-06-10 2026-07-02 4 1 +149 / -32 rupert.bates rupert.bates
SubscriptionEventService.scala
in handlers/product-move-api/src/main/scala/com/gu/productmove
92 5 2026-10-05 2026-10-05 1 1 +107 / -0 john.duffell john.duffell
openapi.yaml
in handlers/sales-tax-api
92 - 2026-06-10 2026-06-10 1 1 +99 / -0 76729591+paul-daniel-dempsey 76729591+paul-daniel-dempsey
addItemsToQueue.ts
in handlers/supporter-product-data-lambdas/src/handlers
91 6 2026-06-10 2026-06-10 1 1 +113 / -0 rupert.bates rupert.bates
Token.scala
in handlers/digital-subscription-expiry/src/main/scala/com/gu/cas
90 7 2025-02-11 2025-06-18 2 1 +354 / -0 john.duffell john.duffell
t
openapi.ejs.t
in _templates/new-lambda/api-gateway
89 - 2026-05-19 2026-05-19 1 1 +99 / -0 rupert.bates rupert.bates
queryZuora.ts
in handlers/supporter-product-data-lambdas/src/handlers
86 1 2026-06-10 2026-07-15 3 1 +107 / -5 rupert.bates rupert.bates
openapi.yaml
in handlers/braze-acquisition-events-sync
85 - 2026-06-16 2026-06-16 1 1 +93 / -0 anastasiia.balenko.mindera anastasiia.balenko.mindera
fetchResults.ts
in handlers/supporter-product-data-lambdas/src/handlers
85 - 2026-06-10 2026-06-10 1 1 +102 / -0 rupert.bates rupert.bates
createFunctionLoggingHooks.ts
in modules/logger/src
83 7 2026-06-16 2026-06-16 1 1 +102 / -0 john.duffell john.duffell
processSupporterRatePlanItem.ts
in handlers/supporter-product-data-lambdas/src/handlers
82 - 2026-06-10 2026-09-30 6 1 +103 / -14 rupert.bates rupert.bates
AsyncOrder.scala
in lib/zuora-core/src/main/scala/com/gu/zuora/orders
81 - 2026-08-17 2026-08-19 2 1 +94 / -1 andradeolivier andradeolivier
listPromotionsEndpoint.ts
in handlers/promotions-api/src
81 4 2026-09-08 2026-09-14 3 1 +111 / -5 rupert.bates rupert.bates
index.ts
in handlers/promotions-api/src
80 1 2026-09-08 2026-09-14 3 1 +89 / -2 rupert.bates rupert.bates
processPaymentMethod.ts
in handlers/scrub-non-tokenised-payment-methods/src/services
79 - 2026-08-10 2026-08-10 1 1 +115 / -0 andradeolivier andradeolivier
cancelSubscription.ts
in modules/zuora/src/orders
77 1 2026-08-25 2026-08-25 1 1 +82 / -0 andradeolivier andradeolivier
clonePaymentMethod.ts
in modules/zuora/src/createSubscription
77 3 2026-04-22 2026-04-30 2 1 +120 / -25 rupert.bates rupert.bates
buildZuoraProductIdToKey.ts
in modules/guardian-subscription/src/group
76 6 2026-02-13 2026-02-13 1 1 +101 / -0 john.duffell john.duffell
getPromotions.ts
in modules/promotions/src/v2
75 - 2026-09-08 2026-09-14 2 1 +118 / -13 rupert.bates rupert.bates
74 1 2026-01-26 2026-02-26 4 1 +84 / -1 andradeolivier andradeolivier
74 6 2025-11-19 2026-06-24 5 1 +123 / -20 john.duffell john.duffell
Correlations

File Size vs. Number of Changes: 1322 points

cdk/lib/soft-opt-in-consent-setter.ts x: 453 lines of code y: 17 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 189 lines of code y: 51 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/IAPMessageProcessor.scala x: 190 lines of code y: 18 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 113 lines of code y: 1 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 119 lines of code y: 31 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 36 lines of code y: 6 # changes project/Dependencies.scala x: 119 lines of code y: 409 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 105 lines of code y: 38 # changes handlers/alarms-handler/src/alarmMappings.ts x: 151 lines of code y: 113 # changes modules/multiple-account/src/secondaryUserRepository.ts x: 238 lines of code y: 13 # changes modules/zuora/src/objectQuery/expandSchemas/subscriptionItemSchema.ts x: 78 lines of code y: 4 # changes modules/zuora/src/objectQuery/queries/accountObjectQuery.ts x: 54 lines of code y: 2 # changes handlers/product-move-api/cfn.yaml x: 636 lines of code y: 93 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/SubscriptionEventService.scala x: 92 lines of code y: 1 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 168 lines of code y: 78 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 163 lines of code y: 21 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/ZuoraCancel.scala x: 137 lines of code y: 38 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/model/OrderNumber.scala x: 14 lines of code y: 1 # changes buildcheck/data/build.ts x: 994 lines of code y: 46 # changes buildcheck/data/dependencies.ts x: 57 lines of code y: 13 # changes cdk/lib/cdk/SrSqsLambda.ts x: 73 lines of code y: 4 # changes cdk/lib/cdk/SrSubscriptionEventsLambda.ts x: 38 lines of code y: 1 # changes modules/aws/src/eventBridgeService.ts x: 69 lines of code y: 1 # changes modules/routing/src/sqsHandler.ts x: 40 lines of code y: 8 # changes modules/subscription-events/src/consumer/eventBridgeSqsHandler.ts x: 31 lines of code y: 1 # changes cdk/lib/iam-policies.ts x: 173 lines of code y: 8 # changes cdk/lib/mparticle-acquisitions-publisher.ts x: 113 lines of code y: 3 # changes handlers/multiple-account-api/src/acceptInvitationEndpoint.ts x: 111 lines of code y: 14 # changes handlers/supporter-product-data-lambdas/src/handlers/processSupporterRatePlanItem.ts x: 82 lines of code y: 6 # changes buildcheck/data/templates/handler/riff-raff.yaml.ts x: 37 lines of code y: 4 # changes handlers/mparticle-acquisitions-publisher/src/acquisitions.ts x: 312 lines of code y: 2 # changes handlers/mparticle-acquisitions-publisher/src/config.ts x: 20 lines of code y: 2 # changes handlers/mparticle-acquisitions-publisher/src/index.ts x: 105 lines of code y: 2 # changes handlers/mparticle-api/runManual/invokeHandlerSARStatus.ts x: 24 lines of code y: 12 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/deleteUser.ts x: 51 lines of code y: 4 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/getStatus.ts x: 61 lines of code y: 6 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 96 lines of code y: 10 # changes handlers/mparticle-api/src/index.ts x: 161 lines of code y: 45 # changes handlers/mparticle-api/src/routers/baton.ts x: 100 lines of code y: 18 # changes handlers/mparticle-api/src/routers/baton/access/handleInitiate.ts x: 57 lines of code y: 7 # changes handlers/mparticle-api/src/routers/baton/access/handleStatus.ts x: 96 lines of code y: 9 # changes handlers/mparticle-api/src/routers/baton/erasure/handleInitiate.ts x: 72 lines of code y: 7 # changes handlers/mparticle-api/src/routers/http.ts x: 29 lines of code y: 18 # changes handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/data-subject-request-callback.ts x: 148 lines of code y: 13 # changes handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/validate-data-subject-request-callback.ts x: 149 lines of code y: 6 # changes handlers/mparticle-api/src/routers/shared/addErasureExclusionAttributes.ts x: 24 lines of code y: 9 # changes modules/mparticle/src/mparticleHttpClient.ts x: 200 lines of code y: 1 # changes modules/zuora/src/restClient.ts x: 222 lines of code y: 10 # changes cdk/lib/identity-deletion-cleanup.ts x: 56 lines of code y: 1 # changes modules/arrayFunctions.ts x: 220 lines of code y: 39 # changes modules/salesforce/src/recordSchema.ts x: 21 lines of code y: 4 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SupportedProduct.scala x: 374 lines of code y: 37 # changes modules/product-catalog/src/productCatalogSchema.ts x: 2519 lines of code y: 64 # changes modules/product-catalog/src/productPurchaseSchema.ts x: 220 lines of code y: 21 # changes modules/product-catalog/src/zuoraToProductNameMappings.ts x: 234 lines of code y: 57 # changes modules/guardian-subscription/src/guardianSubscriptionParser.ts x: 209 lines of code y: 4 # changes modules/guardian-subscription/src/reprocessRatePlans/guardianRatePlanBuilder.ts x: 196 lines of code y: 3 # changes modules/guardian-subscription/src/reprocessRatePlans/zuoraRatePlanBuilder.ts x: 138 lines of code y: 3 # changes modules/mapFunctions.ts x: 156 lines of code y: 3 # changes handlers/multiple-account-api/src/createInvitationEndpoint.ts x: 94 lines of code y: 12 # changes handlers/multiple-account-api/src/deleteSecondaryUserEndpoint.ts x: 187 lines of code y: 6 # changes handlers/multiple-account-api/src/multipleAccountEmails.ts x: 217 lines of code y: 2 # changes cdk/lib/cdk/policies.ts x: 163 lines of code y: 14 # changes cdk/lib/multiple-account-api.ts x: 123 lines of code y: 9 # changes modules/internationalisation/src/country.ts x: 524 lines of code y: 6 # changes modules/internationalisation/src/countryGroup.ts x: 346 lines of code y: 9 # changes handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 178 lines of code y: 41 # changes modules/product-catalog/src/productCatalog.ts x: 214 lines of code y: 60 # changes modules/promotions/src/v2/addCatalogInformationToPromo.ts x: 71 lines of code y: 2 # changes buildcheck/data/templates/root/.github/workflows/handlerNames.managed.json.ts x: 14 lines of code y: 3 # changes cdk/lib/supporter-product-data-lambdas.ts x: 259 lines of code y: 3 # changes handlers/promotions-api/openapi.yaml x: 193 lines of code y: 4 # changes handlers/promotions-api/src/index.ts x: 80 lines of code y: 3 # changes handlers/payment-failure-comms-exit-api/openapi.yaml x: 104 lines of code y: 1 # changes modules/identity/src/identityClient.ts x: 38 lines of code y: 2 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpirySteps.scala x: 70 lines of code y: 33 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/zuora/SetActivationDate.scala x: 21 lines of code y: 13 # changes modules/product-catalog/src/generateProductCatalog.ts x: 160 lines of code y: 36 # changes modules/product-catalog/src/generateSchema.ts x: 141 lines of code y: 23 # changes modules/zuora-catalog/src/zuoraCatalogSchema.ts x: 71 lines of code y: 14 # changes handlers/multiple-account-api/openapi.yaml x: 858 lines of code y: 12 # changes handlers/multiple-account-api/src/invitationRepository.ts x: 157 lines of code y: 11 # changes handlers/multiple-account-api/src/listSecondaryUsersEndpoint.ts x: 16 lines of code y: 6 # changes handlers/multiple-account-api/src/validation.ts x: 74 lines of code y: 5 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddContribution.scala x: 172 lines of code y: 33 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddDigipackSub.scala x: 156 lines of code y: 34 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddGuardianWeeklySub.scala x: 160 lines of code y: 42 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddPaperSub.scala x: 180 lines of code y: 43 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSupporterPlus.scala x: 195 lines of code y: 38 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddTierThree.scala x: 154 lines of code y: 10 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 191 lines of code y: 100 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateAccount.scala x: 29 lines of code y: 20 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccount.scala x: 56 lines of code y: 18 # changes handlers/multiple-account-api/src/index.ts x: 226 lines of code y: 17 # changes handlers/holiday-stop-processor/riff-raff.yaml x: 24 lines of code y: 7 # changes modules/identity/src/idapi.ts x: 96 lines of code y: 6 # changes handlers/product-switch-api/src/changePlan/action/preview.ts x: 129 lines of code y: 5 # changes modules/zuora/src/orders/asyncOrderRequests.ts x: 181 lines of code y: 3 # changes modules/zuora/src/orders/orderActions.ts x: 293 lines of code y: 26 # changes handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProcessor.scala x: 222 lines of code y: 52 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/framework/ZIOApiGatewayRequestHandler.scala x: 55 lines of code y: 40 # changes lib/credit-processor/src/main/scala/com/gu/creditprocessor/Processor.scala x: 281 lines of code y: 44 # changes modules/zuora/src/discount.ts x: 128 lines of code y: 10 # changes modules/zuora/src/orders/orderRequests.ts x: 69 lines of code y: 17 # changes handlers/discount-api/src/discountEndpoint.ts x: 251 lines of code y: 61 # changes handlers/discount-api/src/index.ts x: 94 lines of code y: 50 # changes modules/routing/src/router.ts x: 170 lines of code y: 23 # changes modules/zuora/src/zuoraClient.ts x: 64 lines of code y: 49 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelHandler.scala x: 72 lines of code y: 21 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelSqsHandler.scala x: 147 lines of code y: 2 # changes handlers/delivery-problem-credit-processor/riff-raff.yaml x: 24 lines of code y: 10 # changes handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/StandaloneApp.scala x: 9 lines of code y: 6 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Handler.scala x: 92 lines of code y: 48 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayStopCreditProcessor.scala x: 77 lines of code y: 38 # changes lib/credit-processor/src/main/scala/com/gu/creditprocessor/ZuoraCreditAddResult.scala x: 8 lines of code y: 9 # changes lib/zuora-core/src/main/scala/com/gu/zuora/Zuora.scala x: 93 lines of code y: 19 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/CreditProduct.scala x: 5 lines of code y: 18 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/CreditRequest.scala x: 7 lines of code y: 8 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/Subscription.scala x: 68 lines of code y: 11 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SubscriptionUpdate.scala x: 51 lines of code y: 16 # changes cdk/lib/scrub-non-tokenised-payment-methods.ts x: 278 lines of code y: 2 # changes modules/email/src/email.ts x: 123 lines of code y: 35 # changes cdk/lib/discount-expiry-notifier.ts x: 352 lines of code y: 37 # changes cdk/lib/negative-invoices-processor.ts x: 395 lines of code y: 28 # changes modules/zuora/src/auth/bearerTokenProvider.ts x: 90 lines of code y: 11 # changes modules/zuora/src/paymentMethod.ts x: 34 lines of code y: 18 # changes modules/zuora/src/subscription.ts x: 109 lines of code y: 16 # changes modules/product-catalog/src/stripeProducts.ts x: 105 lines of code y: 27 # changes handlers/product-switch-api/src/frequencySwitchEndpoint.ts x: 394 lines of code y: 7 # changes handlers/update-supporter-plus-amount/src/sendEmail.ts x: 44 lines of code y: 22 # changes modules/email/src/dataFields/dayZero/paperEmailFields.ts x: 103 lines of code y: 4 # changes modules/zuora/src/createSubscription/createSubscription.ts x: 287 lines of code y: 30 # changes modules/zuora/src/createSubscription/previewCreateSubscription.ts x: 110 lines of code y: 19 # changes modules/zuora/src/orders/newAccount.ts x: 82 lines of code y: 15 # changes modules/zuora/src/types/objects/account.ts x: 52 lines of code y: 9 # changes handlers/supporter-product-data-lambdas/src/downloadQueryResultsCommand.ts x: 143 lines of code y: 1 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/NewProductApi.scala x: 52 lines of code y: 57 # changes handlers/product-switch-api/src/changePlan/switchDefinition/digitalSubscriptionTargetInformation.ts x: 46 lines of code y: 9 # changes cdk/lib/generate-product-catalog.ts x: 118 lines of code y: 40 # changes lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ZuoraIds.scala x: 417 lines of code y: 44 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/WireModel.scala x: 203 lines of code y: 62 # changes modules/internationalisation/src/state.ts x: 173 lines of code y: 1 # changes handlers/product-switch-api/src/changePlan/changePlanEndpoint.ts x: 162 lines of code y: 9 # changes handlers/alarms-handler/src/cloudwatch.ts x: 58 lines of code y: 32 # changes handlers/alarms-handler/src/cloudwatch/getAlarmHistory.ts x: 135 lines of code y: 4 # changes handlers/alarms-handler/src/index.ts x: 152 lines of code y: 51 # changes handlers/alarms-handler/src/indexScheduled.ts x: 99 lines of code y: 15 # changes handlers/discount-api/src/eligibilityChecker.ts x: 126 lines of code y: 51 # changes handlers/discount-expiry-notifier/src/handlers/getNewPaymentAmount.ts x: 40 lines of code y: 11 # changes handlers/discount-expiry-notifier/src/handlers/getOldPaymentAmount.ts x: 234 lines of code y: 18 # changes handlers/generate-product-catalog/src/index.ts x: 48 lines of code y: 17 # changes handlers/mobile-purchases-to-supporter-product-data/src/index.ts x: 88 lines of code y: 7 # changes handlers/mparticle-api/src/services/brazeClient.ts x: 123 lines of code y: 5 # changes handlers/mparticle-api/src/services/make-http-request.ts x: 131 lines of code y: 16 # changes handlers/negative-invoices-processor/src/handlers/checkForActiveSub.ts x: 53 lines of code y: 24 # changes handlers/negative-invoices-processor/src/handlers/doCreditBalanceRefund.ts x: 63 lines of code y: 18 # changes handlers/observer-data-export/src/handlers/encryptAndUploadObserverData.ts x: 98 lines of code y: 7 # changes handlers/press-reader-entitlements/src/index.ts x: 99 lines of code y: 25 # changes handlers/product-switch-api/src/changePlan/legacyContributionToSupporterPlusEndpoint.ts x: 110 lines of code y: 4 # changes handlers/product-switch-api/src/index.ts x: 79 lines of code y: 28 # changes handlers/product-switch-api/src/supporterProductData.ts x: 17 lines of code y: 26 # changes handlers/promotions-lambdas/src/handlers/promoCodeView.ts x: 241 lines of code y: 4 # changes handlers/stripe-disputes/src/services/webhookHandler.ts x: 86 lines of code y: 9 # changes handlers/ticket-tailor-webhook/src/idapiService.ts x: 78 lines of code y: 14 # changes handlers/update-supporter-plus-amount/src/index.ts x: 64 lines of code y: 23 # changes handlers/update-supporter-plus-amount/src/zuoraApi.ts x: 158 lines of code y: 27 # changes handlers/user-benefits/src/benefitsMe.ts x: 60 lines of code y: 10 # changes handlers/write-off-unpaid-invoices/src/handlers/writeOffInvoices.ts x: 181 lines of code y: 16 # changes handlers/zuora-salesforce-link-remover/src/handlers/getBillingAccounts.ts x: 40 lines of code y: 17 # changes modules/aws/src/appConfig.ts x: 120 lines of code y: 17 # changes modules/guardian-subscription/src/subscriptionFilter.ts x: 154 lines of code y: 4 # changes modules/identity/src/apiGateway.ts x: 123 lines of code y: 7 # changes modules/product-benefits/src/productBenefit.ts x: 58 lines of code y: 20 # changes modules/product-catalog/src/generateProductBillingPeriods.ts x: 66 lines of code y: 15 # changes modules/sync-supporter-product-data/src/syncUser.ts x: 117 lines of code y: 12 # changes modules/test-users/src/create.ts x: 112 lines of code y: 21 # changes handlers/product-switch-api/src/salesforceTracking.ts x: 79 lines of code y: 24 # changes handlers/write-off-unpaid-invoices/src/handlers/getUnpaidInvoices.ts x: 8614 lines of code y: 13 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/Handler.scala x: 52 lines of code y: 43 # changes lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/PlanId.scala x: 148 lines of code y: 28 # changes modules/stage.ts x: 11 lines of code y: 14 # changes cdk/lib/sf-emails-to-s3-exporter.ts x: 321 lines of code y: 1 # changes modules/lazy.ts x: 33 lines of code y: 13 # changes handlers/mparticle-api/src/services/batonS3Writer.ts x: 52 lines of code y: 12 # changes handlers/discount-api/src/productToDiscountMapping.ts x: 155 lines of code y: 55 # changes handlers/observer-benefits-api/openapi.yaml x: 127 lines of code y: 1 # changes handlers/identity-backfill/cfn.yaml x: 213 lines of code y: 26 # changes handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 194 lines of code y: 83 # changes handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/IdentityBackfillSteps.scala x: 102 lines of code y: 43 # changes handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 552 lines of code y: 122 # changes handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/WireHolidayStopRequest.scala x: 167 lines of code y: 52 # changes lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 356 lines of code y: 99 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/digipack/DigipackAddressValidator.scala x: 27 lines of code y: 15 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/SendConfirmationEmail.scala x: 57 lines of code y: 48 # changes lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ProductType.scala x: 13 lines of code y: 11 # changes handlers/digital-voucher-api/cfn.yaml x: 240 lines of code y: 29 # changes handlers/digital-voucher-cancellation-processor/cfn.yaml x: 206 lines of code y: 12 # changes handlers/digital-voucher-suspension-processor/cfn.yaml x: 174 lines of code y: 32 # changes handlers/zuora-callout-apis/riff-raff.yaml x: 38 lines of code y: 23 # changes cdk/lib/mparticle-api.ts x: 200 lines of code y: 34 # changes cdk/lib/promotions-lambdas.ts x: 142 lines of code y: 7 # changes cdk/lib/product-switch-api.ts x: 37 lines of code y: 28 # changes cdk/lib/alarms-handler.ts x: 170 lines of code y: 39 # changes lib/handler/src/main/scala/com/gu/util/reader/Types.scala x: 143 lines of code y: 46 # changes modules/aws/src/cloudwatch.ts x: 44 lines of code y: 12 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/EmailData.scala x: 109 lines of code y: 29 # changes handlers/salesforce-disaster-recovery/src/handlers/updateZuoraAccounts.ts x: 46 lines of code y: 20 # changes cdk/lib/node-version.ts x: 2 lines of code y: 4 # changes handlers/digital-voucher-suspension-processor/src/main/scala/com/gu/digitalvouchersuspensionprocessor/Handler.scala x: 74 lines of code y: 20 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/SQS.scala x: 278 lines of code y: 38 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/SubscriptionUpdate.scala x: 102 lines of code y: 65 # changes handlers/sf-gocardless-sync/src/main/scala/com/gu/sf_gocardless_sync/Handler.scala x: 188 lines of code y: 25 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/HandlerIAP.scala x: 129 lines of code y: 48 # changes handlers/stripe-webhook-endpoints/src/main/scala/com/gu/stripeCardUpdated/CardUpdatedMessageBody.scala x: 77 lines of code y: 9 # changes cdk/lib/discount-api.ts x: 30 lines of code y: 39 # changes handlers/negative-invoices-processor/riff-raff.yaml x: 31 lines of code y: 17 # changes handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/service/createproblem/SFApiCreateDeliveryProblem.scala x: 131 lines of code y: 8 # changes handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/service/getrecords/GetDeliveryRecordsServiceImpl.scala x: 156 lines of code y: 8 # changes handlers/cancellation-sf-cases-api/src/main/scala/com/gu/salesforce/cases/SalesforceCase.scala x: 90 lines of code y: 12 # changes cdk/lib/user-benefits.ts x: 105 lines of code y: 20 # changes cdk/lib/batch-email-sender.ts x: 173 lines of code y: 22 # changes cdk/lib/new-product-api.ts x: 244 lines of code y: 33 # changes cdk/lib/observer-data-export.ts x: 284 lines of code y: 18 # changes cdk/lib/stripe-webhook-endpoints.ts x: 219 lines of code y: 26 # changes cdk/lib/write-off-unpaid-invoices.ts x: 311 lines of code y: 14 # changes cdk/lib/zuora-salesforce-link-remover.ts x: 203 lines of code y: 34 # changes handlers/sf-datalake-export/cfn.yaml x: 592 lines of code y: 47 # changes modules/prettyPrint.ts x: 3 lines of code y: 12 # changes cdk/lib/salesforce-disaster-recovery.ts x: 504 lines of code y: 53 # changes handlers/batch-email-sender/src/main/scala/com/gu/batchemailsender/api/batchemail/Handler.scala x: 76 lines of code y: 32 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/contribution/ContributionValidations.scala x: 29 lines of code y: 24 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 216 lines of code y: 99 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/switchtype/RecurringContributionToSupporterPlus.scala x: 374 lines of code y: 15 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/refund/RefundHandler.scala x: 68 lines of code y: 40 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/refund/RefundSupporterPlus.scala x: 131 lines of code y: 43 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/GetSubscription.scala x: 76 lines of code y: 51 # changes handlers/sf-gocardless-sync/src/main/scala/com/gu/sf_gocardless_sync/salesforce/SalesforceDDMandate.scala x: 121 lines of code y: 20 # changes handlers/single-contribution-salesforce-writes/src/main/scala/com/gu/singleContributionSalesforceWrites/services/Salesforce.scala x: 178 lines of code y: 9 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/SalesforceConnector.scala x: 140 lines of code y: 43 # changes modules/product-catalog/src/productBillingPeriods.ts x: 36 lines of code y: 15 # changes lib/effects/src/main/scala/com/gu/effects/Http.scala x: 47 lines of code y: 26 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper/PaperAddressValidator.scala x: 1335 lines of code y: 25 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/GetAccount.scala x: 125 lines of code y: 46 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/InvoiceItemAdjustment.scala x: 95 lines of code y: 31 # changes handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProduct.scala x: 77 lines of code y: 29 # changes handlers/dev-env-cleaner/src/main/scala/com/gu/cleaner/Handler.scala x: 231 lines of code y: 38 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayCreditProduct.scala x: 113 lines of code y: 41 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/available/AvailableProductMovesEndpoint.scala x: 190 lines of code y: 45 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/updateamount/UpdateSupporterPlusAmountSteps.scala x: 164 lines of code y: 16 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/salesforce/Salesforce.scala x: 46 lines of code y: 32 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/salesforce/SalesforceClient.scala x: 120 lines of code y: 28 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/salesforce/SalesforceHandler.scala x: 55 lines of code y: 28 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest/ZuoraClient.scala x: 107 lines of code y: 69 # changes handlers/zuora-sar/src/main/scala/com/gu/zuora/sar/S3Helper.scala x: 168 lines of code y: 19 # changes lib/effects-s3/src/main/scala/com/gu/effects/AwsS3.scala x: 133 lines of code y: 17 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/BuildPreviewResult.scala x: 94 lines of code y: 33 # changes handlers/catalog-service/cfn.yaml x: 195 lines of code y: 26 # changes handlers/catalog-service/src/main/scala/com/gu/catalogService/Handler.scala x: 40 lines of code y: 37 # changes handlers/fulfilment-date-calculator/cfn.yaml x: 135 lines of code y: 31 # changes lib/fulfilment-dates/src/main/scala/com/gu/fulfilmentdates/FulfilmentDates.scala x: 49 lines of code y: 22 # changes handlers/cancellation-sf-cases-api/cfn.yaml x: 202 lines of code y: 20 # changes handlers/contact-us-api/cfn.yaml x: 327 lines of code y: 44 # changes handlers/delivery-records-api/cfn.yaml x: 207 lines of code y: 22 # changes handlers/holiday-stop-api/cfn.yaml x: 406 lines of code y: 47 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Salesforce.scala x: 41 lines of code y: 66 # changes handlers/identity-backfill/src/main/scala/com/gu/identity/GetByEmail.scala x: 42 lines of code y: 25 # changes handlers/identity-retention/cfn.yaml x: 214 lines of code y: 33 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/TypeConvert.scala x: 56 lines of code y: 33 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/Util.scala x: 7 lines of code y: 21 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/available/AvailableProductMovesEndpointTypes.scala x: 211 lines of code y: 24 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointTypes.scala x: 18 lines of code y: 25 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/updateamount/UpdateSupporterPlusAmountEndpoint.scala x: 117 lines of code y: 10 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest/ZuoraGet.scala x: 62 lines of code y: 35 # changes handlers/sf-contact-merge/cfn.yaml x: 210 lines of code y: 25 # changes handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/DomainSteps.scala x: 148 lines of code y: 17 # changes handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/handlers/DownloadBatchHandler.scala x: 157 lines of code y: 32 # changes handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/GetJobBatches.scala x: 76 lines of code y: 12 # changes handlers/sf-gocardless-sync/cfn.yaml x: 132 lines of code y: 26 # changes handlers/stripe-webhook-endpoints/riff-raff.yaml x: 27 lines of code y: 22 # changes handlers/stripe-webhook-endpoints/src/main/scala/com/gu/paymentIntentIssues/Lambda.scala x: 140 lines of code y: 9 # changes lib/handler/src/main/scala/com/gu/util/apigateway/ApiGatewayHandler.scala x: 80 lines of code y: 35 # changes lib/restHttp/src/main/scala/com/gu/util/resthttp/RestRequestMaker.scala x: 199 lines of code y: 33 # changes lib/zuora/src/main/scala/com/gu/util/zuora/SafeQueryBuilder.scala x: 72 lines of code y: 25 # changes lib/zuora/src/main/scala/com/gu/util/zuora/ZuoraRestRequestMaker.scala x: 40 lines of code y: 27 # changes handlers/dev-env-cleaner/cfn.yaml x: 106 lines of code y: 22 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSubscriptionRequest.scala x: 66 lines of code y: 42 # changes handlers/stripe-webhook-endpoints/cfn.yaml x: 102 lines of code y: 13 # changes handlers/zuora-retention/cfn.yaml x: 498 lines of code y: 24 # changes handlers/batch-email-sender/src/main/scala/com/gu/batchemailsender/api/batchemail/BrazeSqsMessage.scala x: 152 lines of code y: 22 # changes lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequestsDetail.scala x: 99 lines of code y: 60 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/Handler.scala x: 60 lines of code y: 36 # changes lib/handler/src/main/scala/com/gu/util/config/ConfigModels.scala x: 46 lines of code y: 33 # changes handlers/sf-move-subscriptions-api/src/main/scala/com/gu/sf/move/subscriptions/api/SFMoveSubscriptionsService.scala x: 97 lines of code y: 17 # changes handlers/sf-api-user-credentials-setter/src/main/scala/com/gu/sfapiusercredentialsetter/Main.scala x: 224 lines of code y: 19 # changes lib/effects/src/main/scala/com/gu/effects/RawEffects.scala x: 17 lines of code y: 32 # changes handlers/digital-voucher-api/src/main/scala/com/gu/digital_voucher_api/DigitalVoucherApiRoutes.scala x: 162 lines of code y: 38 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateSubscriptions.scala x: 15 lines of code y: 16 # changes handlers/product-move-api/OpenAPISpec.yaml x: 239 lines of code y: 6 # changes handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/SfQueries.scala x: 590 lines of code y: 48 # changes handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter/Handler.scala x: 177 lines of code y: 24 # changes handlers/stripe-webhook-endpoints/src/main/scala/com/gu/paymentIntentIssues/Local.scala x: 218 lines of code y: 6 # changes lib/imovo/imovo-sttp-client/src/main/scala/com/gu/imovo/ImovoClient.scala x: 250 lines of code y: 21 # changes
409.0
# changes
  min: 1.0
  average: 11.39
  25th percentile: 3.0
  median: 7.0
  75th percentile: 14.0
  max: 409.0
0 8614.0
lines of code
min: 1.0 | average: 71.38 | 25th percentile: 17.0 | median: 37.0 | 75th percentile: 75.0 | max: 8614.0

Number of Contributors vs. Number of Changes: 1322 points

cdk/lib/soft-opt-in-consent-setter.ts x: 4 # contributors y: 17 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 15 # contributors y: 51 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/IAPMessageProcessor.scala x: 4 # contributors y: 18 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 1 # contributors y: 1 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 8 # contributors y: 31 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 5 # contributors y: 6 # changes project/Dependencies.scala x: 38 # contributors y: 409 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 13 # contributors y: 38 # changes handlers/alarms-handler/src/alarmMappings.ts x: 18 # contributors y: 113 # changes modules/multiple-account/src/secondaryUserRepository.ts x: 2 # contributors y: 13 # changes modules/zuora/src/objectQuery/expandSchemas/subscriptionItemSchema.ts x: 2 # contributors y: 4 # changes modules/zuora/src/objectQuery/queries/accountObjectQuery.ts x: 2 # contributors y: 2 # changes handlers/product-move-api/cfn.yaml x: 16 # contributors y: 93 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 13 # contributors y: 78 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 6 # contributors y: 21 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/ZuoraCancel.scala x: 11 # contributors y: 38 # changes buildcheck/data/build.ts x: 10 # contributors y: 46 # changes buildcheck/data/dependencies.ts x: 3 # contributors y: 13 # changes cdk/lib/cdk/SrSqsLambda.ts x: 1 # contributors y: 4 # changes modules/routing/src/sqsHandler.ts x: 2 # contributors y: 8 # changes cdk/lib/iam-policies.ts x: 4 # contributors y: 8 # changes handlers/supporter-product-data-lambdas/src/handlers/processSupporterRatePlanItem.ts x: 1 # contributors y: 6 # changes handlers/mparticle-acquisitions-publisher/src/acquisitions.ts x: 1 # contributors y: 2 # changes handlers/mparticle-api/runManual/invokeHandlerSARStatus.ts x: 3 # contributors y: 12 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/deleteUser.ts x: 3 # contributors y: 4 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/getStatus.ts x: 3 # contributors y: 6 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/getStatusByUserId.ts x: 4 # contributors y: 6 # changes handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 5 # contributors y: 10 # changes handlers/mparticle-api/src/index.ts x: 8 # contributors y: 45 # changes handlers/mparticle-api/src/routers/baton/access/handleStatus.ts x: 4 # contributors y: 9 # changes handlers/mparticle-api/src/routers/http.ts x: 5 # contributors y: 18 # changes handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/data-subject-request-callback.ts x: 4 # contributors y: 13 # changes handlers/mparticle-api/src/routers/shared/addErasureExclusionAttributes.ts x: 5 # contributors y: 9 # changes modules/arrayFunctions.ts x: 10 # contributors y: 39 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SupportedProduct.scala x: 15 # contributors y: 37 # changes modules/product-catalog/src/productCatalogSchema.ts x: 11 # contributors y: 64 # changes modules/product-catalog/src/zuoraToProductNameMappings.ts x: 11 # contributors y: 57 # changes handlers/multiple-account-api/src/createInvitationEndpoint.ts x: 4 # contributors y: 12 # changes handlers/multiple-account-api/src/deleteInvitationEndpoint.ts x: 3 # contributors y: 7 # changes cdk/lib/multiple-account-api.ts x: 3 # contributors y: 9 # changes handlers/update-supporter-plus-amount/src/supporterPlusAmountBands.ts x: 3 # contributors y: 19 # changes handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 5 # contributors y: 41 # changes modules/product-catalog/src/productCatalog.ts x: 12 # contributors y: 60 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpirySteps.scala x: 10 # contributors y: 33 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/zuora/SetActivationDate.scala x: 7 # contributors y: 13 # changes lib/zuora-models/src/main/scala/com/gu/newproduct/api/addsubscription/validation/supporterplus/AmountLimits.scala x: 5 # contributors y: 7 # changes modules/product-catalog/src/generateProductCatalog.ts x: 10 # contributors y: 36 # changes modules/product-catalog/src/generateSchema.ts x: 7 # contributors y: 23 # changes handlers/multiple-account-api/openapi.yaml x: 2 # contributors y: 12 # changes handlers/multiple-account-api/src/invitationRepository.ts x: 2 # contributors y: 11 # changes handlers/multiple-account-api/src/listSecondaryUsersEndpoint.ts x: 2 # contributors y: 6 # changes handlers/supporter-product-data-lambdas/src/handlers/processSupporterRatePlanItemLambda.ts x: 1 # contributors y: 7 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddContribution.scala x: 13 # contributors y: 33 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddDigipackSub.scala x: 15 # contributors y: 34 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddGuardianWeeklySub.scala x: 17 # contributors y: 42 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddPaperSub.scala x: 15 # contributors y: 43 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSupporterPlus.scala x: 14 # contributors y: 38 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddTierThree.scala x: 6 # contributors y: 10 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 25 # contributors y: 100 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateAccount.scala x: 8 # contributors y: 20 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccount.scala x: 9 # contributors y: 18 # changes handlers/multiple-account-api/src/index.ts x: 2 # contributors y: 17 # changes handlers/holiday-stop-processor/riff-raff.yaml x: 7 # contributors y: 7 # changes handlers/stripe-disputes/src/sqs-consumers/listenDisputeClosed.ts x: 3 # contributors y: 10 # changes modules/zuora/src/orders/orderActions.ts x: 5 # contributors y: 26 # changes handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProcessor.scala x: 16 # contributors y: 52 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/framework/ZIOApiGatewayRequestHandler.scala x: 13 # contributors y: 40 # changes lib/credit-processor/src/main/scala/com/gu/creditprocessor/Processor.scala x: 16 # contributors y: 44 # changes modules/zuora/src/discount.ts x: 4 # contributors y: 10 # changes modules/zuora/src/orders/orderRequests.ts x: 6 # contributors y: 17 # changes handlers/braze-acquisition-events-sync/src/services.ts x: 3 # contributors y: 3 # changes handlers/discount-api/src/discountEndpoint.ts x: 10 # contributors y: 61 # changes handlers/discount-api/src/index.ts x: 6 # contributors y: 50 # changes modules/zuora/src/zuoraClient.ts x: 9 # contributors y: 49 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancel.scala x: 12 # contributors y: 19 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelHandler.scala x: 12 # contributors y: 21 # changes handlers/delivery-problem-credit-processor/riff-raff.yaml x: 7 # contributors y: 10 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Handler.scala x: 13 # contributors y: 48 # changes lib/zuora-core/src/main/scala/com/gu/zuora/Zuora.scala x: 11 # contributors y: 19 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/CreditProduct.scala x: 7 # contributors y: 18 # changes lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SubscriptionUpdate.scala x: 7 # contributors y: 16 # changes modules/email/src/email.ts x: 8 # contributors y: 35 # changes cdk/lib/discount-expiry-notifier.ts x: 6 # contributors y: 37 # changes cdk/lib/negative-invoices-processor.ts x: 7 # contributors y: 28 # changes modules/zuora/src/subscription.ts x: 4 # contributors y: 16 # changes modules/product-catalog/src/stripeProducts.ts x: 6 # contributors y: 27 # changes handlers/update-supporter-plus-amount/src/sendEmail.ts x: 3 # contributors y: 22 # changes modules/internationalisation/src/currency.ts x: 2 # contributors y: 15 # changes modules/zuora/src/createSubscription/createSubscription.ts x: 6 # contributors y: 30 # changes modules/zuora/src/orders/newAccount.ts x: 3 # contributors y: 15 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/NewProductApi.scala x: 17 # contributors y: 57 # changes handlers/product-switch-api/src/changePlan/switchDefinition/digitalSubscriptionTargetInformation.ts x: 2 # contributors y: 9 # changes modules/zuora/src/billingPreview.ts x: 8 # contributors y: 27 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/WireModel.scala x: 15 # contributors y: 62 # changes handlers/alarms-handler/src/index.ts x: 11 # contributors y: 51 # changes handlers/discount-api/src/eligibilityChecker.ts x: 8 # contributors y: 51 # changes handlers/discount-expiry-notifier/src/handlers/sendEmail.ts x: 5 # contributors y: 14 # changes handlers/negative-invoices-processor/src/handlers/doCreditBalanceRefund.ts x: 6 # contributors y: 18 # changes handlers/press-reader-entitlements/src/index.ts x: 4 # contributors y: 25 # changes handlers/product-switch-api/src/changePlan/action/getPaymentSchedule.ts x: 2 # contributors y: 1 # changes handlers/product-switch-api/src/payment.ts x: 8 # contributors y: 21 # changes handlers/promotions-lambdas/src/handlers/promoCodeView.ts x: 4 # contributors y: 4 # changes handlers/update-supporter-plus-amount/src/index.ts x: 4 # contributors y: 23 # changes handlers/zuora-salesforce-link-remover/src/handlers/getBillingAccounts.ts x: 7 # contributors y: 17 # changes modules/product-benefits/src/productBenefit.ts x: 5 # contributors y: 20 # changes modules/product-catalog/src/generateProductPurchaseSchema.ts x: 5 # contributors y: 15 # changes modules/test-users/src/cancel.ts x: 5 # contributors y: 12 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/PricesFromZuoraCatalog.scala x: 11 # contributors y: 25 # changes lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/PlanId.scala x: 11 # contributors y: 28 # changes handlers/sf-emails-to-s3-exporter/riff-raff.yaml x: 8 # contributors y: 10 # changes handlers/sf-move-subscriptions-api/riff-raff.yaml x: 11 # contributors y: 11 # changes handlers/negative-invoices-processor/src/handlers/getInvoices.ts x: 6 # contributors y: 24 # changes handlers/ticket-tailor-webhook/src/validateRequest.ts x: 6 # contributors y: 14 # changes handlers/discount-api/src/productToDiscountMapping.ts x: 8 # contributors y: 55 # changes handlers/identity-backfill/cfn.yaml x: 9 # contributors y: 26 # changes handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 19 # contributors y: 83 # changes handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/IdentityBackfillSteps.scala x: 9 # contributors y: 43 # changes lib/restHttp/src/main/scala/com/gu/util/resthttp/Types.scala x: 10 # contributors y: 17 # changes handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 15 # contributors y: 122 # changes handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/WireHolidayStopRequest.scala x: 11 # contributors y: 52 # changes lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 15 # contributors y: 99 # changes lib/salesforce/client/src/main/scala/com/gu/salesforce/SalesforceClient.scala x: 13 # contributors y: 18 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/digipack/DigipackAddressValidator.scala x: 10 # contributors y: 15 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/SendConfirmationEmail.scala x: 15 # contributors y: 48 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/plans/GuardianWeeklyPlans.scala x: 6 # contributors y: 8 # changes handlers/digital-voucher-api/cfn.yaml x: 14 # contributors y: 29 # changes handlers/digital-voucher-cancellation-processor/cfn.yaml x: 8 # contributors y: 12 # changes handlers/digital-voucher-suspension-processor/cfn.yaml x: 11 # contributors y: 32 # changes handlers/zuora-callout-apis/riff-raff.yaml x: 14 # contributors y: 23 # changes cdk/lib/product-switch-api.ts x: 8 # contributors y: 28 # changes cdk/lib/alarms-handler.ts x: 11 # contributors y: 39 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/zuora/GetSubscriptionExpiry.scala x: 12 # contributors y: 23 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelSteps.scala x: 10 # contributors y: 14 # changes lib/handler/src/main/scala/com/gu/util/reader/Types.scala x: 11 # contributors y: 46 # changes lib/google-bigquery/src/main/scala/com/gu/google/BigQueryConfig.scala x: 9 # contributors y: 10 # changes modules/aws/src/cloudwatch.ts x: 6 # contributors y: 12 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/serialisers/DigipackEmailFields.scala x: 7 # contributors y: 12 # changes handlers/salesforce-disaster-recovery/src/handlers/updateZuoraAccounts.ts x: 4 # contributors y: 20 # changes handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelDataCollectionFilter.scala x: 9 # contributors y: 14 # changes handlers/digital-voucher-suspension-processor/src/main/scala/com/gu/digitalvouchersuspensionprocessor/Handler.scala x: 12 # contributors y: 20 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/SQS.scala x: 10 # contributors y: 38 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpointTypes.scala x: 12 # contributors y: 48 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/SubscriptionUpdate.scala x: 11 # contributors y: 65 # changes handlers/sf-gocardless-sync/src/main/scala/com/gu/sf_gocardless_sync/Handler.scala x: 14 # contributors y: 25 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/SoftOptInError.scala x: 8 # contributors y: 14 # changes handlers/stripe-webhook-endpoints/src/main/scala/com/gu/stripeCardUpdated/CardUpdatedMessageBody.scala x: 6 # contributors y: 9 # changes cdk/lib/discount-api.ts x: 8 # contributors y: 39 # changes handlers/discount-expiry-notifier/riff-raff.yaml x: 3 # contributors y: 20 # changes modules/zuora/src/invoice.ts x: 8 # contributors y: 24 # changes cdk/lib/press-reader-entitlements.ts x: 6 # contributors y: 20 # changes cdk/lib/batch-email-sender.ts x: 9 # contributors y: 22 # changes cdk/lib/new-product-api.ts x: 12 # contributors y: 33 # changes cdk/lib/single-contribution-salesforce-writes.ts x: 7 # contributors y: 25 # changes cdk/lib/stripe-webhook-endpoints.ts x: 10 # contributors y: 26 # changes handlers/sf-datalake-export/cfn.yaml x: 17 # contributors y: 47 # changes handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/S3UploadFile.scala x: 6 # contributors y: 16 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/zuora/GetSubscriptionToCancel.scala x: 10 # contributors y: 19 # changes cdk/lib/salesforce-disaster-recovery.ts x: 7 # contributors y: 53 # changes handlers/batch-email-sender/src/main/scala/com/gu/batchemailsender/api/batchemail/Handler.scala x: 13 # contributors y: 32 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/contribution/ContributionValidations.scala x: 9 # contributors y: 24 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 14 # contributors y: 99 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/GetSubscription.scala x: 12 # contributors y: 51 # changes handlers/single-contribution-salesforce-writes/src/main/scala/com/gu/singleContributionSalesforceWrites/services/Salesforce.scala x: 8 # contributors y: 9 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/SalesforceConnector.scala x: 12 # contributors y: 43 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/sfSubRecordUpdate.scala x: 8 # contributors y: 18 # changes lib/effects/src/main/scala/com/gu/effects/Http.scala x: 12 # contributors y: 26 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper/PaperAddressValidator.scala x: 13 # contributors y: 25 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/GetAccount.scala x: 12 # contributors y: 46 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/InvoiceItemAdjustment.scala x: 9 # contributors y: 31 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/Subscribe.scala x: 9 # contributors y: 34 # changes handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProduct.scala x: 9 # contributors y: 29 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayCreditProduct.scala x: 12 # contributors y: 41 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/Secrets.scala x: 9 # contributors y: 28 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/available/AvailableProductMovesEndpoint.scala x: 12 # contributors y: 45 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/invoicingapi/InvoicingApiRefund.scala x: 13 # contributors y: 50 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/salesforce/SalesforceClient.scala x: 10 # contributors y: 28 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/GetCatalogue.scala x: 10 # contributors y: 31 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest/ZuoraClient.scala x: 12 # contributors y: 69 # changes lib/effects-s3/src/main/scala/com/gu/effects/AwsS3.scala x: 12 # contributors y: 17 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/BuildPreviewResult.scala x: 8 # contributors y: 33 # changes handlers/catalog-service/cfn.yaml x: 16 # contributors y: 26 # changes handlers/catalog-service/src/main/scala/com/gu/catalogService/Handler.scala x: 11 # contributors y: 37 # changes handlers/fulfilment-date-calculator/cfn.yaml x: 15 # contributors y: 31 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/ZuoraHolidayCreditAddResult.scala x: 8 # contributors y: 16 # changes handlers/cancellation-sf-cases-api/cfn.yaml x: 13 # contributors y: 20 # changes handlers/contact-us-api/cfn.yaml x: 17 # contributors y: 44 # changes handlers/delivery-records-api/cfn.yaml x: 16 # contributors y: 22 # changes handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/DeliveryRecordApiRoutes.scala x: 11 # contributors y: 29 # changes handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/DeliveryRecordsApiApp.scala x: 13 # contributors y: 27 # changes handlers/digital-voucher-cancellation-processor/src/main/scala/com/gu/digital_voucher_cancellation_processor/Handler.scala x: 13 # contributors y: 21 # changes handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Salesforce.scala x: 15 # contributors y: 66 # changes handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointTypes.scala x: 9 # contributors y: 25 # changes handlers/sf-contact-merge/cfn.yaml x: 8 # contributors y: 25 # changes handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/DomainSteps.scala x: 9 # contributors y: 17 # changes handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/Handler.scala x: 9 # contributors y: 48 # changes handlers/stripe-webhook-endpoints/riff-raff.yaml x: 11 # contributors y: 22 # changes handlers/zuora-sar/src/main/scala/com/gu/zuora/sar/ZuoraSarService.scala x: 12 # contributors y: 14 # changes lib/handler/src/main/scala/com/gu/util/apigateway/ApiGatewayHandler.scala x: 7 # contributors y: 35 # changes lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceSFSubscription.scala x: 11 # contributors y: 23 # changes lib/salesforce/client/src/main/scala/com/gu/salesforce/SalesforceAuthenticate.scala x: 7 # contributors y: 9 # changes lib/zuora/src/main/scala/com/gu/util/zuora/SafeQueryBuilder.scala x: 12 # contributors y: 25 # changes lib/zuora/src/main/scala/com/gu/util/zuora/ZuoraRestRequestMaker.scala x: 11 # contributors y: 27 # changes handlers/dev-env-cleaner/cfn.yaml x: 10 # contributors y: 22 # changes handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSubscriptionRequest.scala x: 14 # contributors y: 42 # changes handlers/sf-api-user-credentials-setter/cfn.yaml x: 10 # contributors y: 20 # changes lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequestsDetail.scala x: 13 # contributors y: 60 # changes handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/Handler.scala x: 7 # contributors y: 36 # changes lib/handler/src/main/scala/com/gu/util/config/ConfigModels.scala x: 15 # contributors y: 33 # changes handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/Handler.scala x: 8 # contributors y: 17 # changes handlers/delivery-records-api/riff-raff.yaml x: 8 # contributors y: 8 # changes handlers/digital-voucher-suspension-processor/riff-raff.yaml x: 6 # contributors y: 6 # changes handlers/fulfilment-date-calculator/riff-raff.yaml x: 9 # contributors y: 8 # changes handlers/identity-backfill/riff-raff.yaml x: 9 # contributors y: 9 # changes handlers/product-move-api/riff-raff.yaml x: 9 # contributors y: 16 # changes handlers/zuora-sar/riff-raff.yaml x: 11 # contributors y: 9 # changes lib/config-core/src/main/scala/com/gu/util/config/Stage.scala x: 10 # contributors y: 12 # changes handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/SfQueries.scala x: 9 # contributors y: 20 # changes handlers/zuora-sar/src/local/com/gu/zuora/sar/ZuoraSarLocalRun.scala x: 10 # contributors y: 9 # changes handlers/digital-voucher-api/src/main/scala/com/gu/digital_voucher_api/DigitalVoucherApiRoutes.scala x: 12 # contributors y: 38 # changes handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter/S3Connector.scala x: 4 # contributors y: 22 # changes handlers/zuora-sar/src/main/scala/com/gu/zuora/sar/BatonModels.scala x: 8 # contributors y: 6 # changes handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/salesforce/UpdateSalesforceIdentityId.scala x: 3 # contributors y: 17 # changes handlers/zuora-sar/src/main/resources/logback.xml x: 7 # contributors y: 5 # changes lib/holiday-stops/src/main/scala/com/gu/holiday_stops/Configuration.scala x: 4 # contributors y: 3 # changes
409.0
# changes
  min: 1.0
  average: 11.39
  25th percentile: 3.0
  median: 7.0
  75th percentile: 14.0
  max: 409.0
0 38.0
# contributors
min: 1.0 | average: 4.62 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 7.0 | max: 38.0

Number of Contributors vs. File Size: 1322 points

cdk/lib/soft-opt-in-consent-setter.ts x: 4 # contributors y: 453 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 15 # contributors y: 189 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/IAPMessageProcessor.scala x: 4 # contributors y: 190 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 1 # contributors y: 113 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 8 # contributors y: 119 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 5 # contributors y: 36 lines of code project/Dependencies.scala x: 38 # contributors y: 119 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 13 # contributors y: 105 lines of code handlers/alarms-handler/src/alarmMappings.ts x: 18 # contributors y: 151 lines of code modules/multiple-account/src/secondaryUserRepository.ts x: 2 # contributors y: 238 lines of code modules/zuora/src/objectQuery/expandSchemas/subscriptionItemSchema.ts x: 2 # contributors y: 78 lines of code modules/zuora/src/objectQuery/queries/accountObjectQuery.ts x: 2 # contributors y: 54 lines of code handlers/product-move-api/cfn.yaml x: 16 # contributors y: 636 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/SubscriptionEventService.scala x: 1 # contributors y: 92 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 13 # contributors y: 168 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 6 # contributors y: 163 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/ZuoraCancel.scala x: 11 # contributors y: 137 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/model/OrderNumber.scala x: 1 # contributors y: 14 lines of code buildcheck/data/build.ts x: 10 # contributors y: 994 lines of code buildcheck/data/dependencies.ts x: 3 # contributors y: 57 lines of code cdk/lib/cdk/SrSubscriptionEventsLambda.ts x: 1 # contributors y: 38 lines of code cdk/lib/mparticle-acquisitions-publisher.ts x: 2 # contributors y: 113 lines of code handlers/multiple-account-api/src/acceptInvitationEndpoint.ts x: 3 # contributors y: 111 lines of code handlers/mparticle-acquisitions-publisher/src/acquisitions.ts x: 1 # contributors y: 312 lines of code handlers/mparticle-api/runManual/invokeHandlerSARStatus.ts x: 3 # contributors y: 24 lines of code handlers/mparticle-api/src/apis/dataSubjectRequests/getStatusByUserId.ts x: 4 # contributors y: 43 lines of code handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 5 # contributors y: 96 lines of code handlers/mparticle-api/src/index.ts x: 8 # contributors y: 161 lines of code handlers/mparticle-api/src/routers/baton.ts x: 4 # contributors y: 100 lines of code handlers/mparticle-api/src/routers/http.ts x: 5 # contributors y: 29 lines of code handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/data-subject-request-callback.ts x: 4 # contributors y: 148 lines of code handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/validate-data-subject-request-callback.ts x: 3 # contributors y: 149 lines of code handlers/mparticle-api/src/services/mparticleDeletion.ts x: 3 # contributors y: 81 lines of code modules/mparticle/src/mparticleHttpClient.ts x: 1 # contributors y: 200 lines of code modules/zuora/src/restClient.ts x: 5 # contributors y: 222 lines of code modules/arrayFunctions.ts x: 10 # contributors y: 220 lines of code lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SupportedProduct.scala x: 15 # contributors y: 374 lines of code modules/product-catalog/src/productCatalogSchema.ts x: 11 # contributors y: 2519 lines of code modules/product-catalog/src/productPurchaseSchema.ts x: 6 # contributors y: 220 lines of code modules/product-catalog/src/zuoraToProductNameMappings.ts x: 11 # contributors y: 234 lines of code modules/guardian-subscription/src/guardianSubscriptionParser.ts x: 2 # contributors y: 209 lines of code modules/guardian-subscription/src/reprocessRatePlans/zuoraRatePlanBuilder.ts x: 1 # contributors y: 138 lines of code handlers/multiple-account-api/src/deleteSecondaryUserEndpoint.ts x: 3 # contributors y: 187 lines of code modules/internationalisation/src/country.ts x: 4 # contributors y: 524 lines of code modules/internationalisation/src/countryGroup.ts x: 4 # contributors y: 346 lines of code handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 5 # contributors y: 178 lines of code modules/product-catalog/src/productCatalog.ts x: 12 # contributors y: 214 lines of code cdk/lib/supporter-product-data-lambdas.ts x: 1 # contributors y: 259 lines of code handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpirySteps.scala x: 10 # contributors y: 70 lines of code handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/zuora/SetActivationDate.scala x: 7 # contributors y: 21 lines of code modules/product-catalog/src/generateProductCatalog.ts x: 10 # contributors y: 160 lines of code modules/product-catalog/src/generateSchema.ts x: 7 # contributors y: 141 lines of code modules/zuora-catalog/src/zuoraCatalogSchema.ts x: 7 # contributors y: 71 lines of code handlers/multiple-account-api/openapi.yaml x: 2 # contributors y: 858 lines of code handlers/multiple-account-api/src/invitationRepository.ts x: 2 # contributors y: 157 lines of code handlers/multiple-account-api/src/listSecondaryUsersEndpoint.ts x: 2 # contributors y: 16 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddContribution.scala x: 13 # contributors y: 172 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddDigipackSub.scala x: 15 # contributors y: 156 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddGuardianWeeklySub.scala x: 17 # contributors y: 160 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSupporterPlus.scala x: 14 # contributors y: 195 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 25 # contributors y: 191 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateAccount.scala x: 8 # contributors y: 29 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/CreateSubscription.scala x: 10 # contributors y: 186 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccount.scala x: 9 # contributors y: 56 lines of code handlers/stripe-disputes/src/services/cancelSubscriptionService.ts x: 4 # contributors y: 111 lines of code modules/zuora/src/orders/orderActions.ts x: 5 # contributors y: 293 lines of code handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProcessor.scala x: 16 # contributors y: 222 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/framework/ZIOApiGatewayRequestHandler.scala x: 13 # contributors y: 55 lines of code lib/credit-processor/src/main/scala/com/gu/creditprocessor/Processor.scala x: 16 # contributors y: 281 lines of code lib/zuora-core/src/main/scala/com/gu/zuora/ZuoraOrders.scala x: 1 # contributors y: 211 lines of code modules/zuora/src/orders/orderRequests.ts x: 6 # contributors y: 69 lines of code handlers/discount-api/src/discountEndpoint.ts x: 10 # contributors y: 251 lines of code modules/routing/src/router.ts x: 7 # contributors y: 170 lines of code handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancel.scala x: 12 # contributors y: 188 lines of code handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelHandler.scala x: 12 # contributors y: 72 lines of code handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Handler.scala x: 13 # contributors y: 92 lines of code handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayStopCreditProcessor.scala x: 14 # contributors y: 77 lines of code lib/zuora-core/src/main/scala/com/gu/zuora/Zuora.scala x: 11 # contributors y: 93 lines of code lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SubscriptionUpdate.scala x: 7 # contributors y: 51 lines of code cdk/lib/scrub-non-tokenised-payment-methods.ts x: 1 # contributors y: 278 lines of code cdk/lib/discount-expiry-notifier.ts x: 6 # contributors y: 352 lines of code cdk/lib/negative-invoices-processor.ts x: 7 # contributors y: 395 lines of code modules/product-catalog/src/stripeProducts.ts x: 6 # contributors y: 105 lines of code handlers/product-switch-api/src/frequencySwitchEndpoint.ts x: 3 # contributors y: 394 lines of code modules/email/src/dataFields/dayZero/paymentDescription.ts x: 2 # contributors y: 191 lines of code modules/zuora/src/createSubscription/createSubscription.ts x: 6 # contributors y: 287 lines of code modules/zuora/src/createSubscription/previewCreateSubscription.ts x: 5 # contributors y: 110 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/NewProductApi.scala x: 17 # contributors y: 52 lines of code cdk/lib/generate-product-catalog.ts x: 10 # contributors y: 118 lines of code lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ZuoraIds.scala x: 16 # contributors y: 417 lines of code handlers/alarms-handler/src/cloudwatch.ts x: 8 # contributors y: 58 lines of code handlers/discount-expiry-notifier/src/handlers/getOldPaymentAmount.ts x: 4 # contributors y: 234 lines of code handlers/discount-expiry-notifier/src/handlers/sendEmail.ts x: 5 # contributors y: 145 lines of code handlers/generate-product-catalog/src/index.ts x: 6 # contributors y: 48 lines of code handlers/metric-push-api/src/index.ts x: 4 # contributors y: 30 lines of code handlers/promotions-lambdas/src/handlers/promoCodeView.ts x: 4 # contributors y: 241 lines of code handlers/write-off-unpaid-invoices/src/handlers/getUnpaidInvoices.ts x: 7 # contributors y: 8614 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/Handler.scala x: 15 # contributors y: 52 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/PricesFromZuoraCatalog.scala x: 11 # contributors y: 106 lines of code handlers/sf-move-subscriptions-api/riff-raff.yaml x: 11 # contributors y: 24 lines of code handlers/identity-backfill/cfn.yaml x: 9 # contributors y: 213 lines of code handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 19 # contributors y: 194 lines of code handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/IdentityBackfillSteps.scala x: 9 # contributors y: 102 lines of code handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 15 # contributors y: 552 lines of code lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 15 # contributors y: 356 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/digipack/DigipackAddressValidator.scala x: 10 # contributors y: 27 lines of code lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ProductType.scala x: 6 # contributors y: 13 lines of code handlers/digital-voucher-api/cfn.yaml x: 14 # contributors y: 240 lines of code handlers/digital-voucher-cancellation-processor/cfn.yaml x: 8 # contributors y: 206 lines of code handlers/digital-voucher-suspension-processor/cfn.yaml x: 11 # contributors y: 174 lines of code handlers/zuora-callout-apis/riff-raff.yaml x: 14 # contributors y: 38 lines of code cdk/lib/mparticle-api.ts x: 8 # contributors y: 200 lines of code lib/google-bigquery/src/main/scala/com/gu/google/BigQueryConfig.scala x: 9 # contributors y: 8 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/EmailData.scala x: 14 # contributors y: 109 lines of code handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelDataCollectionFilter.scala x: 9 # contributors y: 85 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/SQS.scala x: 10 # contributors y: 278 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpointTypes.scala x: 12 # contributors y: 53 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/HandlerIAP.scala x: 12 # contributors y: 129 lines of code modules/zuora/src/invoice.ts x: 8 # contributors y: 75 lines of code cdk/lib/batch-email-sender.ts x: 9 # contributors y: 173 lines of code cdk/lib/new-product-api.ts x: 12 # contributors y: 244 lines of code cdk/lib/write-off-unpaid-invoices.ts x: 6 # contributors y: 311 lines of code handlers/sf-datalake-export/cfn.yaml x: 17 # contributors y: 592 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/zuora/GetSubscriptionToCancel.scala x: 10 # contributors y: 64 lines of code cdk/lib/salesforce-disaster-recovery.ts x: 7 # contributors y: 504 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 14 # contributors y: 216 lines of code handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/switchtype/RecurringContributionToSupporterPlus.scala x: 4 # contributors y: 374 lines of code handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/SalesforceConnector.scala x: 12 # contributors y: 140 lines of code handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper/PaperAddressValidator.scala x: 13 # contributors y: 1335 lines of code handlers/dev-env-cleaner/src/main/scala/com/gu/cleaner/Handler.scala x: 13 # contributors y: 231 lines of code handlers/catalog-service/cfn.yaml x: 16 # contributors y: 195 lines of code handlers/catalog-service/src/main/scala/com/gu/catalogService/Handler.scala x: 11 # contributors y: 40 lines of code handlers/fulfilment-date-calculator/cfn.yaml x: 15 # contributors y: 135 lines of code lib/zuora-core/src/main/scala/com/gu/zuora/subscription/RatePlanChargeBillingSchedule.scala x: 9 # contributors y: 289 lines of code handlers/contact-us-api/cfn.yaml x: 17 # contributors y: 327 lines of code handlers/holiday-stop-api/cfn.yaml x: 17 # contributors y: 406 lines of code handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/DomainSteps.scala x: 9 # contributors y: 148 lines of code handlers/stripe-webhook-endpoints/cfn.yaml x: 7 # contributors y: 102 lines of code handlers/zuora-retention/cfn.yaml x: 6 # contributors y: 498 lines of code lib/effects-sqs/src/main/scala/com/gu/effects/sqs/AwsSQSSend.scala x: 12 # contributors y: 20 lines of code handlers/product-move-api/OpenAPISpec.yaml x: 5 # contributors y: 239 lines of code handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/SfQueries.scala x: 13 # contributors y: 590 lines of code lib/imovo/imovo-sttp-client/src/main/scala/com/gu/imovo/ImovoClient.scala x: 9 # contributors y: 250 lines of code
8614.0
lines of code
  min: 1.0
  average: 71.38
  25th percentile: 17.0
  median: 37.0
  75th percentile: 75.0
  max: 8614.0
0 38.0
# contributors
min: 1.0 | average: 4.62 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 7.0 | max: 38.0

Number of Changes vs. Line Churn: 4159 points

build.sbt x: 419 # changes y: 10486 line churn cdk/lib/__snapshots__/soft-opt-in-consent-setter.test.ts.snap x: 18 # changes y: 10605 line churn cdk/lib/soft-opt-in-consent-setter.ts x: 17 # changes y: 3315 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 51 # changes y: 1891 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/IAPMessageProcessor.scala x: 18 # changes y: 1778 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 1 # changes y: 128 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 31 # changes y: 822 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 6 # changes y: 144 line churn handlers/soft-opt-in-consent-setter/src/test/scala/com/gu/soft_opt_in_consent_setter/EnhancedSubTests.scala x: 8 # changes y: 275 line churn handlers/soft-opt-in-consent-setter/src/test/scala/com/gu/soft_opt_in_consent_setter/HandlerTests.scala x: 7 # changes y: 2908 line churn project/Dependencies.scala x: 409 # changes y: 4362 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 38 # changes y: 934 line churn handlers/soft-opt-in-consent-setter/src/test/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculatorTests.scala x: 11 # changes y: 1913 line churn handlers/alarms-handler/src/alarmMappings.ts x: 113 # changes y: 1595 line churn modules/multiple-account/src/secondaryUserRepository.ts x: 13 # changes y: 312 line churn modules/zuora/src/objectQuery/expandSchemas/subscriptionItemSchema.ts x: 4 # changes y: 149 line churn modules/zuora/src/objectQuery/queries/accountObjectQuery.ts x: 2 # changes y: 68 line churn .github/workflows/ci-scala.yml x: 61 # changes y: 705 line churn .github/workflows/sbt-dependency-graph.yaml x: 15 # changes y: 116 line churn handlers/product-move-api/cfn.yaml x: 93 # changes y: 3721 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 78 # changes y: 3604 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 21 # changes y: 922 line churn handlers/product-move-api/src/test/scala/com/gu/productmove/HandlerSpec.scala x: 107 # changes y: 10602 line churn handlers/product-move-api/src/test/scala/com/gu/productmove/zuora/MockZuoraCancel.scala x: 16 # changes y: 246 line churn handlers/product-move-api/src/test/scala/com/gu/productmove/zuora/ZuoraCancelSpec.scala x: 3 # changes y: 239 line churn BUILDCHECK.md x: 26 # changes y: 308 line churn buildcheck/data/build.ts x: 46 # changes y: 2203 line churn modules/aws/package.json x: 50 # changes y: 309 line churn pnpm-lock.yaml x: 255 # changes y: 514288 line churn handlers/multiple-account-api/src/acceptInvitationEndpoint.ts x: 14 # changes y: 274 line churn handlers/supporter-product-data-lambdas/test/processSupporterRatePlanItemLambda.test.ts x: 7 # changes y: 183 line churn .github/workflows/ci-typescript.yml x: 107 # changes y: 829 line churn cdk/bin/cdk.ts x: 141 # changes y: 3094 line churn handlers/mparticle-api/package.json x: 37 # changes y: 330 line churn handlers/mparticle-api/runManual/invokeHandlerSARStatus.ts x: 12 # changes y: 417 line churn handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 10 # changes y: 700 line churn handlers/mparticle-api/src/index.ts x: 45 # changes y: 4054 line churn handlers/mparticle-api/src/routers/baton/access/handleStatus.ts x: 9 # changes y: 490 line churn handlers/mparticle-api/test/baton.spec.ts x: 23 # changes y: 1675 line churn modules/zuora/test/restClient.test.ts x: 5 # changes y: 306 line churn modules/arrayFunctions.ts x: 39 # changes y: 1104 line churn handlers/update-supporter-plus-amount/test/updateSupporterPlusAmounts.test.ts x: 25 # changes y: 150 line churn modules/product-catalog/src/productCatalogSchema.ts x: 64 # changes y: 29912 line churn modules/product-catalog/src/zuoraToProductNameMappings.ts x: 57 # changes y: 1259 line churn modules/product-catalog/test/__snapshots__/generateProductCatalog.test.ts.snap x: 73 # changes y: 35848 line churn modules/zuora-catalog/test/fixtures/catalog-code.json x: 30 # changes y: 699764 line churn modules/zuora-catalog/test/fixtures/catalog-prod.json x: 36 # changes y: 530465 line churn modules/zuora/test/buildCreateSubscriptionRequest.test.ts x: 17 # changes y: 1685 line churn cdk/lib/__snapshots__/multiple-account-api.test.ts.snap x: 11 # changes y: 2835 line churn handlers/update-supporter-plus-amount/src/supporterPlusAmountBands.ts x: 19 # changes y: 212 line churn handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 41 # changes y: 1792 line churn modules/product-catalog/src/productCatalog.ts x: 60 # changes y: 2285 line churn cdk/lib/__snapshots__/supporter-product-data-lambdas.test.ts.snap x: 4 # changes y: 3607 line churn handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpirySteps.scala x: 33 # changes y: 1040 line churn handlers/digital-subscription-expiry/src/test/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpiryStepsTest.scala x: 42 # changes y: 1301 line churn modules/product-catalog/src/generateProductCatalog.ts x: 36 # changes y: 970 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddDigipackSub.scala x: 34 # changes y: 946 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddPaperSub.scala x: 43 # changes y: 1084 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 100 # changes y: 4643 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateAccount.scala x: 20 # changes y: 381 line churn handlers/new-product-api/src/test/scala/com/gu/newproduct/api/addsubscription/PaperStepsTest.scala x: 52 # changes y: 1353 line churn handlers/new-product-api/src/test/scala/com/gu/newproduct/api/addsubscription/SupporterPlusStepsTest.scala x: 22 # changes y: 655 line churn handlers/new-product-api/src/test/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccountEffectsTest.scala x: 29 # changes y: 254 line churn handlers/holiday-stop-processor/cfn.yaml x: 62 # changes y: 760 line churn cdk/package.json x: 80 # changes y: 1152 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/framework/ZIOApiGatewayRequestHandler.scala x: 40 # changes y: 1164 line churn lib/credit-processor/src/main/scala/com/gu/creditprocessor/Processor.scala x: 44 # changes y: 1695 line churn handlers/delivery-problem-credit-processor/cfn.yaml x: 35 # changes y: 792 line churn handlers/discount-api/src/discountEndpoint.ts x: 61 # changes y: 3066 line churn modules/zuora/src/zuoraClient.ts x: 49 # changes y: 1210 line churn handlers/product-move-api/src/test/scala/com/gu/productmove/Stubs.scala x: 84 # changes y: 5632 line churn handlers/product-move-api/src/test/scala/com/gu/productmove/zuora/JsonCodecSpec.scala x: 32 # changes y: 673 line churn handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Handler.scala x: 48 # changes y: 1055 line churn handlers/holiday-stop-processor/src/test/scala/com/gu/holidaystopprocessor/HolidayStopProcessTest.scala x: 75 # changes y: 4215 line churn project/plugins.sbt x: 53 # changes y: 282 line churn cdk/lib/__snapshots__/scrub-non-tokenised-payment-methods.test.ts.snap x: 2 # changes y: 2861 line churn cdk/lib/discount-expiry-notifier.ts x: 37 # changes y: 3623 line churn cdk/lib/negative-invoices-processor.ts x: 28 # changes y: 5356 line churn README.md x: 73 # changes y: 1459 line churn package.json x: 100 # changes y: 633 line churn modules/product-catalog/src/stripeProducts.ts x: 27 # changes y: 705 line churn modules/zuora/src/createSubscription/createSubscription.ts x: 30 # changes y: 1599 line churn handlers/new-product-api/src/test/scala/com/gu/newproduct/api/productcatalog/CatalogWireTest.scala x: 90 # changes y: 9589 line churn handlers/new-product-api/src/test/scala/com/gu/newproduct/api/productcatalog/catalogWireTest.json x: 29 # changes y: 7869 line churn cdk/lib/__snapshots__/braze-acquisition-events-sync.test.ts.snap x: 3 # changes y: 2833 line churn cdk/lib/__snapshots__/generate-product-catalog.test.ts.snap x: 41 # changes y: 12376 line churn lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ZuoraIds.scala x: 44 # changes y: 4121 line churn modules/bigquery/package.json x: 24 # changes y: 226 line churn modules/product-catalog/package.json x: 45 # changes y: 339 line churn handlers/alarms-handler/src/index.ts x: 51 # changes y: 3804 line churn handlers/discount-api/test/eligibilityChecker.test.ts x: 47 # changes y: 1714 line churn handlers/product-switch-api/src/index.ts x: 28 # changes y: 651 line churn handlers/write-off-unpaid-invoices/src/handlers/getUnpaidInvoices.ts x: 13 # changes y: 112241 line churn cdk/lib/__snapshots__/alarms-handler.test.ts.snap x: 41 # changes y: 20370 line churn cdk/lib/__snapshots__/discount-api.test.ts.snap x: 41 # changes y: 7214 line churn cdk/lib/__snapshots__/discount-expiry-notifier.test.ts.snap x: 38 # changes y: 39980 line churn cdk/lib/__snapshots__/metric-push-api.test.ts.snap x: 22 # changes y: 7465 line churn cdk/lib/__snapshots__/mparticle-api.test.ts.snap x: 31 # changes y: 21948 line churn cdk/lib/__snapshots__/negative-invoices-processor.test.ts.snap x: 29 # changes y: 58183 line churn cdk/lib/__snapshots__/new-product-api.test.ts.snap x: 34 # changes y: 47857 line churn cdk/lib/__snapshots__/observer-data-export.test.ts.snap x: 20 # changes y: 21835 line churn cdk/lib/__snapshots__/press-reader-entitlements.test.ts.snap x: 23 # changes y: 5476 line churn cdk/lib/__snapshots__/product-switch-api.test.ts.snap x: 28 # changes y: 9568 line churn cdk/lib/__snapshots__/promotions-lambdas.test.ts.snap x: 9 # changes y: 6459 line churn cdk/lib/__snapshots__/salesforce-disaster-recovery-health-check.test.ts.snap x: 14 # changes y: 5105 line churn cdk/lib/__snapshots__/salesforce-event-bus.test.ts.snap x: 10 # changes y: 7063 line churn cdk/lib/__snapshots__/single-contribution-salesforce-writes.test.ts.snap x: 26 # changes y: 3762 line churn cdk/lib/__snapshots__/stripe-disputes.test.ts.snap x: 13 # changes y: 12178 line churn cdk/lib/__snapshots__/stripe-webhook-endpoints.test.ts.snap x: 27 # changes y: 26839 line churn cdk/lib/__snapshots__/ticket-tailor-webhook.test.ts.snap x: 25 # changes y: 4719 line churn cdk/lib/__snapshots__/update-supporter-plus-amount.test.ts.snap x: 26 # changes y: 6883 line churn cdk/lib/__snapshots__/user-benefits.test.ts.snap x: 22 # changes y: 12914 line churn cdk/lib/__snapshots__/write-off-unpaid-invoices.test.ts.snap x: 16 # changes y: 28271 line churn cdk/lib/__snapshots__/zuora-salesforce-link-remover.test.ts.snap x: 31 # changes y: 14651 line churn handlers/sf-emails-to-s3-exporter/cfn.yaml x: 39 # changes y: 3218 line churn modules/zuora/test/objectQuery/largeAccountResponse.json x: 1 # changes y: 23325 line churn handlers/alarms-handler/package.json x: 63 # changes y: 363 line churn handlers/product-switch-api/package.json x: 67 # changes y: 341 line churn handlers/salesforce-disaster-recovery/package.json x: 59 # changes y: 366 line churn handlers/update-supporter-plus-amount/package.json x: 56 # changes y: 259 line churn project/build.properties x: 77 # changes y: 216 line churn handlers/discount-api/src/productToDiscountMapping.ts x: 55 # changes y: 2356 line churn handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 83 # changes y: 2320 line churn handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 122 # changes y: 6809 line churn lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 99 # changes y: 4333 line churn lib/holiday-stops/src/test/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequestEndToEndEffectsTest.scala x: 74 # changes y: 1229 line churn handlers/product-switch-api/src/contributionToSupporterPlus.ts x: 50 # changes y: 4252 line churn handlers/product-switch-api/test/contributionToSupporterPlusIntegration.test.ts x: 46 # changes y: 2951 line churn handlers/negative-invoices-processor/package-lock.json x: 11 # changes y: 15676 line churn cdk/lib/__snapshots__/salesforce-disaster-recovery.test.ts.snap x: 54 # changes y: 37703 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/SubscriptionUpdate.scala x: 65 # changes y: 5120 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/HandlerIAP.scala x: 48 # changes y: 4424 line churn cdk/lib/new-product-api.ts x: 33 # changes y: 3866 line churn handlers/zuora-datalake-export/src/main/scala/com/gu/zuora/datalake/export/ExportLambda.scala x: 72 # changes y: 3292 line churn cdk/lib/salesforce-disaster-recovery.ts x: 53 # changes y: 6432 line churn handlers/discount-expiry-notifier/package-lock.json x: 6 # changes y: 5672 line churn handlers/mparticle-api/README.md x: 20 # changes y: 8244 line churn handlers/negative-invoices-processor/test/handlers/detectFailures.test.ts x: 9 # changes y: 4614 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 99 # changes y: 6940 line churn modules/zuora/src/zuoraSchemas.ts x: 40 # changes y: 3582 line churn handlers/mparticle-api/src/apis/data-subject-requests.ts x: 20 # changes y: 3738 line churn handlers/mparticle-api/test/api.spec.ts x: 12 # changes y: 3455 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest/ZuoraClient.scala x: 69 # changes y: 1953 line churn handlers/soft-opt-in-consent-setter/cfn.yaml x: 64 # changes y: 6006 line churn handlers/soft-opt-in-consent-setter/src/test/scala/com.gu.soft_opt_in_consent_setter/HandlerTests.scala x: 41 # changes y: 5000 line churn modules/product-catalog/src/typeObject.ts x: 39 # changes y: 9327 line churn modules/product-catalog/src/generatedSchema.ts x: 1 # changes y: 3050 line churn handlers/fulfilment-date-calculator/src/test/scala/com/gu/supporter/fulfilment/HomeDeliveryFulfilmentDatesSpec.scala x: 24 # changes y: 3188 line churn handlers/holiday-stop-api/src/test/scala/com/gu/holiday_stops/HandlerTest.scala x: 96 # changes y: 6910 line churn handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Salesforce.scala x: 66 # changes y: 1210 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/switchtype/RecurringContributionToSupporterPlus.scala x: 43 # changes y: 8777 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/switchtype/ToRecurringContribution.scala x: 19 # changes y: 3117 line churn handlers/salesforce-disaster-recovery/yarn.lock x: 6 # changes y: 8715 line churn handlers/sf-billing-account-remover/src/main/scala/com/gu/sf_billing_account_remover/BillingAccountRemover.scala x: 36 # changes y: 3829 line churn cdk/yarn.lock x: 40 # changes y: 57174 line churn modules/catalog/test/fixtures/catalog-code.json x: 7 # changes y: 297764 line churn modules/catalog/test/fixtures/catalog-prod.json x: 7 # changes y: 246680 line churn handlers/discount-api/test/fixtures/catalog-code.json x: 5 # changes y: 140340 line churn handlers/discount-api/test/fixtures/catalog-prod.json x: 4 # changes y: 119684 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/Catalog.scala x: 58 # changes y: 3832 line churn handlers/product-move-api/src/test/resources/Catalogue.json x: 5 # changes y: 82770 line churn cdk/package-lock.json x: 8 # changes y: 97186 line churn cloudformation.yaml x: 38 # changes y: 2833 line churn src/test/scala/com/gu/paymentFailure/PaymentFailureHandlerTest.scala x: 55 # changes y: 3521 line churn src/test/scala/com/gu/stripeCustomerSourceUpdated/SourceUpdatedStepsTest.scala x: 58 # changes y: 7050 line churn handlers/sf-move-subscriptions-api/cdk/package-lock.json x: 3 # changes y: 19968 line churn handlers/digital-voucher-cancellation-processor/cdk/package-lock.json x: 4 # changes y: 27772 line churn lib/zuora-core/src/test/resources/DeliveryEveryDatePlusSubscription.json x: 6 # changes y: 4384 line churn lib/holiday-stops/src/test/resources/DeliveryEveryDatePlusSubscription.json x: 8 # changes y: 6528 line churn lib/holiday-stops/src/test/resources/EchoLegacySubscription.json x: 8 # changes y: 4936 line churn handlers/new-product-api/src/test/resources/TestZuoraCatalog.json x: 2 # changes y: 6292 line churn
699764.0
line churn
  min: 1.0
  average: 1246.42
  25th percentile: 58.0
  median: 163.0
  75th percentile: 440.0
  max: 699764.0
0 419.0
# changes
min: 1.0 | average: 9.5 | 25th percentile: 2.0 | median: 5.0 | 75th percentile: 11.0 | max: 419.0

Number of Contributors vs. Line Churn: 1322 points

cdk/lib/soft-opt-in-consent-setter.ts x: 4 # contributors y: 3315 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 15 # contributors y: 1891 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/IAPMessageProcessor.scala x: 4 # contributors y: 1778 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 1 # contributors y: 128 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 8 # contributors y: 822 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 5 # contributors y: 144 line churn project/Dependencies.scala x: 38 # contributors y: 4362 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 13 # contributors y: 934 line churn handlers/alarms-handler/src/alarmMappings.ts x: 18 # contributors y: 1595 line churn modules/multiple-account/src/secondaryUserRepository.ts x: 2 # contributors y: 312 line churn handlers/product-move-api/cfn.yaml x: 16 # contributors y: 3721 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 13 # contributors y: 3604 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 6 # contributors y: 922 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/ZuoraCancel.scala x: 11 # contributors y: 1061 line churn buildcheck/data/build.ts x: 10 # contributors y: 2203 line churn buildcheck/data/dependencies.ts x: 3 # contributors y: 113 line churn cdk/lib/iam-policies.ts x: 4 # contributors y: 210 line churn handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 5 # contributors y: 700 line churn handlers/mparticle-api/src/index.ts x: 8 # contributors y: 4054 line churn handlers/mparticle-api/src/routers/baton.ts x: 4 # contributors y: 1628 line churn handlers/mparticle-api/src/routers/baton/access/handleStatus.ts x: 4 # contributors y: 490 line churn handlers/mparticle-api/src/routers/http.ts x: 5 # contributors y: 1207 line churn handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/validate-data-subject-request-callback.ts x: 3 # contributors y: 864 line churn modules/arrayFunctions.ts x: 10 # contributors y: 1104 line churn modules/product-catalog/src/productCatalogSchema.ts x: 11 # contributors y: 29912 line churn modules/product-catalog/src/productPurchaseSchema.ts x: 6 # contributors y: 2657 line churn modules/internationalisation/src/country.ts x: 4 # contributors y: 2729 line churn handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 5 # contributors y: 1792 line churn modules/product-catalog/src/productCatalog.ts x: 12 # contributors y: 2285 line churn handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/zuora/SetActivationDate.scala x: 7 # contributors y: 160 line churn modules/product-catalog/src/generateSchema.ts x: 7 # contributors y: 914 line churn handlers/multiple-account-api/openapi.yaml x: 2 # contributors y: 1018 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddDigipackSub.scala x: 15 # contributors y: 946 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddGuardianWeeklySub.scala x: 17 # contributors y: 1778 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSupporterPlus.scala x: 14 # contributors y: 1472 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddTierThree.scala x: 6 # contributors y: 546 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 25 # contributors y: 4643 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/ValidateAccount.scala x: 8 # contributors y: 381 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccount.scala x: 9 # contributors y: 442 line churn modules/zuora/src/orders/asyncOrderRequests.ts x: 1 # contributors y: 595 line churn handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProcessor.scala x: 16 # contributors y: 1561 line churn handlers/discount-api/src/discountEndpoint.ts x: 10 # contributors y: 3066 line churn modules/routing/src/router.ts x: 7 # contributors y: 1515 line churn modules/zuora/src/zuoraClient.ts x: 9 # contributors y: 1210 line churn handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancel.scala x: 12 # contributors y: 586 line churn handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/Handler.scala x: 7 # contributors y: 503 line churn handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayStopCreditProcessor.scala x: 14 # contributors y: 820 line churn cdk/lib/discount-expiry-notifier.ts x: 6 # contributors y: 3623 line churn cdk/lib/negative-invoices-processor.ts x: 7 # contributors y: 5356 line churn modules/zuora/src/createSubscription/createSubscription.ts x: 6 # contributors y: 1599 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/NewProductApi.scala x: 17 # contributors y: 2580 line churn cdk/lib/generate-product-catalog.ts x: 10 # contributors y: 1578 line churn lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ZuoraIds.scala x: 16 # contributors y: 4121 line churn modules/internationalisation/src/contributionsOnlyCountries.ts x: 2 # contributors y: 597 line churn handlers/alarms-handler/src/cloudwatch.ts x: 8 # contributors y: 2183 line churn handlers/alarms-handler/src/index.ts x: 11 # contributors y: 3804 line churn handlers/discount-api/src/eligibilityChecker.ts x: 8 # contributors y: 1468 line churn handlers/generate-product-catalog/src/index.ts x: 6 # contributors y: 387 line churn handlers/write-off-unpaid-invoices/src/handlers/writeOffInvoices.ts x: 7 # contributors y: 2183 line churn handlers/write-off-unpaid-invoices/src/handlers/getUnpaidInvoices.ts x: 7 # contributors y: 112241 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/PricesFromZuoraCatalog.scala x: 11 # contributors y: 676 line churn handlers/sf-move-subscriptions-api/riff-raff.yaml x: 11 # contributors y: 127 line churn handlers/discount-api/src/productToDiscountMapping.ts x: 8 # contributors y: 2356 line churn handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 19 # contributors y: 2320 line churn lib/restHttp/src/main/scala/com/gu/util/resthttp/Types.scala x: 10 # contributors y: 655 line churn handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 15 # contributors y: 6809 line churn handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/WireHolidayStopRequest.scala x: 11 # contributors y: 1674 line churn lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 15 # contributors y: 4333 line churn lib/salesforce/client/src/main/scala/com/gu/salesforce/SalesforceClient.scala x: 13 # contributors y: 618 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/email/digipack/DigipackAddressValidator.scala x: 10 # contributors y: 209 line churn handlers/digital-voucher-api/cfn.yaml x: 14 # contributors y: 984 line churn handlers/zuora-callout-apis/riff-raff.yaml x: 14 # contributors y: 193 line churn cdk/lib/alarms-handler.ts x: 11 # contributors y: 2477 line churn lib/google-bigquery/src/main/scala/com/gu/google/BigQueryConfig.scala x: 9 # contributors y: 55 line churn handlers/salesforce-disaster-recovery/src/handlers/updateZuoraAccounts.ts x: 4 # contributors y: 1101 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/SubscriptionUpdate.scala x: 11 # contributors y: 5120 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/HandlerIAP.scala x: 12 # contributors y: 4424 line churn cdk/lib/discount-api.ts x: 8 # contributors y: 1055 line churn cdk/lib/new-product-api.ts x: 12 # contributors y: 3866 line churn cdk/lib/observer-data-export.ts x: 6 # contributors y: 1992 line churn cdk/lib/write-off-unpaid-invoices.ts x: 6 # contributors y: 4567 line churn handlers/sf-datalake-export/cfn.yaml x: 17 # contributors y: 1515 line churn cdk/lib/salesforce-disaster-recovery.ts x: 7 # contributors y: 6432 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 14 # contributors y: 6940 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/refund/RefundSupporterPlus.scala x: 9 # contributors y: 1413 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/SalesforceConnector.scala x: 12 # contributors y: 1378 line churn lib/effects/src/main/scala/com/gu/effects/Http.scala x: 12 # contributors y: 272 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper/PaperAddressValidator.scala x: 13 # contributors y: 4567 line churn handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/HolidayCreditProduct.scala x: 12 # contributors y: 1949 line churn handlers/zuora-sar/src/main/scala/com/gu/zuora/sar/S3Helper.scala x: 13 # contributors y: 1699 line churn handlers/catalog-service/cfn.yaml x: 16 # contributors y: 2060 line churn handlers/fulfilment-date-calculator/cfn.yaml x: 15 # contributors y: 874 line churn lib/zuora-core/src/main/scala/com/gu/zuora/subscription/RatePlanChargeBillingSchedule.scala x: 9 # contributors y: 1783 line churn handlers/delivery-records-api/cfn.yaml x: 16 # contributors y: 696 line churn handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/DeliveryRecordsApiApp.scala x: 13 # contributors y: 430 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/updateamount/UpdateSupporterPlusAmountEndpoint.scala x: 5 # contributors y: 1380 line churn handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/Handler.scala x: 9 # contributors y: 2402 line churn handlers/zuora-sar/src/main/scala/com/gu/zuora/sar/ZuoraSarService.scala x: 12 # contributors y: 1044 line churn lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequestsDetail.scala x: 13 # contributors y: 1865 line churn handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/SfQueries.scala x: 13 # contributors y: 2418 line churn handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter/Handler.scala x: 4 # contributors y: 2248 line churn
112241.0
line churn
  min: 1.0
  average: 498.85
  25th percentile: 56.0
  median: 140.5
  75th percentile: 409.75
  max: 112241.0
0 38.0
# contributors
min: 1.0 | average: 4.62 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 7.0 | max: 38.0

File Size vs. Line Churn: 1322 points

cdk/lib/soft-opt-in-consent-setter.ts x: 453 lines of code y: 3315 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/Handler.scala x: 189 lines of code y: 1891 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/MultipleAccountApiConnector.scala x: 113 lines of code y: 128 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/ConsentsMapping.scala x: 119 lines of code y: 822 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/models/EnhancedSub.scala x: 36 lines of code y: 144 line churn project/Dependencies.scala x: 119 lines of code y: 4362 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/ConsentsCalculator.scala x: 105 lines of code y: 934 line churn handlers/alarms-handler/src/alarmMappings.ts x: 151 lines of code y: 1595 line churn modules/multiple-account/src/secondaryUserRepository.ts x: 238 lines of code y: 312 line churn modules/zuora/src/objectQuery/expandSchemas/subscriptionItemSchema.ts x: 78 lines of code y: 149 line churn modules/zuora/src/objectQuery/queries/accountObjectQuery.ts x: 54 lines of code y: 68 line churn handlers/product-move-api/cfn.yaml x: 636 lines of code y: 3721 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpoint.scala x: 168 lines of code y: 3604 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/cancel/SubscriptionCancelEndpointSteps.scala x: 163 lines of code y: 922 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/ZuoraCancel.scala x: 137 lines of code y: 1061 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/model/OrderNumber.scala x: 14 lines of code y: 25 line churn buildcheck/data/build.ts x: 994 lines of code y: 2203 line churn cdk/lib/cdk/SrSqsLambda.ts x: 73 lines of code y: 158 line churn modules/subscription-events/src/consumer/eventBridgeSqsHandler.ts x: 31 lines of code y: 59 line churn cdk/lib/iam-policies.ts x: 173 lines of code y: 210 line churn handlers/mparticle-acquisitions-publisher/src/acquisitions.ts x: 312 lines of code y: 395 line churn handlers/mparticle-acquisitions-publisher/src/index.ts x: 105 lines of code y: 145 line churn handlers/mparticle-api/src/apis/dataSubjectRequests/submit.ts x: 96 lines of code y: 700 line churn handlers/mparticle-api/src/index.ts x: 161 lines of code y: 4054 line churn handlers/mparticle-api/src/routers/baton.ts x: 100 lines of code y: 1628 line churn handlers/mparticle-api/src/routers/http.ts x: 29 lines of code y: 1207 line churn handlers/mparticle-api/src/routers/http/dataSubjectRequestCallback/data-subject-request-callback.ts x: 148 lines of code y: 756 line churn handlers/mparticle-api/src/services/mparticleDeletion.ts x: 81 lines of code y: 478 line churn modules/mparticle/src/mparticleHttpClient.ts x: 200 lines of code y: 250 line churn modules/zuora/src/restClient.ts x: 222 lines of code y: 345 line churn modules/arrayFunctions.ts x: 220 lines of code y: 1104 line churn lib/zuora-core/src/main/scala/com/gu/zuora/subscription/SupportedProduct.scala x: 374 lines of code y: 1816 line churn modules/product-catalog/src/productCatalogSchema.ts x: 2519 lines of code y: 29912 line churn modules/product-catalog/src/productPurchaseSchema.ts x: 220 lines of code y: 2657 line churn modules/product-catalog/src/zuoraToProductNameMappings.ts x: 234 lines of code y: 1259 line churn modules/guardian-subscription/src/guardianSubscriptionParser.ts x: 209 lines of code y: 397 line churn modules/guardian-subscription/src/reprocessRatePlans/zuoraRatePlanBuilder.ts x: 138 lines of code y: 254 line churn modules/mapFunctions.ts x: 156 lines of code y: 236 line churn modules/internationalisation/src/country.ts x: 524 lines of code y: 2729 line churn modules/internationalisation/src/countryGroup.ts x: 346 lines of code y: 1452 line churn handlers/update-supporter-plus-amount/src/updateSupporterPlusAmount.ts x: 178 lines of code y: 1792 line churn modules/product-catalog/src/productCatalog.ts x: 214 lines of code y: 2285 line churn cdk/lib/supporter-product-data-lambdas.ts x: 259 lines of code y: 304 line churn handlers/digital-subscription-expiry/src/main/scala/com/gu/digitalSubscriptionExpiry/DigitalSubscriptionExpirySteps.scala x: 70 lines of code y: 1040 line churn modules/product-catalog/src/generateSchema.ts x: 141 lines of code y: 914 line churn handlers/multiple-account-api/openapi.yaml x: 858 lines of code y: 1018 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddContribution.scala x: 172 lines of code y: 983 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddGuardianWeeklySub.scala x: 160 lines of code y: 1778 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/AddSupporterPlus.scala x: 195 lines of code y: 1472 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/Handler.scala x: 191 lines of code y: 4643 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/zuora/GetAccount.scala x: 56 lines of code y: 442 line churn modules/zuora/src/orders/asyncOrderRequests.ts x: 181 lines of code y: 595 line churn modules/zuora/src/orders/orderActions.ts x: 293 lines of code y: 2017 line churn handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/DeliveryCreditProcessor.scala x: 222 lines of code y: 1561 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/framework/ZIOApiGatewayRequestHandler.scala x: 55 lines of code y: 1164 line churn lib/credit-processor/src/main/scala/com/gu/creditprocessor/Processor.scala x: 281 lines of code y: 1695 line churn modules/zuora/src/discount.ts x: 128 lines of code y: 719 line churn modules/zuora/src/orders/orderRequests.ts x: 69 lines of code y: 523 line churn handlers/discount-api/src/discountEndpoint.ts x: 251 lines of code y: 3066 line churn modules/routing/src/router.ts x: 170 lines of code y: 1515 line churn handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancel.scala x: 188 lines of code y: 586 line churn handlers/zuora-callout-apis/src/main/scala/com/gu/autoCancel/AutoCancelSqsHandler.scala x: 147 lines of code y: 200 line churn handlers/delivery-problem-credit-processor/src/main/scala/com/gu/deliveryproblemcreditprocessor/Handler.scala x: 28 lines of code y: 503 line churn handlers/holiday-stop-processor/src/main/scala/com/gu/holidaystopprocessor/Handler.scala x: 92 lines of code y: 1055 line churn cdk/lib/scrub-non-tokenised-payment-methods.ts x: 278 lines of code y: 402 line churn cdk/lib/discount-expiry-notifier.ts x: 352 lines of code y: 3623 line churn cdk/lib/negative-invoices-processor.ts x: 395 lines of code y: 5356 line churn modules/zuora/src/paymentMethod.ts x: 34 lines of code y: 720 line churn handlers/product-switch-api/src/frequencySwitchEndpoint.ts x: 394 lines of code y: 581 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/NewProductApi.scala x: 52 lines of code y: 2580 line churn cdk/lib/generate-product-catalog.ts x: 118 lines of code y: 1578 line churn lib/zuora-models/src/main/scala/com/gu/newproduct/api/productcatalog/ZuoraIds.scala x: 417 lines of code y: 4121 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/productcatalog/WireModel.scala x: 203 lines of code y: 1933 line churn handlers/alarms-handler/src/cloudwatch.ts x: 58 lines of code y: 2183 line churn handlers/alarms-handler/src/index.ts x: 152 lines of code y: 3804 line churn handlers/discount-api/src/eligibilityChecker.ts x: 126 lines of code y: 1468 line churn handlers/discount-expiry-notifier/src/handlers/getOldPaymentAmount.ts x: 234 lines of code y: 1805 line churn handlers/negative-invoices-processor/src/handlers/doCreditBalanceRefund.ts x: 63 lines of code y: 1699 line churn modules/aws/src/appConfig.ts x: 120 lines of code y: 1831 line churn modules/test-users/src/create.ts x: 112 lines of code y: 938 line churn handlers/write-off-unpaid-invoices/src/handlers/getUnpaidInvoices.ts x: 8614 lines of code y: 112241 line churn handlers/discount-api/src/productToDiscountMapping.ts x: 155 lines of code y: 2356 line churn handlers/identity-backfill/cfn.yaml x: 213 lines of code y: 745 line churn handlers/identity-backfill/src/main/scala/com/gu/identityBackfill/Handler.scala x: 194 lines of code y: 2320 line churn handlers/holiday-stop-api/src/main/scala/com/gu/holiday_stops/Handler.scala x: 552 lines of code y: 6809 line churn lib/holiday-stops/src/main/scala/com/gu/salesforce/holiday_stops/SalesforceHolidayStopRequest.scala x: 356 lines of code y: 4333 line churn handlers/digital-voucher-cancellation-processor/cfn.yaml x: 206 lines of code y: 1720 line churn cdk/lib/product-switch-api.ts x: 37 lines of code y: 1374 line churn cdk/lib/alarms-handler.ts x: 170 lines of code y: 2477 line churn handlers/salesforce-disaster-recovery/src/handlers/updateZuoraAccounts.ts x: 46 lines of code y: 1101 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/SQS.scala x: 278 lines of code y: 1975 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/SubscriptionUpdate.scala x: 102 lines of code y: 5120 line churn handlers/soft-opt-in-consent-setter/src/main/scala/com/gu/soft_opt_in_consent_setter/HandlerIAP.scala x: 129 lines of code y: 4424 line churn handlers/delivery-records-api/src/main/scala/com/gu/delivery_records_api/service/getrecords/GetDeliveryRecordsServiceImpl.scala x: 156 lines of code y: 580 line churn cdk/lib/new-product-api.ts x: 244 lines of code y: 3866 line churn cdk/lib/write-off-unpaid-invoices.ts x: 311 lines of code y: 4567 line churn handlers/sf-datalake-export/cfn.yaml x: 592 lines of code y: 1515 line churn cdk/lib/salesforce-disaster-recovery.ts x: 504 lines of code y: 6432 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/ProductMoveEndpoint.scala x: 216 lines of code y: 6940 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/move/switchtype/RecurringContributionToSupporterPlus.scala x: 374 lines of code y: 1341 line churn handlers/new-product-api/src/main/scala/com/gu/newproduct/api/addsubscription/validation/paper/PaperAddressValidator.scala x: 1335 lines of code y: 4567 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/zuora/rest/ZuoraClient.scala x: 107 lines of code y: 1953 line churn handlers/contact-us-api/cfn.yaml x: 327 lines of code y: 2215 line churn handlers/holiday-stop-api/cfn.yaml x: 406 lines of code y: 1579 line churn handlers/product-move-api/src/main/scala/com/gu/productmove/endpoint/available/AvailableProductMovesEndpointTypes.scala x: 211 lines of code y: 1105 line churn handlers/sf-contact-merge/src/main/scala/com/gu/sf_contact_merge/Handler.scala x: 85 lines of code y: 2402 line churn handlers/zuora-rer/src/main/scala/com/gu/zuora/rer/ZuoraRerService.scala x: 223 lines of code y: 866 line churn lib/restHttp/src/main/scala/com/gu/util/resthttp/RestRequestMaker.scala x: 199 lines of code y: 1199 line churn handlers/zuora-retention/cfn.yaml x: 498 lines of code y: 1566 line churn lib/holiday-stops/src/main/scala/com/gu/holiday_stops/Config.scala x: 51 lines of code y: 1340 line churn handlers/sf-datalake-export/src/main/scala/com/gu/sf_datalake_export/salesforce_bulk_api/SfQueries.scala x: 590 lines of code y: 2418 line churn handlers/sf-emails-to-s3-exporter/src/main/scala/com/gu/sf_emails_to_s3_exporter/Handler.scala x: 177 lines of code y: 2248 line churn lib/imovo/imovo-sttp-client/src/main/scala/com/gu/imovo/ImovoClient.scala x: 250 lines of code y: 1764 line churn
112241.0
line churn
  min: 1.0
  average: 498.85
  25th percentile: 56.0
  median: 140.5
  75th percentile: 409.75
  max: 112241.0
0 8614.0
lines of code
min: 1.0 | average: 71.38 | 25th percentile: 17.0 | median: 37.0 | 75th percentile: 75.0 | max: 8614.0