Skip to content

chore(deps): patch high-severity advisories in postcss, sharp and fast-uri - #33

Merged
nioasoft merged 1 commit into
mainfrom
chore/fix-dependency-advisories
Aug 2, 2026
Merged

chore(deps): patch high-severity advisories in postcss, sharp and fast-uri#33
nioasoft merged 1 commit into
mainfrom
chore/fix-dependency-advisories

Conversation

@nioasoft

@nioasoft nioasoft commented Aug 2, 2026

Copy link
Copy Markdown
Owner

למה

ה-gate של npm audit --omit=dev --audit-level=high ב-CI נפל על 5 התראות high וחסם PR-ים שלא קשורים (למשל #32).

מה באמת קרה

כל החמש היו טרנזיטיביות תחת next. הרשומה של next עצמו הראתה טווח >=9.3.4-canary.0 בלי גבול עליון, והתיקון היחיד ש-npm הציע היה downgrade ל-next@9.3.3 — כלומר ירידה מ-16 ל-9. זה נראה כמו מבוי סתום.

אבל next סומן רק דרך Depends on vulnerable versions of postcss / sharp, לא בזכות עצמו. ברגע ששתי הטרנזיטיביות מתוקנות — next מתנקה גם הוא.

שינויים

חבילה מ־ ל־ Advisory
postcss (override) 8.5.16 8.5.25 GHSA-r28c-9q8g-f849 — path traversal דרך sourceMappingURL. חל על <=8.5.17, כלומר ה-pin הקיים היה בתוך הטווח הפגיע
sharp (override חדש) 0.34.5 ^0.35.3 GHSA-f88m-g3jw-g9cj — CVE-2026-33327/33328/35590/35591 שעוברות בירושה מ-libvips. חל על <0.35.0, ו-next מושך 0.34.5
fast-uri (lockfile) 3.0.0 3.1.5 GHSA-v2hh-gcrm-f6hx + GHSA-4c8g-83qw-93j6 — host confusion

npm audit --omit=dev0 vulnerabilities.

לכן ה-gate ב-CI נשאר --audit-level=high ולא הורד ל-critical, למרות שההערה ב-ci.yml:53-54 מתירה את זה. עדיף לא לוותר על הכיסוי כשלא צריך.

Test plan

  • npm audit --omit=dev --audit-level=high → 0
  • npx tsc --noEmit → 0
  • npm run lint → נקי
  • npm test → 72 קבצים, 0 נכשלו
  • npm run build → exit 0

sharp הוא native module שמשמש את אופטימיזציית התמונות של Next, ו-postcss הוא צינור ה-CSS — לכן ה-build הוא הבדיקה המשמעותית כאן, ולא הבדיקות. שניהם עברו.

אין שינוי קוד אפליקטיבי, אין מיגרציה.

…t-uri

`npm audit --omit=dev --audit-level=high` (the CI gate) was failing on 5
high advisories, blocking unrelated PRs.

Root cause: all of them were transitive under `next`. The `next` entry
itself reported range `>=9.3.4-canary.0` with the only "fix" being a
downgrade to next@9.3.3 — it was flagged solely via "Depends on
vulnerable versions of postcss / sharp", not on its own account. Patching
the two transitives clears next as well.

- postcss override 8.5.16 -> 8.5.25 (GHSA-r28c-9q8g-f849, path traversal
  via sourceMappingURL; affects <=8.5.17, so the existing pin was inside
  the vulnerable range)
- sharp: new override ^0.35.3 (GHSA-f88m-g3jw-g9cj, inherited libvips
  CVE-2026-33327/33328/35590/35591; affects <0.35.0 and next pulls 0.34.5)
- fast-uri 3.0.0 -> 3.1.5 via lockfile (GHSA-v2hh-gcrm-f6hx,
  GHSA-4c8g-83qw-93j6, host confusion)

`npm audit --omit=dev` now reports 0 vulnerabilities, so the CI gate stays
at --audit-level=high rather than being relaxed to critical.

Verified: tsc 0, lint clean, 72 test files 0 failed, production build OK
(sharp is native and drives image optimization, so the build is the check
that matters here).
@vercel

vercel Bot commented Aug 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
clock-bill Ready Ready Preview Aug 2, 2026 8:05am

Request Review

@nioasoft
nioasoft merged commit 5bf9381 into main Aug 2, 2026
3 checks passed
@nioasoft
nioasoft deleted the chore/fix-dependency-advisories branch August 2, 2026 08:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant