4 điểm bởi GN⁺ 2024-12-14 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

require(esm) được bật theo mặc định

  • Node.js 22.12.0 ('Jod') LTS đã được phát hành và tính năng require(esm) được bật theo mặc định
    • Không còn cần cờ --experimental-require-module nữa
    • Giờ đây có thể dùng require() để tải các mô-đun ES gốc
  • Bối cảnh của tính năng:
    • Nhằm thúc đẩy việc áp dụng mô-đun ES (ESM) trong khi vẫn duy trì khả năng tương thích cho người dùng CommonJS (CJS)
    • Giúp đưa hỗ trợ ESM gốc vào mã plugin, đồng thời hỗ trợ quá trình chuyển đổi của framework và công cụ
  • Lưu ý cho nhà phát triển:
    • Khi tải bằng require(), lỗi ERR_REQUIRE_ESM sẽ không còn xuất hiện nữa
    • Tuy nhiên, nếu mô-đun chứa top-level await thì có thể phát sinh lỗi ERR_REQUIRE_ASYNC_MODULE
    • Thông báo cảnh báo sẽ được hiển thị khi mô-đun không được tải từ đường dẫn node_modules

Tăng tốc độ phát hành thông qua quy trình tự động hóa

  • Từ năm 2023, dự án đã thúc đẩy tự động hóa quy trình phát hành, và trong vài tháng gần đây đã tự động hóa các tác vụ liên quan đến phát hành bảo mật để nâng cao hiệu quả
  • Tính năng mới:
    • Bổ sung các cờ --releaseDate--yes để đơn giản hóa workflow phát hành
    • Bổ sung tính năng tự động đưa metadata CVE-ID vào changelog của các bản phát hành bảo mật
  • Thay đổi trong chính sách phát hành:
    • Từ Node.js 24, mọi bản phát hành lớn sẽ bắt buộc có thời gian "baking period" 1 tháng để tăng độ ổn định

Tăng cường bảo mật

  • Số lượng báo cáo bảo mật giảm:
    • Trong tháng 10~11 năm 2024, tổng số vấn đề bảo mật được báo cáo là 10, mức thấp nhất từ trước đến nay
    • Nội dung báo cáo: spam (1), không áp dụng (4), tham khảo (2), vấn đề mới (2), đã phân loại xong (1)
  • Hiệu quả cải thiện:
    • Chính sách bảo mật mới góp phần tăng cường bảo vệ hệ thống
    • Workflow tự động hóa đã đơn giản hóa việc đề xuất phát hành, cập nhật banner website và quản lý bài đăng blog
  • Phát triển bổ sung:
    • Tốc độ phát hành bảo mật được cải thiện nhờ tự động thêm metadata CVE-ID vào changelog

Điểm chính

  • Việc bật require(esm) theo mặc định là một bước quan trọng giúp thu hẹp khoảng cách giữa CommonJS và mô-đun ES, từ đó giúp các nhà phát triển dễ dàng hơn trong việc phát triển JavaScript hiện đại và có tính tương tác cao
  • Node.js tiếp tục phát triển về hiệu năng, bảo mật và tính linh hoạt của hệ sinh thái, qua đó góp phần củng cố tầm ảnh hưởng toàn cầu của ngôn ngữ và nền tảng JavaScript

Chưa có bình luận nào.

Chưa có bình luận nào.