9 điểm bởi GN⁺ 2025-10-19 | 5 bình luận | Chia sẻ qua WhatsApp
  • Bun 1.3 là một bản phát hành quy mô lớn, phát triển thành runtime JavaScript full-stack hỗ trợ cả phát triển frontend lẫn backend
  • Các tính năng chính đã được tích hợp như máy chủ phát triển frontend tích hợp sẵn bao gồm React và CSS bundling, cùng client MySQL·PostgreSQL·SQLite·Redis
  • Hỗ trợ biên dịch thành tệp thực thi đơn qua bun build cùng ký mã và cross-compilation, giúp cải thiện đáng kể sự thuận tiện khi triển khai
  • Trình quản lý gói bổ sung các tính năng thân thiện với monorepo lớn như isolated installs, Security Scanner API, và dependency catalog
  • Những cải tiến lớn đã được thực hiện ở gần như mọi lĩnh vực như test runner, Web API, bảo mật, khả năng tương thích Node.js và hiệu năng, giúp Bun vươn lên thành một “nền tảng runtime hoàn chỉnh”

Tích hợp runtime full-stack

  • Bun 1.3 tích hợp các khả năng phát triển full-stack như chạy HTML, định tuyến, hot reload, WebSocket vào Bun.serve()
    • Hỗ trợ React Fast Refresh và HMR gốc
    • Hợp nhất máy chủ backend và frontend vào một tiến trình duy nhất để giải quyết tận gốc vấn đề CORS
  • Có thể dùng bun build --compile để bundle frontend và backend thành một tệp thực thi duy nhất

Hỗ trợ cơ sở dữ liệu và Redis

  • Bun.SQL hỗ trợ hợp nhất MySQL·MariaDB·PostgreSQL·SQLite thông qua một API duy nhất
    • Dễ dàng xử lý kiểu mảng của PostgreSQL thông qua helper sql.array
    • Các cải tiến chi tiết như kết nối Unix domain socket, simple query protocol, xử lý null
  • Bổ sung client Redis tích hợp sẵn, cho hiệu năng cao hơn tối đa 7.9 lần so với ioredis, hỗ trợ đầy đủ Pub/Sub

Bundler và tính năng build

  • API Bun.build() cho phép tạo tệp thực thi ngay trong mã nguồn
  • Hỗ trợ ký mã (macOS·Windows), cross-compilation (Linux/macOS/Windows), và thiết lập metadata
  • Minifier thông minh hơn giúp loại bỏ mã không dùng, cùng các tùy chọn cấu hình JSX và hỗ trợ pattern Glob

Mở rộng tính năng quản lý gói

  • Isolated installs được áp dụng mặc định, mỗi workspace chỉ có thể truy cập các dependency của riêng mình
  • Tính năng Catalog cho phép quản lý tập trung phiên bản dependency trong monorepo
  • Bổ sung Security Scanner APIminimumReleaseAge để tăng cường phòng vệ trước các cuộc tấn công chuỗi cung ứng
  • Hoàn thiện các công cụ quản lý ở mức npm·pnpm như bun why, bun update --interactive, bun info, bun audit

Cải thiện kiểm thử và gỡ lỗi

  • bun test bổ sung tích hợp VS Code Test Explorer, kiểm thử song song (test.concurrent), thực thi ngẫu nhiên, và type test (expectTypeOf)
  • Hỗ trợ chuỗi .failing, .serial, .eachtự động giữ nguyên thụt lề của snapshot
  • Chặn test.only trong môi trường CItăng cường tính nhất quán của thứ tự kiểm thử

Củng cố Web API và tiêu chuẩn runtime

  • Tích hợp sẵn phân tích/tuần tự hóa YAML, có thể import trực tiếp tệp .yaml
  • API request.cookies hỗ trợ quản lý cookie tự động
  • Hỗ trợ helper stream như ReadableStream .text()/.json(), nén Zstandard, và tải luồng WebAssembly
  • Triển khai DisposableStack/AsyncDisposableStack để đơn giản hóa việc giải phóng tài nguyên

Bảo mật và tính năng hệ thống

  • Bun.secrets cho phép tận dụng kho lưu trữ bảo mật của hệ điều hành (như Keychain)
  • Bun.CSRF cung cấp API tạo và xác minh token CSRF
  • Mô-đun crypto cải thiện hiệu năng gấp 400 lần, tăng cường Diffie-Hellman, HKDF, và phép toán Prime

Nâng cao khả năng tương thích Node.js

  • Vượt qua thêm hơn 800 bài kiểm thử Node.js, mở rộng mạnh cho node:test, node:vm, worker_threads, fs, http2
  • Hỗ trợ đầy đủ hầu hết các mô-đun lõi như require.extensions, process.binding(), điều khiển native addon, perf_hooks, tls, cluster
  • Tỷ lệ tương thích N-API trên 98%, nhận diện runtime ở mức tương đương Node.js 24.3.0

Cải thiện trải nghiệm lập trình viên

  • Thay đổi cấu hình TypeScript mặc định("module": "Preserve")
  • Tăng cường khả năng điều khiển runtime với biến môi trường BUN_OPTIONS, --console-depth, --user-agent
  • Hỗ trợ preload script (BUN_INSPECT_PRELOAD) và SQL Preconnect
  • Cải thiện bunx để vẫn có thể thực thi khi tên gói và tên binary không khớp

Hiệu năng và độ ổn định

  • Giảm mức sử dụng CPU khi nhàn rỗi, tối ưu GC, giảm 10~30% bộ nhớ, tăng 60% tốc độ build
  • postMessage nhanh hơn tối đa 500 lần, bun install 2.5 lần, Array.includes 2.8 lần
  • Tối ưu hóa ở cấp độ WebKit·Zig giúp tăng tốc tổng thể runtime
  • Hàng trăm bản sửa lỗikhắc phục rò rỉ bộ nhớ giúp cải thiện đáng kể độ ổn định

Các thay đổi chính

  • Cấu trúc kiểu của Bun.serve() thay đổi và tên gọi staticroutes
  • Cách gọi SQL client thay đổi từ hàm thông thường → tagged template
  • Tín hiệu GC trên Linux được thay bằng SIGPWR
  • Hiển thị phiên bản Node.js được đổi từ 22.x → 24.3.0

Bun 1.3 là một bước ngoặt, vượt xa một runtime đơn thuần để định vị себя như “nền tảng tích hợp bao trùm Node·Deno·Vite·pnpm”

5 bình luận

 
tsboard 2025-10-20

Dù chỉ dùng thử một lúc từ khá sớm, nhưng tôi cảm thấy đây là một bước tiến vượt bậc, đến mức lại nghĩ hay là thử dùng thêm lần nữa nhỉ haha

 
kissdesty 2025-10-20

Mong là cái này sẽ phát triển tốt.

 
truestar 2025-10-20

Hóa ra đã có kế hoạch như vậy rồi!!

 
click 2025-10-20

Tôi thích việc giao diện sql đã được thống nhất.

 
shakespeares 2025-10-19

Chắc hẳn phải có lý do Vite không gộp vào, nên mình cũng tò mò không biết trải nghiệm sử dụng Bun trong thực tế thế nào.