Added undici override to clear 5 advisories (2 high, 3 mod)#27581
Added undici override to clear 5 advisories (2 high, 3 mod)#27581
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughThe change adds an entry to 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #27581 +/- ##
=======================================
Coverage 73.14% 73.14%
=======================================
Files 1557 1557
Lines 126189 126189
Branches 15309 15309
=======================================
+ Hits 92301 92303 +2
+ Misses 32909 32908 -1
+ Partials 979 978 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Adds "undici@<6.24.0": "^6.24.0" to root pnpm.overrides. The vulnerable
undici@5.29.0 was being pulled in via:
ghost/core > @tryghost/metrics > @tryghost/elasticsearch
> @elastic/transport > undici@5.29.0
After the override, the chain resolves to undici@6.24.1 (caret-pinned
within the 6.x major). Other undici versions in the tree (6.24.1 from
@actions/http-client, 7.x from jsdom) are unaffected.
This is a 5 -> 6 major bump on the undici package. The consumer
(@elastic/transport@8.4.1) is a runtime path: it executes when
@tryghost/metrics ships log/metric data to elasticsearch. Locally,
@elastic/transport loads cleanly under undici 6 and the ghost/core
unit suite passes (6200/6200). Production-path validation (actual
elasticsearch traffic) needs to ride CI / staging.
Removable when @tryghost/metrics or @elastic/transport ships a release
that declares undici >=6.24.0 directly.
pnpm audit: 114 -> 109 (-2 high, -3 mod).
db0d897 to
419590b
Compare
Summary
Adds a single override to root
pnpm.overrides:The vulnerable
undici@5.29.0was being pulled in via:After the override, the chain resolves to
undici@6.24.1(caret-pinned within the 6.x major). Other undici versions in the tree (6.24.1from@actions/http-client,7.xfromjsdom) are unaffected — those consumers were already on safe ranges.On the 5 → 6 major bump
This forces
@elastic/transport@8.4.1to use undici 6 instead of 5.@elastic/transportis a runtime path — it executes when@tryghost/metricsships log/metric data to elasticsearch.@elastic/transportloads cleanly under undici 6 in unit tests (no require-time / load-time errors surfaced).ghost/corerequires Node 22+ so the engine constraint is satisfied.@elastic/transportuses standard request/response APIs that haven't changed across the bump.The residual unknown is actual elasticsearch traffic in production. Local tests don't exercise live ES requests; staging / CI integration coverage is the place to catch this.
The override is removable when
@tryghost/metricsor@elastic/transportships a release that declaresundici >= 6.24.0directly.Audit delta
pnpm audit: 114 → 109 (−2 high,−3 moderate).Test plan
pnpm installcleanundici@5.29.0removed; elastic chain resolves toundici@6.24.1ghost/corefull unit suite — 6200 / 6200 passing