Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
413 commits
Select commit Hold shift + click to select a range
051bed3
Ensure right header is rendered in live layout
marjisound Jun 16, 2026
6610852
Merge pull request #16165 from guardian/update-mini-match-cta
williammead Jun 16, 2026
d483dc1
Merge branch 'main' into update-jsdom
williammead Jun 16, 2026
e17b250
fixing lockfile
williammead Jun 16, 2026
71b31e4
Update frontend cricket match data type to make it in sync with frontend
marjisound Jun 12, 2026
670c9c1
Update "Golden Boot" casing on the World Cup subnav
arelra Jun 16, 2026
6ad52b8
Merge pull request #16150 from guardian/update-frontend-cricket-data-…
marjisound Jun 16, 2026
cc51e6a
Merge pull request #16175 from guardian/arelra-patch-1
arelra Jun 16, 2026
69d5b46
extends intentIQ test expiry by a month
dskamiotis Jun 16, 2026
6dc91a9
Update newsletter signup privacy message (#16149)
georgerichmond Jun 16, 2026
9c76205
Merge pull request #16176 from guardian/ds/extend-intentIQ-test-expiry
dskamiotis Jun 16, 2026
d5275e8
Merge pull request #16078 from guardian/doml/sh-refactor-to-hook
domlander Jun 16, 2026
73dccb4
Merge pull request #15558 from guardian/link-follow-to-notifications
aracho1 Jun 16, 2026
e51172b
Refactor the live layout Header component to remove redundant props
marjisound Jun 17, 2026
877678c
Unmute click-to-play self hosted videos (#16179)
abeddow91 Jun 17, 2026
a963103
In article privacy notice bring privacy notice into blue box for sign…
georgerichmond Jun 17, 2026
ceef807
Extend click through test by a month (#16181)
abeddow91 Jun 17, 2026
bace345
Not render cricket redesign for apps
marjisound Jun 17, 2026
19ed6df
Bump esbuild from 0.27.0 to 0.28.1 (#16152)
dependabot[bot] Jun 17, 2026
5a46cb1
update view more comments icon and Show more replies icon
williammead Jun 17, 2026
2008df8
Replace 'Free newsletter' with 'Newsletter' in highlight cards (#16186)
georgerichmond Jun 17, 2026
3efd5b8
Fix emotion template literal minification (#16184)
Jakeii Jun 17, 2026
fcc3df3
Merge pull request #16161 from guardian/wire-up-cricket-header-in-liv…
marjisound Jun 17, 2026
861f639
Revert "Fix emotion template literal minification" (#16192)
Jakeii Jun 17, 2026
2e05118
Remove container check in Card (#15981)
abeddow91 Jun 17, 2026
fed45f1
add test config for mobile-sticky slot in liveblogs us
dskamiotis Jun 15, 2026
9da2ab4
updating show more and show less icons on pinned liveblog posts
williammead Jun 17, 2026
0b4a863
rename test group name to variant
dskamiotis Jun 15, 2026
d0f2753
Merge pull request #16164 from guardian/ds/add-test-config-for-mobile…
dskamiotis Jun 17, 2026
1aa67e8
Revert "ci: Use `guardian/actions-build-facts` to correctly reference…
arelra Jun 17, 2026
f0bf068
Merge pull request #16194 from guardian/revert-16158-aa/build-facts
arelra Jun 17, 2026
538e3c1
Sets fullscreen using Bridget if player is found to be compatible
SHession Jun 16, 2026
b100d1d
Add styling for bridget fullscreen
SHession Jun 16, 2026
7fa7cb4
Applies additional styling for bridget fullscreen mode
SHession Jun 17, 2026
d9d40e5
Split globally applied overflow for video fullscreen out from other f…
SHession Jun 17, 2026
ccb88a6
Adds comment to explain why we call setFullscreen to determine if Bri…
SHession Jun 17, 2026
0d7cad3
Prompts Opus to encapsulate fullscreen functionality into a hook
SHession Jun 17, 2026
0f8d60a
Sets isBridgetFullscreen to be dervied from isFullscreen && shouldUse…
SHession Jun 17, 2026
7ad48f5
Prevents video from pausing as out-of-view when in fullscreen mode
SHession Jun 17, 2026
6a1b8a4
Merge pull request #16171 from guardian/sh/sh-use-bridget-for-android…
SHession Jun 18, 2026
18614f6
Client side rendered scorecard tab for cricket (#16155)
Jakeii Jun 18, 2026
147eeb7
Use `useVideoAttentionTracking` for tracking YouTube player component…
SHession Jun 16, 2026
7154ddc
Adds debounce to YouTube atom player to help with Safari attention tr…
SHession Jun 16, 2026
6f36e54
Hoist useIsInView up into YouTubeAtom component allowing for use acro…
SHession Jun 17, 2026
ee01901
Merge pull request #16178 from guardian/sh/add-component-attention-tr…
SHession Jun 18, 2026
325f352
Hosted Gallery page updates (#16193)
cemms1 Jun 18, 2026
4dea5c6
Upgraded typescript to version 6.0.3
apeacewilliams Jun 17, 2026
4847a93
lockfile update
apeacewilliams Jun 17, 2026
4787b19
added node as a type in tsconfig files
apeacewilliams Jun 18, 2026
c252068
Merge pull request #16195 from guardian/pwo/typescript-upgrade
apeacewilliams Jun 18, 2026
6d48121
Merge branch 'main' into update-icon-for-view-more-comments
williammead Jun 18, 2026
805e100
Merge branch 'main' into add-world-cup-subnav-to-socceroos
williammead Jun 18, 2026
c56627a
Merge pull request #16166 from guardian/add-world-cup-subnav-to-socce…
williammead Jun 18, 2026
3fae204
Merge branch 'main' into update-icon-for-view-more-comments
williammead Jun 18, 2026
77ef83d
Merge pull request #16189 from guardian/update-icon-for-view-more-com…
williammead Jun 18, 2026
65f695b
Set signup card ab test variant illustrated card to 100% (#16212)
georgerichmond Jun 18, 2026
aa11f29
Merge branch 'main' into update-jsdom
williammead Jun 19, 2026
bbc3fbb
fixing lock file
williammead Jun 19, 2026
dba4c2d
pass webpublication date to article meta in standardlayout (#16219)
andrewHEguardian Jun 19, 2026
428e187
Merge branch 'main' into update-jsdom
williammead Jun 19, 2026
5d59f95
Merge pull request #16092 from guardian/update-jsdom
williammead Jun 19, 2026
91ccc58
Remove newsletter highlights signup card AB test and related props fr…
georgerichmond Jun 19, 2026
8a090f3
Remove newsletter signup card AB test (#16229)
georgerichmond Jun 22, 2026
57f9dba
AB test: click to play longform video (#16201)
abeddow91 Jun 22, 2026
7ee19c9
Rename feast-recipe-nudge A/B test to v2 and add control group (#16228)
andresilva-guardian Jun 22, 2026
123c7b9
Include CTA button in hosted gallery layout (#16198)
cemms1 Jun 22, 2026
26d82fb
Wire scorecard into live layout (#16216)
Jakeii Jun 22, 2026
604ce28
Add stage to CricketMatch data used in live layout Scoreboard
marjisound Jun 22, 2026
d6c2120
Merge pull request #16230 from guardian/add-stage-to-scoreboard-data-…
marjisound Jun 23, 2026
da5c1fb
Make cricket scorecard update interaction test more reliable (#16243)
Jakeii Jun 23, 2026
e60f5cf
Bump vite from 6.4.2 to 6.4.3 (#16187)
dependabot[bot] Jun 23, 2026
e386549
strip main media from hosted gallery page data before rendering (#16247)
cemms1 Jun 23, 2026
6e7c8e0
Move ShowcaseLayout to grid
frederickobrien Jun 10, 2026
fa08a30
Merge pull request #16119 from guardian/move-showcase-arrangement-to-…
frederickobrien Jun 23, 2026
baa2f3b
Fix emotion template literal minification (#16197)
Jakeii Jun 23, 2026
101c4ff
Add picture index in Hosted Gallery
deedeeh Jun 18, 2026
ad4c57b
Add a comment for the position substraction for clarity
deedeeh Jun 22, 2026
6b70f73
Refactor to have more robust solution
deedeeh Jun 22, 2026
0197c9f
Re-add the use of position after the changes made to omit MainMedia
deedeeh Jun 23, 2026
3b30a61
Update dotcom-rendering/src/components/GalleryCaption.tsx
deedeeh Jun 23, 2026
6709102
Merge pull request #16207 from guardian/dina/add-picture-index-hosted…
deedeeh Jun 23, 2026
eb086c2
Update dependency ws
marjisound Jun 23, 2026
8b27d94
Merge pull request #16248 from guardian/update-ws
marjisound Jun 23, 2026
bc97461
Update caption and credit fonts and credit color
deedeeh Jun 23, 2026
5376ae4
Merge pull request #16249 from guardian/dina/update-caption-and-credi…
deedeeh Jun 23, 2026
5c32b71
added cricket header
williammead Jun 23, 2026
da7f8bc
added fallback headers
williammead Jun 24, 2026
4dbfc1f
Remove newsletter signup ab branching and clean up component id track…
georgerichmond Jun 24, 2026
c21d9f9
merged with main
williammead Jun 24, 2026
6226efb
Upgraded react-crossword to 19.0.1
apeacewilliams Jun 24, 2026
0b5ac7a
Merge pull request #16253 from guardian/pwo/react-crossword-upgrade
apeacewilliams Jun 24, 2026
f6ef182
Notifications copy changes
JamieB-gu Jun 17, 2026
1c03f30
Fix tests
JamieB-gu Jun 18, 2026
054c322
Make centre rule grid line longer
frederickobrien Jun 24, 2026
9587406
Merge pull request #16255 from guardian/make-centre-rule-longer
frederickobrien Jun 24, 2026
70b915c
Add click event and split form tracking for HighlightsNewsletterCard …
georgerichmond Jun 24, 2026
f73f19c
update caption font styles for hosted gallery (#16259)
cemms1 Jun 24, 2026
1d27b61
added fallback headers
williammead Jun 24, 2026
f33e958
Merge branch 'main' into live-activities-notifications-buttons-copy-c…
SiAdcock Jun 24, 2026
f55d96b
Shared match header fallback for football and cricket (#16240)
Jakeii Jun 25, 2026
27f08bd
Merge branch 'main' into wire-up-cricket-match-report
williammead Jun 25, 2026
0aa77fd
added fallback header import
williammead Jun 25, 2026
1949cc8
Merge branch 'main' into live-activities-notifications-buttons-copy-c…
alexduf Jun 25, 2026
ce5013a
feat: Add `Containerfile` for application
akash1810 Jun 22, 2026
999af22
ci: Add GitHub Workflow to build production container
akash1810 Jun 22, 2026
1442de5
refactor: Rename file to gain syntax highlighting on github.com
akash1810 Jun 22, 2026
1e30504
feat: Switch to hardened Docker image
akash1810 Jun 23, 2026
5e6f656
ci: Run `container-production` from `cicd` for contiguous build numbers
akash1810 Jun 23, 2026
4493e5b
fix: Disable Log4js in production container
akash1810 Jun 23, 2026
03b3db7
fix: Add `.git` and `.github` to ignored docker files
akash1810 Jun 23, 2026
d650df3
fix(docker): Set `NODE_ENV` for the application
akash1810 Jun 23, 2026
6d2dd29
Merge pull request #16234 from guardian/aa/production-container
akash1810 Jun 25, 2026
4ae80c8
Merge branch 'main' into live-activities-notifications-buttons-copy-c…
SiAdcock Jun 25, 2026
1698c6e
Merge pull request #16190 from guardian/live-activities-notifications…
SiAdcock Jun 25, 2026
23c195c
Start using GuLoadBalancedAppExperimental
jorgeazevedo Jun 22, 2026
ff542ed
Inline props to reduce diff
jorgeazevedo Jun 23, 2026
bdcd90d
Merge pull request #16237 from guardian/migrate-to-load-balanced-app-…
jorgeazevedo Jun 25, 2026
bc3d151
Pass article to cricket header so fallback works (#16267)
Jakeii Jun 25, 2026
72f50f1
rough idea of the cricket mini match stats component
williammead Jun 25, 2026
b8e5473
adding article and format props
williammead Jun 25, 2026
b5e16d2
updating branch
williammead Jun 25, 2026
4817254
Merge pull request #16252 from guardian/wire-up-cricket-match-report
williammead Jun 25, 2026
d93b649
Upgraded braze-components to 23.0.2
apeacewilliams Jun 24, 2026
b1f9d66
Merge pull request #16262 from guardian/pwo/braze-components-23.0.2-u…
apeacewilliams Jun 25, 2026
55f7f6e
check if page is match report (#16271)
Jakeii Jun 25, 2026
0484b54
moved temporary types into appropriate files
williammead Jun 25, 2026
36f4482
Request optimised poster image width (#16245)
abeddow91 Jun 25, 2026
9082631
Create BackToTop compononent
deedeeh Jun 19, 2026
fd57b8d
Fix backToTop button psoitioning for mobile and desktop
deedeeh Jun 22, 2026
f892390
More styling for different breakpoints except from wide
deedeeh Jun 23, 2026
6cd74c5
Replaced the absolute position for back to top with grid
deedeeh Jun 23, 2026
568f9af
Add comment for BackToTop component
deedeeh Jun 23, 2026
e863352
Refactor to reuse the BackToTop existing component
deedeeh Jun 24, 2026
218ecbb
Update padding for back to top
deedeeh Jun 24, 2026
1fa6cd2
Remove unusable import of until
deedeeh Jun 24, 2026
37ca17f
Merge pull request #16242 from guardian/dina/back-to-top-in-hosted-ga…
deedeeh Jun 26, 2026
e3b7d10
Add padding right and left to take the full width of the viewport for…
deedeeh Jun 26, 2026
b00c4b9
removed unused props
williammead Jun 26, 2026
98ce34b
Replace fixed background-color with schemed one for dark and light modes
deedeeh Jun 26, 2026
43cfb26
Merge branch 'main' into cricket-mini-match-stats
williammead Jun 26, 2026
8f786cf
add isCricketMatchReport to StandardLayout
williammead Jun 26, 2026
b3ec797
replaced demo data with actual data
williammead Jun 26, 2026
7442c04
handled undefined batters
williammead Jun 26, 2026
9923be2
Add data-print-layout property to MobileStickyContainer for all layouts
deedeeh Jun 26, 2026
00133a2
create different stat components for different stats
williammead Jun 26, 2026
4963144
remove unnecessary code
williammead Jun 26, 2026
8e52a36
Merge pull request #16278 from guardian/dina/full-wdith-padding-mobil…
deedeeh Jun 29, 2026
007af9b
Use duration when selecting default video format (#16269)
abeddow91 Jun 29, 2026
4dba549
Extend hosted gallery test until 1 Setptember
deedeeh Jun 29, 2026
8c94ee0
Merge pull request #16284 from guardian/dina/extend-hosted-gallery-test
deedeeh Jun 29, 2026
9dc64c6
https://github.com/guardian/frontend/pull/28888 removes the legacy se…
DanielCliftonGuardian Jun 29, 2026
c272244
Support navigating to the cricket scorecard via hashbang (#16280)
Jakeii Jun 29, 2026
c91bbe5
AB Test: Apply hover styles to loop videos in click through variant (…
abeddow91 Jun 29, 2026
cc85273
Increment "fronts-and-curation-loop-click-through" test to 5% of user…
abeddow91 Jun 29, 2026
87351dc
Default server-side abTests to at request validation
DanielCliftonGuardian Jun 29, 2026
7c58268
Use media atom images where possible for videos (#16273)
abeddow91 Jun 30, 2026
a93264a
Only restrict height of selfhosted video if the video is vertical. If…
abeddow91 Jun 30, 2026
b384a41
added MiniMatchStatsWrapper to Liveblog
williammead Jun 30, 2026
d9e1831
check for cricket match report before showing header
williammead Jun 30, 2026
ba85b8b
Merge pull request #16299 from guardian/check-if-is-match-report-cricket
williammead Jun 30, 2026
34eec2c
Merge branch 'main' into dc/ab-optional-config
DanielCliftonGuardian Jun 30, 2026
75a9711
Apply suggestion from @arelra
DanielCliftonGuardian Jun 30, 2026
34f817c
Add comment
DanielCliftonGuardian Jun 30, 2026
17a82b0
Bump the cdk group across 1 directory with 3 updates
dependabot[bot] Jun 30, 2026
b72e427
Merge pull request #16301 from guardian/dependabot/npm_and_yarn/cdk-b…
akash1810 Jun 30, 2026
9f15267
Improvements to cricket scorecard & hash handling (#16290)
Jakeii Jun 30, 2026
72a4507
remove intentIQ ab test configs
dskamiotis Jun 30, 2026
8f39c3d
extend us mobile sticky expiry date
dskamiotis Jun 30, 2026
ee00454
Merge pull request #16305 from guardian/ds/extend-mobile-sticky-test
dskamiotis Jun 30, 2026
6f9a746
implemented design of mini stats component
williammead Jun 30, 2026
9c07fea
removed abtest override
williammead Jun 30, 2026
a9d178c
Merge branch 'main' into dc/ab-optional-config
DanielCliftonGuardian Jul 1, 2026
bb8b7fb
Merge pull request #16287 from guardian/dc/ab-optional-config
DanielCliftonGuardian Jul 1, 2026
209207a
set paramKey to force-landing-page for recurring contributions (#16307)
AnastasiiaBalenko Jul 1, 2026
a88912a
Update theming logic for Hosted Content pages (#16231)
cemms1 Jul 1, 2026
fe6aeea
Merge branch 'main' into ds/remove-intent-iq-ab-tests
dskamiotis Jul 1, 2026
b7b7022
Fullwidth hold back AB test (#16298)
oliverabrahams Jul 1, 2026
7aeed68
Merge branch 'main' into ds/remove-intent-iq-ab-tests
dskamiotis Jul 1, 2026
c8e5b7c
Merge pull request #16306 from guardian/ds/remove-intent-iq-ab-tests
dskamiotis Jul 1, 2026
cc78b46
hide stats component if no batters are present
williammead Jul 1, 2026
c39574d
Merge branch 'main' into cricket-mini-match-stats
williammead Jul 1, 2026
8f8e2df
Remove legacy server-side AB test config
DanielCliftonGuardian Jul 1, 2026
cc8cf6b
fix show old scorecard if not viewing new design
williammead Jul 1, 2026
966775e
Adding details to in article signup logging (#16309)
mgosz-guardian Jul 1, 2026
a01b5d3
update exp date (#16312)
oliverabrahams Jul 1, 2026
16de2ed
fire-view-event-on-newsletter-highlights-modal-open (#16286)
georgerichmond Jul 1, 2026
ca10fd2
Add component-id for HighlightsNewsletterCard (#16272)
georgerichmond Jul 2, 2026
dd29415
docs: Document usage of the SOCKS proxy
akash1810 Jun 19, 2026
01abd72
Merge pull request #16217 from guardian/aa/proxy-docs
akash1810 Jul 2, 2026
2b62d2f
Remove initialiseCmp from Promise.all (#16218)
akinsola-guardian Jul 2, 2026
207a3df
small tweaks
williammead Jul 2, 2026
32f1206
adding error text to the email failure logs (#16316)
mgosz-guardian Jul 3, 2026
2574276
refactored mini match stats into separate component
williammead Jul 3, 2026
7d4d182
Merge branch 'main' into remove-legacy-ab-test-config
DanielCliftonGuardian Jul 6, 2026
dbb92f0
display cta button for apps hosted gallery articles (#16260)
cemms1 Jul 6, 2026
5e2795c
Merge branch 'main' into remove-legacy-ab-test-config
DanielCliftonGuardian Jul 6, 2026
d1207f0
Merge pull request #16310 from guardian/remove-legacy-ab-test-config
DanielCliftonGuardian Jul 6, 2026
12a44b7
removed unnecessary comment
williammead Jul 6, 2026
011c5cf
Add Ozone 0% AB test
domlander Jul 6, 2026
236854c
Add onward content to Hosted Gallery pages (#16323)
cemms1 Jul 6, 2026
684e938
Merge branch 'main' into doml/add-ozone-test
domlander Jul 6, 2026
5550a4f
Merge pull request #16330 from guardian/doml/add-ozone-test
domlander Jul 6, 2026
d9e3f24
remove hosted gallery ab test (#16329)
cemms1 Jul 6, 2026
fd8381a
Merge branch 'main' into cricket-mini-match-stats
williammead Jul 6, 2026
21a9353
Merge pull request #16279 from guardian/cricket-mini-match-stats
williammead Jul 6, 2026
c0d0e21
remove gallery specific series link styling
SiAdcock Jul 6, 2026
386d79a
rectify line height discrepency
SiAdcock Jul 6, 2026
8c4f13a
Update dev index with a product block element
rcrphillips Jul 7, 2026
02a0ba8
Merge pull request #16324 from guardian/sa-gallery-section-linlk
SiAdcock Jul 7, 2026
99058b3
Remove `FollowNotificationsButton` (#16311)
JamieB-gu Jul 7, 2026
decc7a7
Merge branch 'main' into rp-add-product-block-element-to-index
rcrphillips Jul 7, 2026
4611742
Merge pull request #16334 from guardian/rp-add-product-block-element-…
rcrphillips Jul 7, 2026
28545ba
Move standard article grid into its own component
frederickobrien Jun 30, 2026
7faa0ff
Remove layout props interface export
frederickobrien Jul 7, 2026
006c956
Merge pull request #16300 from guardian/move-standard-content-grid-to…
frederickobrien Jul 7, 2026
a529578
chore(deps): Update GuCDK from 63.6.2 to 64.0.0
akash1810 Jul 7, 2026
a18b64d
Use CI and NODE_ENV env vars to determine public path
jonathonherbert Jun 24, 2026
55e8341
Improve readability in decidePublicPath
jonathonherbert Jun 24, 2026
bd9f81c
Add CI env var to webpack's DefinePlugin to make it available in clie…
jonathonherbert Jun 24, 2026
759352e
Add USE_LOCAL_ASSETS to makefile dev, makefile dev-prod, and Playwrig…
jonathonherbert Jun 24, 2026
61cb68a
Amend test
jonathonherbert Jun 25, 2026
69a5598
String for env var
jonathonherbert Jun 25, 2026
10c14f8
Remove USE_LOCAL_ASSETS from workflow, and instead use within container
jonathonherbert Jul 6, 2026
b98b811
Merge pull request #16337 from guardian/aa/gucdk-64.0.0
akash1810 Jul 7, 2026
bf40545
Merge branch 'main' into jsh/use-env-to-determine-public-path
jonathonherbert Jul 7, 2026
d55fe31
Merge pull request #16256 from guardian/jsh/use-env-to-determine-publ…
jonathonherbert Jul 8, 2026
bc3180b
feat: New logging category for containerised runtime
akash1810 Jul 8, 2026
59c5e90
refactor: Use AWS environment variables to understand if we're runnin…
akash1810 Jul 8, 2026
bfac6ab
Merge pull request #16341 from guardian/aa/container-logs
akash1810 Jul 8, 2026
0ec0751
Revert "Use USE_LOCAL_ASSETS env var to determine path for assets"
jonathonherbert Jul 8, 2026
3a05d13
Merge pull request #16344 from guardian/revert-16256-jsh/use-env-to-d…
jonathonherbert Jul 8, 2026
5006489
Bump piscina to 4.9.3 (#16303)
Jakeii Jul 8, 2026
7d1f5ab
bump form-data (#16304)
Jakeii Jul 8, 2026
a71892e
`undici` v7.28.0 (#16349)
JamieB-gu Jul 8, 2026
5b8ba7d
Revert "Merge pull request #16341 from guardian/aa/container-logs"
akash1810 Jul 9, 2026
815e270
refactor: Encapsulate EC2 Log4JS configuration in a function
akash1810 Jul 9, 2026
b852da5
feat: Configure Log4JS when running in ECS
akash1810 Jul 9, 2026
e6baf15
feat: Add `docker-compose.yml` to run the production image locally
akash1810 Jul 7, 2026
0e8129a
Merge pull request #16355 from guardian/aa/docker-compose
akash1810 Jul 9, 2026
c1b9e60
test(cdk): Add a snapshot test for tag page rendering CODE
akash1810 Jul 3, 2026
5d56731
ci: Pass ECR image digest to CDK
akash1810 Jul 3, 2026
936cb91
feat(cdk): Provision ECS infrastructure for tag page rendering CODE
akash1810 Jul 3, 2026
4278768
fix: Set environment variables required to run the app
akash1810 Jul 8, 2026
44c1c48
Merge pull request #16321 from guardian/aa/tag-rendering-ecs
akash1810 Jul 9, 2026
7d24f8b
Bump guardian/actions-riff-raff in /.github/workflows
dependabot[bot] Jul 9, 2026
3c23a39
Merge pull request #16317 from guardian/dependabot/github_actions/dot…
akash1810 Jul 9, 2026
169c866
overflowWrap: 'anywhere' for CardHeadlines
dblatcher Jun 3, 2026
ec56fac
limit word breaking to carousel cards
dblatcher Jun 3, 2026
32db1bb
use word-wrap: break-word if overflow-wrap: anywhere is not supported
dblatcher Jun 3, 2026
f12b167
Merge branch 'dblatcher-overflowing-word-in-card-fix' of https://gith…
dblatcher Jul 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.git
.github
node_modules
dist
2 changes: 1 addition & 1 deletion .github/workflows/ab-testing-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ jobs:
run: pnpm --filter @guardian/ab-testing-cdk synth

- name: Riff-Raff Upload
uses: guardian/actions-riff-raff@v4.3.3
uses: guardian/actions-riff-raff@v4.3.4
with:
roleArn: ${{ secrets.GU_RIFF_RAFF_ROLE_ARN }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
Expand Down
11 changes: 11 additions & 0 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,21 @@ on:
push:

jobs:
production-container:
permissions:
contents: read
id-token: write # Required to exchange for AWS credentials using OIDC
uses: ./.github/workflows/container-production.yml
secrets:
GU_RIFF_RAFF_ROLE_ARN: ${{ secrets.GU_RIFF_RAFF_ROLE_ARN }}

container:
permissions:
packages: write
needs: [production-container]
uses: ./.github/workflows/container.yml
with:
production-image-digest: ${{ needs.production-container.outputs.imageDigest }}

prettier:
uses: ./.github/workflows/prettier.yml
Expand Down
46 changes: 46 additions & 0 deletions .github/workflows/container-production.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Production container
on:
workflow_call:
secrets:
GU_RIFF_RAFF_ROLE_ARN:
required: true
outputs:
imageDigest:
description: 'The digest of the generated container image'
value: ${{ jobs.build-production-image.outputs.imageDigest }}
jobs:
facts:
runs-on: ubuntu-slim
permissions: {} # This job doesn't need any permissions. Explicitly set it to an empty object to avoid inheriting any default permissions of the workflow.
outputs:
branchName: ${{ steps.get-build-facts.outputs.branchName }}
buildNumber: ${{ steps.get-build-facts.outputs.buildNumber }}
commitSha: ${{ steps.get-build-facts.outputs.commitSha }}
steps:
- uses: guardian/actions-build-facts@v0.0.1
id: get-build-facts

build-production-image:
runs-on: ubuntu-latest
needs:
- facts
permissions:
contents: read
id-token: write # Required to exchange for AWS credentials using OIDC
outputs:
imageDigest: ${{ steps.publish-image.outputs.imageDigest }}
steps:
- uses: actions/checkout@v6.0.2
- name: Add commit hash for PRout
working-directory: dotcom-rendering
run: echo 'export const GIT_COMMIT_HASH = "${{ needs.facts.outputs.commitSha }}";' > src/server/prout.ts
- name: Build image
run: docker buildx build -f Production.dockerfile -t ${{ github.repository }}:latest .
- name: Publish Image
uses: guardian/actions-publish-image@v0.0.2
id: publish-image
with:
roleArn: ${{ secrets.GU_RIFF_RAFF_ROLE_ARN }}
branchName: ${{ needs.facts.outputs.branchName }}
buildNumber: ${{ needs.facts.outputs.buildNumber }}
commitSha: ${{ needs.facts.outputs.commitSha }}
7 changes: 7 additions & 0 deletions .github/workflows/container.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@
# Commercial rely on a container image built from the main branch with the tag 'main'
on:
workflow_call:
inputs:
production-image-digest:
description: 'Digest of image pushed to AWS ECR to run on AWS ECS. Gets used by `cdk synth`.'
required: true
type: string
outputs:
container-image:
description: 'The generated container image path'
Expand Down Expand Up @@ -30,6 +35,8 @@ jobs:
echo 'export const GIT_COMMIT_HASH = "${{ github.sha }}";' > src/server/prout.ts

- name: Generate production bundle
env:
IMAGE_DIGEST: ${{ inputs.production-image-digest }}
run: make riffraff-bundle
working-directory: dotcom-rendering

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dcr-chromatic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
- name: Chromatic - DCR
env:
NODE_OPTIONS: '--max_old_space_size=4096'
uses: chromaui/action@v16.10.0
uses: chromaui/action@v17.4.1
if: |
github.ref == 'refs/heads/main' ||
(github.event_name == 'pull_request' &&
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:

# All rendering apps deployment
- name: Upload rendering apps to RiffRaff
uses: guardian/actions-riff-raff@v4.3.3
uses: guardian/actions-riff-raff@v4.3.4
with:
githubToken: ${{ secrets.GITHUB_TOKEN }}
roleArn: ${{ secrets.GU_RIFF_RAFF_ROLE_ARN }}
Expand Down
31 changes: 31 additions & 0 deletions Production.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
FROM dhi.io/node:24-alpine3.23-dev AS base
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME/bin:$PATH"
RUN corepack enable
COPY . /app
WORKDIR /app

# Install dependencies as a separate step to take advantage of Docker's caching.
# Leverage a cache mount to /pnpm/store to speed up subsequent builds.
FROM base AS dependencies
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
WORKDIR /app/dotcom-rendering
ENV PATH="node_modules/.bin:$PATH"
ENV NODE_ENV=production

# Build the application
FROM dependencies AS builder
RUN webpack --config webpack/webpack.config.js --progress
RUN node scripts/islands/island-descriptions.mjs

# Finally, create the production image with only the necessary files
FROM dhi.io/node:24-alpine3.23 AS application
WORKDIR /app
COPY --from=builder --chown=node:node /app/dotcom-rendering/dist /app

ENV NODE_ENV=production

# Expose the port that the application listens on
EXPOSE 9000

CMD ["node", "/app/server.js"]
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ exports[`The ID5 Baton Lambda stack > matches the CODE snapshot 1`] = `
{
"Metadata": {
"gu:cdk:constructs": [],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Parameters": {
"BuildId": {
Expand Down Expand Up @@ -46,7 +46,7 @@ exports[`The ID5 Baton Lambda stack > matches the PROD snapshot 1`] = `
{
"Metadata": {
"gu:cdk:constructs": [],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Parameters": {
"BuildId": {
Expand Down
12 changes: 6 additions & 6 deletions ab-testing/cdk/lib/__snapshots__/deploymentLambda.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ exports[`The AB testing deployment lambda stack > matches the CODE snapshot 1`]
"GuDistributionBucketParameter",
"GuLambdaFunction"
],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Parameters": {
"SsmParameterValueaccountservicesdotcomstorebucketC96584B6F00A464EAD1953AFF4B05118Parameter": {
Expand Down Expand Up @@ -55,7 +55,7 @@ exports[`The AB testing deployment lambda stack > matches the CODE snapshot 1`]
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -294,7 +294,7 @@ exports[`The AB testing deployment lambda stack > matches the CODE snapshot 1`]
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -327,7 +327,7 @@ exports[`The AB testing deployment lambda stack > matches the PROD snapshot 1`]
"GuDistributionBucketParameter",
"GuLambdaFunction"
],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Parameters": {
"SsmParameterValueaccountservicesdotcomstorebucketC96584B6F00A464EAD1953AFF4B05118Parameter": {
Expand Down Expand Up @@ -377,7 +377,7 @@ exports[`The AB testing deployment lambda stack > matches the PROD snapshot 1`]
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -616,7 +616,7 @@ exports[`The AB testing deployment lambda stack > matches the PROD snapshot 1`]
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down
26 changes: 13 additions & 13 deletions ab-testing/cdk/lib/__snapshots__/notificationLambda.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
"GuScheduledLambda",
"GuLambdaErrorPercentageAlarm"
],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Resources": {
"EmailIdentityAbtestingnotificationlambdaE053C648": {
Expand All @@ -24,7 +24,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -113,7 +113,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
"Tags": [
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -166,7 +166,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -340,7 +340,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -452,7 +452,7 @@ exports[`The AB testing notification lambda stack > matches the CODE snapshot 1`
"Tags": [
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -494,7 +494,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
"GuScheduledLambda",
"GuLambdaErrorPercentageAlarm"
],
"gu:cdk:version": "63.3.1"
"gu:cdk:version": "64.0.0"
},
"Resources": {
"EmailIdentityAbtestingnotificationlambdaE053C648": {
Expand All @@ -508,7 +508,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -597,7 +597,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
"Tags": [
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -660,7 +660,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -834,7 +834,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -869,7 +869,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
},
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down Expand Up @@ -1006,7 +1006,7 @@ exports[`The AB testing notification lambda stack > matches the PROD snapshot 1`
"Tags": [
{
"Key": "gu:cdk:version",
"Value": "63.3.1"
"Value": "64.0.0"
},
{
"Key": "gu:repo",
Expand Down
3 changes: 2 additions & 1 deletion ab-testing/cdk/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@
"allowImportingTsExtensions": true,
"erasableSyntaxOnly": true,
"moduleResolution": "nodenext",
"module": "nodenext"
"module": "nodenext",
"types": ["node"]
},
"exclude": ["node_modules"]
}
Loading
Loading