เปิดใช้ require(esm) เป็นค่าเริ่มต้น

  • เปิดตัว Node.js 22.12.0 ('Jod') เวอร์ชัน LTS โดยเปิดใช้ความสามารถ require(esm) เป็นค่าเริ่มต้น
    • ไม่จำเป็นต้องใช้แฟลก --experimental-require-module อีกต่อไป
    • สามารถใช้ require() เพื่อโหลด native ES modules ได้แล้ว
  • เบื้องหลังของความสามารถนี้:
    • เพื่อเร่งการนำ ES modules (ESM) มาใช้งาน โดยยังคงความเข้ากันได้สำหรับผู้ใช้ CommonJS (CJS)
    • ช่วยให้รองรับ native ESM ในโค้ดปลั๊กอินได้ง่ายขึ้น และสนับสนุนกระบวนการเปลี่ยนผ่านของเฟรมเวิร์กและเครื่องมือต่างๆ
  • ข้อควรรู้สำหรับนักพัฒนา:
    • เมื่อโหลดด้วย require() จะไม่เกิดข้อผิดพลาด ERR_REQUIRE_ESM อีกต่อไป
    • อย่างไรก็ตาม หากโมดูลมี top-level await อาจเกิดข้อผิดพลาด ERR_REQUIRE_ASYNC_MODULE ได้
    • ข้อความเตือนจะแสดงเมื่อโมดูลไม่ได้ถูกโหลดจากพาธ node_modules

เพิ่มความเร็วการรีลีสด้วยกระบวนการอัตโนมัติ

  • ตั้งแต่ปี 2023 ได้ผลักดันการทำให้กระบวนการรีลีสเป็นอัตโนมัติ และในช่วงไม่กี่เดือนที่ผ่านมาได้ทำงานที่เกี่ยวข้องกับ security release ให้เป็นอัตโนมัติเพื่อเพิ่มประสิทธิภาพ
  • ความสามารถใหม่:
    • เพิ่มแฟลก --releaseDate และ --yes เพื่อทำให้ release workflow เรียบง่ายขึ้น
    • เพิ่มความสามารถในการใส่เมทาดาทา CVE-ID ลงใน changelog ของ security release โดยอัตโนมัติ
  • การเปลี่ยนแปลงนโยบายการรีลีส:
    • ตั้งแต่ Node.js 24 เป็นต้นไป ทุก major release จะต้องมี "ช่วงเบกกิง" 1 เดือนเพื่อความเสถียร

เสริมความแข็งแกร่งด้านความปลอดภัย

  • รายงานด้านความปลอดภัยลดลง:
    • ในช่วงเดือนตุลาคมถึงพฤศจิกายน 2024 มีการรายงานปัญหาด้านความปลอดภัยรวม 10 รายการ ซึ่งเป็นสถิติต่ำสุดเป็นประวัติการณ์
    • รายละเอียดรายงาน: สแปม (1), ใช้ไม่ได้จริง (4), เพื่ออ้างอิง (2), ปัญหาใหม่ (2), จัดหมวดหมู่เสร็จสิ้น (1)
  • ผลของการปรับปรุง:
    • นโยบายความปลอดภัยใหม่มีส่วนช่วยเสริมการปกป้องระบบให้แข็งแกร่งขึ้น
    • เวิร์กโฟลว์อัตโนมัติช่วยให้การเสนอรีลีส การอัปเดตแบนเนอร์บนเว็บไซต์ และการจัดการบล็อกโพสต์ง่ายขึ้น
  • การพัฒนาเพิ่มเติม:
    • การเพิ่มเมทาดาทา CVE-ID ลงใน changelog โดยอัตโนมัติช่วยปรับปรุงความเร็วของ security release

ประเด็นสำคัญ

  • การเปิดใช้ require(esm) เป็นค่าเริ่มต้นถือเป็นก้าวสำคัญในการลดช่องว่างระหว่าง CommonJS กับ ES modules และจะช่วยให้นักพัฒนาทำ JavaScript สมัยใหม่ที่ทำงานร่วมกันได้สะดวกยิ่งขึ้น
  • Node.js ยังคงพัฒนาต่อเนื่องทั้งด้านประสิทธิภาพ ความปลอดภัย และความยืดหยุ่นของ ecosystem พร้อมช่วยเสริมอิทธิพลระดับโลกของภาษาและแพลตฟอร์ม JavaScript

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น