מי מאיתנו לא אוהב למחוק תלויות מתיקיית ה-node_modules שלו. פרויקט Node.js שחרר ב-14 באוקטובר 2026 שתי גרסאות במקביל: גרסת LTS במספר 24.22.0 בשם הקוד Krypton, וגרסת Current במספר 26.12.0. שתיהן מביאות איתן מתנות קטנות שמפתחים חיכו להן זמן רב, כולל פונקציות עזר מובנות שהתרגלנו לייבא מחבילות חיצוניות ותיקות. אבל אם האצבע שלכם כבר עומדת מעל פקודת העדכון ומקלדת ה-CI מוכנה לפעולה, כדאי שתעצרו רגע.
לא הייתי ממהר לגעת בשרתים הפעילים השבוע.
תחכו שבוע לפני השדרוג
הסיבה הפשוטה לא לפתוח PR לפרודקשן כרגע מסתתרת בבאנר אזהרה רשמי בראש עמודי ההשקה. לפי ההודעה שפרסם Richard Lau והכין Antoine du Hamel, עדכוני אבטחה מתוכננים להשתחרר ב-21 באוקטובר 2026. המשמעות ברורה: כל מאמץ שתשקיעו עכשיו בפריסת הגרסאות הנוכחיות ידרוש מכם לחזור על הבדיקות, הבילדים והדיפלוי שבוע אחד בלבד לאחר מכן, ברגע שינחתו התיקונים לסגירת הפגיעויות.
עדכוני אבטחה חדשים יהיו זמינים ביום רביעי, 21 באוקטובר 2026.הודעת השחרור של Node.js
בדיקות רגרסיה וסבבי אישורים דורשים זמן יקר, ולכן עדיף להמתין לעדכון המאובטח.
פחות תלויות בקוד שלכם
מה בכל זאת קיבלנו בגרסת Node.js 24.22.0? התוספת המורגשת ביותר היא הכנסת util.throttle ו-util.debounce שכתב James M Snell ישירות למודול כלי השירות של המנוע. מפתחים רבים מחזיקים ספריות צד שלישי כמו Lodash בפרויקט שלהם רק בשביל שתי הפונקציות האלו, וכעת הן מגיעות באופן מובנה. בנוסף, המודול קיבל את util.markPromiseAsHandled לניהול חריגות בהבטחות אסינכרוניות, לצד העברת net.BoundSocket בין תהליכים והגדרת הפונקציה Server.prototype._listen2 כ-deprecated.
לפי הודעת השחרור של 24.22.0, שינויים בולטים נחתו בתחום הקריפטוגרפיה, כשהחשובים שבהם הם crypto.parsePKCS12 לפיענוח קובצי מפתחות וממשק MAC גנרי לחישוב קודי אימות. בנוסף, מודול ה-SQLite המובנה קיבל תמיכה בסגירת משאבים מפורשת באמצעות StatementSync.prototype.close ומימוש Symbol.dispose. מודול perf_hooks התרחב גם הוא עם SlidingWindowHistogram, ניתוח qrde, וממשק CBOR לייצוא היסטוגרמות.
ובו־זמנית בגרסה 26
בענף המקביל, גרסת Node.js 26.12.0 המוגדרת Current פונה למי שמריץ את סביבות הפיתוח החדשות ביותר. לפי השינויים הבולטים בפרסום ההשקה, מודול ה-HTTP קיבל פונקציות מובנות של websocketMask ו-websocketUnmask שנוספו על ידי James M Snell. הפונקציות האלו מייתרות שכבות תקשורת כבדות ומקלות על טיפול ישיר במסגרות בינאריות.
שינוי נוסף בגרסה 26 נוגע לטיפול בסביבות ריצה חסרות: Paolo Insogna הוסיף זריקת שגיאה מפורשת כאשר חסרה תמיכה ב-WebAssembly או בהרשאות הרצה מתאימות. המנוע כולל גם עדכוני תלויות מובנים כמו שדרוג sqlite לגרסה 3.54.0, עדכון acorn לגרסה 8.19.0, עדכון simdjson לגרסה 5.0.3, ותמיכה בטעינה סינכרונית של מודולי ES. מודול הבדיקות הפנימי התרחב עם אופציות חדשות, ומנגנון ההרשאות process.permission קיבל חידודים מול מערכת הקבצים.
| גרסת Node.js | ערוץ הפצה | יכולות מרכזיות חדשות | המלצת פעולה מיידית |
|---|---|---|---|
| 24.22.0 | LTS (Krypton) | util.throttle, util.debounce, crypto.parsePKCS12, ניקוי SQLite | בדיקה מקומית בלבד; המתנה לעדכון 21 באוקטובר |
| 26.12.0 | Current | websocketMask, websocketUnmask, שגיאות WebAssembly מפורשות | התנסות בסביבות פיתוח; דחיית פריסה לפרודקשן |
לבדוק מקומית, לעצור פרודקשן
אם יש לכם סביבת פיתוח מקומית או ענף ניסיוני ב-GitHub, זה הזמן להתקין את הגרסאות ולבדוק את הקוד שלכם מול הממשקים החדשים. תוכלו לבחון כיצד util.throttle ו-util.debounce מתנהגים במקום המימוש הקיים מקוד חיצוני, או לוודא שהטיפול במשאבי SQLite משחרר זיכרון כמצופה בעזרת Symbol.dispose. הצעד הזה יחסוך לכם זמן יקר כשתצטרכו לבצע את המעבר האמיתי.
סביבות הייצור שלכם צריכות להישאר בדיוק כפי שהן כרגע. ברגע שישוחררו טלאי האבטחה ב-21 באוקטובר 2026, תוכלו להריץ עדכון אחד נקי שמכיל את כלי השירות ואת הגנות האבטחה יחד. בינתיים, שרתי הייצור שלכם יכולים להמשיך להשתמש בספריות הישנות עוד כמה ימים.
מקורות
- Node.js 24.22.0 (LTS)https://nodejs.org/en/blog/release/v24.22.0
- Node.js 26.12.0 (Current)https://nodejs.org/en/blog/release/v26.12.0
- Index | Node.js v24.22.0 Documentationhttps://nodejs.org/docs/v24.22.0/api
- Index | Node.js v26.12.0 Documentationhttps://nodejs.org/docs/v26.12.0/api
- GitHubhttps://weba.co.il/tools/github/
- Node.jshttps://weba.co.il/tools/node-js/
הידיעה נכתבה מהמקורות שלמעלה בתאריך הפרסום, וכל טענה בה נבדקה מולם. מצאתם טעות? כתבו.