Bun 1.1 enhances Windows 10 support with performance upgrades and improved Node.js compatibility
Bun 1.1, the latest iteration of the Bun toolkit, marks a significant leap forward by introducing support for Windows 10, expanding its reach to a broader developer audience. Released on April 1, this update brings a host of enhancements aimed at boosting performance, reliability, and compatibility with Node.js.
One of the most anticipated features of Bun 1.1 is its support for Windows 10. Previously, Bun’s functionality was limited to macOS and Linux environments, but this new version allows developers on Windows to leverage Bun’s full capabilities. This includes everything from the core runtime to the test runner, package handler, and bundler, now fully operational on Windows systems.
In addition to broadening platform support, Bun 1.1 delivers significant performance improvements. The update introduces a content-addressable cache that optimizes handling of files larger than 50KB, reducing the performance overhead associated with repeatedly transpiling the same files. This feature enhances the speed of command-line tools, such as tsc, which can now operate up to twice as fast as before. Bun’s performance upgrades extend to its new role as a cross-platform shell, akin to Bash, which now includes support for Windows.
The release also focuses on improving Node.js compatibility. Bun 1.1 now supports the node:http2
client APIs, facilitating outgoing HTTP2 requests. Although support for HTTP2 server APIs is still in progress, this enhancement marks a step forward in Bun’s alignment with Node.js functionality. Developers can also utilize the new ipc
option to send inter-process communication (IPC) messages between Bun and Node, streamlining integration between the two environments.
Other noteworthy updates in Bun 1.1 include stability improvements for WebSocket connections, which now pass the Autobahn conformance test suite, making them reliable for production use. The update also introduces support for user-timings APIs like performance.mark()
and performance.measure()
, useful for performance monitoring and optimization. Furthermore, Bun now supports module mocking for both ESM and CommonJS modules, and includes built-in support for SQLite, allowing databases to be imported using standard syntax.
Overall, Bun 1.1 represents a major advancement in the toolkit’s capabilities, enhancing its utility for JavaScript and TypeScript development while expanding its compatibility and performance across different platforms.