Fixes 20 bugs (addressing 60 👍). Add subshell and positional argument support to Bun Shell, fixing an issue with bun install + sharp on Windows. Printed source code in errors no longer fill up your terminal. Upgrades JavaScriptCore, which includes performance improvements to RegExp, typed arrays, String indexOf and String replace. Error objects and JIT'd function calls use less memory. Fixes several bugs with bun install on Windows. Fixes a bug with Bun.serve() on Windows. Fixes a TOML parser bug impacting escape sequences and windows paths in .toml files
Jarred Sumner · April 4, 2024
Bun now supports Windows!
Jarred Sumner & Dave Caruso & Ashcon Partovi & Dylan Conway & Meghan Denny & Georgijs Vilums & Ciro Spaciari · April 1, 2024
Fixes 13 bugs. Adds support for fs.openAsBlob
and fs.opendir
, fixes edgecase in bun install with multiple bin
entries in package.json
, fixes bun build --target bun
encoding, fixes bug with process.stdin & process.stdout, fixes bug in http2, fixes bug with .env in bun run, fixes various Bun shell bugs and improves Node.js compatibility.
Ashcon Partovi · March 29, 2024
Fixes 7 bugs, bunx uses less memory, bun install gets faster on Docker & WSL, a conflicting devDependency hoisting bug is fixed, a cyclical CommonJS & ESM import crash is fixed, cross-mount fs.cp & fs.copyFile get 50% faster on Linux, and reliability improvements for bun install & bun's runtime
Ashcon Partovi · March 22, 2024
Fixes 13 bugs, including 3 I/O regressions from v1.0.31. Improves Node.js compatibility. 'ws' package can now send & receive ping/pong events. util.promisify'd setTimeout setInterval, setImmediate work now. FileHandle methods have been implemented
Jarred Sumner · March 17, 2024
Fixes 2 bugs, including a bug with the mv command in Bun Shell and an error in node:crypto when verifying signatures
Jarred Sumner · March 17, 2024
Fixes 54 bugs (addresses 113 👍 reactions), introduces bun --print
, <stdin> | bun run -
, bun add --trust
, fetch()
with Unix sockets, fixes macOS binary size regression, fixes high CPU usage bug in spawn() on older linux, adds util.styleText
, Node.js compatibiltiy improvements, bun install bugfixes, and bunx bugfixes
Ashcon Partovi · March 14, 2024
Fixes 27 bugs (addressing 103 👍 reactions), fixes an 8x perf regression in Bun.serve(), adds a new --conditions
flag to bun build
and Bun's runtime, adds support for expect.assertions()
and expect.hasAssertions()
in Bun's test runner, fixes crashes and improves Node.js compatibility
Jarred Sumner · March 4, 2024
Fixes 8 bugs. Bun.stringWidth(a) is a ~6,756x faster drop-in replacement for the popular 'string-width' package. bunx checks for updates more frequently. Adds expect().toBeOneOf() in bun:test. Memory leak impacting Prisma is fixed. Shell now supports advanced redirects like '2>&1', '&>'. Reliability improvements to bunx, bun install, WebSocket client, and Bun Shell
Jarred Sumner · February 23, 2024
Fixes 6 bugs (addressing 26 👍 reactions). Fixes bugs impacting Prisma and Astro, 'events', 'readline', and 'http2'. Fixes a bug in Bun Shell involving stdin redirection and fixes bugs in bun:test with test.each and describe.only
Jarred Sumner · February 19, 2024
Fixes 72 bugs (addressing 192 👍 reactions), Bun Shell supports throwing on non-zero exit codes, stream Response bodies using async generators, improves reliability of fetch(), http2 client, Bun.Glob and Bun Shell. Fixes a regression with bun --watch on Linux. Improves Node.js compatibility
Jarred Sumner · February 17, 2024
Fixes 30 bugs (addressing 60 👍 reactions), adds support for multi-statement queries in bun:sqlite, makes bun --watch more reliable in longer-running sessions, Bun.FileSystemRouter now supports more than 64 routes, fixes a bug with expect().toStrictEqual(), fixes 2 bugs with error.stack, improves Node.js compatibility
Jarred Sumner · February 3, 2024
Fixes 4 bugs, adds vm.createScript. Fixes a crash in fs.readFile, a crash in Bun.file().text(), a crash in IPC, and a transpiler bug involving loose equals
Jarred Sumner · January 21, 2024
Fixes 9 bugs and adds Bun Shell, a fast cross-platform shell with seamless JavaScript interop. Fixes a socket timeout bug, a potential crash when socket closes, a Node.js compatibility issue with Hapi, a process.exit bug, and bun install binlinking bug, bun inspect regression, and bun:test expect().toContain bug
Jarred Sumner · January 20, 2024
The Bun Shell is a cross-platform shell that allows you to run shell scripts in JavaScript & TypeScript
Jarred Sumner · January 20, 2024
Fixes 40 bugs (addressing 194 👍 reactions). import & embed sqlite databases in Bun, Resource Management ('using' TC39 stage3) support, bundler improvements when building for Node.js, bugfix for peer dependency resolution, semver bugfix, 4% faster TCP on linux, Node.js compatibility improvements and more
Jarred Sumner · January 16, 2024
Fixes bun install
issues on Vercel, adds performance.mark()
APIs, adds child_process
support for extra pipes, makes Buffer.concat
10% - 400% faster, adds toBeEmptyObject
and toContainKeys
matchers, fixes console.table
width using emojis, and adds support for argv
and execArgv
options in worker_threads
.
Ashcon Partovi · January 9, 2024
Fixes 33 bugs (addressing 80 👍 reactions). console.table() support. Bun.write, Bun.file, and bun:sqlite use less memory. Large file uploads with FormData use less memory. bun:sqlite error messages get more detailed. Memory leak in errors from node:fs fixed. Node.js compatibility improvements, and many crashes fixed
Jarred Sumner · January 2, 2024
Reduced memory usage for fs.readlink, fs.writeFile, fs.stat and HTMLRewriter. Fixes a regression where setTimeout caused high CPU usage on Linux. Bun.spawn shows how much CPU & memory the process used. HTMLRewriter.transform now supports strings and ArrayBuffer. fs.writeFile() and fs.readFile() now support hex & base64 encodings
Jarred Sumner · December 24, 2023
Fixes 26 bugs (addressing 92 👍 reactions). Use @types/bun instead of bun-types. Fixes --frozen-lockfile bug. bcrypt & argon2 packages now work. setTimeout & setInterval get 4x higher throughput. module mocks in bun:test resolve specifiers. Optimized spawnSync() for large stdio on Linux. Bun.peek() gets 90x faster, expect(map1).toEqual(map2) gets 100x faster. Bugfixes to NAPI, bun install, and Node.js compatibility improvements
Jarred Sumner · December 22, 2023
Fixes 27 bugs (addressing 28 👍 reactions). A hang impacting create-vite & create-next & stdin has been fixed. Lifecycle scripts reporting "node" or "node-gyp" not found has been fixed. expect().rejects works like Jest now, and more bug fixes
Jarred Sumner · December 14, 2023
Fixes 15 bugs (addressing 152 👍 reactions). bun install postinstall scripts run for top 500 packages, bunx supabase
starts 30x faster than npx supabase
, bunx esbuild
starts 50x faster than npx esbuild
and bugfixes to bun install
Jarred Sumner · December 12, 2023
Fixes 49 bugs (addressing 38 👍 reactions). Concurrent IO for Bun.file & Bun.write gets 3x faster and now supports Google Cloud Run & Vercel, Bun.write auto-creates the parent directory if it doesn't exist, expect.extend
inside of preload works, napi_create_object
gets 2.5x faster, bugfix for module resolution impacting Astro v4 and p-limit, console.log bugfixes
Jarred Sumner · December 10, 2023
Fixes 23 bugs (addressing 117 👍 reactions), tsc
starts 2x faster, prettier 40% faster. Stable WebSocket
client, syntax-highlighted errors, cleaner stack traces, add custom test matchers with expect.extend()
, TensorFlow.js support, fs.readdir recursive is 40x faster than in Node, and more.
Ashcon Partovi · December 2, 2023
Introduces Bun.Glob
- a fast glob matcher, fixes a race condition when extracting dependencies during bun install
, improves TypeScript module resolution in node_modules
, makes error messages easier to read, and more fixes.
Ashcon Partovi · November 22, 2023
Fixes 6 bugs (addressing 317 👍 reactions). 'http2' module & gRPC.js work now. Vite 5 & Rollup 4 work. Implements process.report.getReport(), improves support for ES5 'with' statements, fixes a regression in bun install, fixes a crash when printing exceptions, fixes a Bun.spawn bug, and fixes a peer dependencies bug
Jarred Sumner · November 18, 2023
Fixes 24 bugs, makes bun's CLI help menus easier to read, adds support for bun -e
, bun --env-file
, server.url
, import.meta.env
, expect.unreachable()
, improves support for module mocks, allows importing builtin modules at bundle-time, and improves Node.js compatibility
Ashcon Partovi · November 16, 2023
Fixes 5 bugs, adds Bun.semver, fixes a bug in bun install and fixes bugs impacting astro and @google-cloud/storage
Jarred Sumner · November 8, 2023
Fixes 14 bugs (addressing 102 👍 reactions), node:http gets 14% faster, stability improvements to Bun for Linux ARM64, bun install bugfix, and node:http bugfixes
Jarred Sumner · November 7, 2023
Fixes a glibc symbol version error, illegal instruction error, a Bun.spawn bug, an edgecase with peer dependency installs, and a JSX transpiler bugfix
Jarred Sumner · November 5, 2023
Fixes 138 bugs (addressing 257 👍 reactions), makes require()
use 30% less memory, adds module mocking to bun test
, and improves reliability of bun install
and Bun.spawn
Ashcon Partovi · November 2, 2023
Fixes 59 bugs (addressing 78 👍 reactions), support for optional peerDependencies
, improvements to Node.js compatibility, and more stability for bun install
.
Jarred Sumner · October 20, 2023
Fixes 3 bugs (addressing 85 👍 reactions), implements support for the 'overrides' & 'resolutions' fields in package.json and a regression impacting Docker usage with Bun
Jarred Sumner · October 11, 2023
Fixes 41 bugs + a memory leak in fetch()
, KeyObject
support in crypto
module, import package-lock.json, install peer dependencies, bun pm migrate subcommand, bun install bugfixes, and toEqualIgnoringWhitespace
matcher in bun:test
Ashcon Partovi · October 11, 2023
Bun v1.0.4 fixes 62 bugs, adds server.requestIP
, supports virtual modules in runtime plugins, fixes many bun install bugs, and reduces memory consumption in Bun.serve()
Jarred Sumner · October 3, 2023
emitDecoratorMetadata, Nest.js support, better private registry support, bunx bugfix, console.log() depth 8 -> 2, silence .env loaded message, and many bugfixes
Colin McDonnell · September 22, 2023
Faster watch mode, bunx @latest bugfix, Bun uses V8's date parser, bugfixes to node:readline, node:dns, bun run, http streaming, transpiler, node:tty and more
Jarred Sumner · September 15, 2023
Named imports for .json & .toml files, bugfixes to bun install, node:path, Buffer. Support for NODE_TLS_REJECT_UNAUTHORIZED=0
Jarred Sumner · September 12, 2023
Bun is stable and ready for production.
Jarred Sumner & Ashcon Partovi & Colin McDonnell · September 8, 2023
Bun.serve() gets unix domain socket support, a performance regression has been fixed, and bugs in bun install, node:http and napi have been fixed
Jarred Sumner · August 26, 2023
Bun gets debugger support, fetch streaming, and bun update
. ReadStream and WriteStream from node:tty
are implemented, including raw mode on process.stdin
. SvelteKit now works in Bun. Plus bug fixes and stability improvements.
Colin McDonnell · August 24, 2023
bun test gets code coverage reporting. bun test -t pattern lets you filter tests to run by regex pattern. Fixes a crash in bun:sqlite, node.js compatiblity improvements, and more.
Jarred Sumner · August 6, 2023
worker_threads, BroadcastChannel, diagnostics_channel, Node.js compatibility improvements, bun ., bugfixes and 2 memory leaks fixed
Jarred Sumner · August 3, 2023
Node.js compatibility improvements for Vite & frameworks. Better workspace support in bun installl & a bugfix for private registries. ES Modules load 30% faster. vite dev
starts 90% faster on Linux. Transpiler bugfixes. fetch() file urls. MessagePort & MessageChannel.
Jarred Sumner · July 29, 2023
vite dev support, Workers, bun --smol, WebSocket.ping(), structuredClone(), serialize() and better Node.js compatibility
Jarred Sumner · July 21, 2023
Better support for Node.js process
and lots of fixed bugs.
Ashcon Partovi · July 12, 2023
Mock Date
, 10x faster base64 encoding, WebSocket client reliability improvements, support for postgres tls and nodemailer, and various bug fixes.
Ashcon Partovi · July 4, 2023
CommonJS is here to stay, and that's okay. Better tooling will solve today's developer experience issues.
Jarred Sumner · June 30, 2023
Sourcemapped stack traces at runtime, Node.js compatibility improvements, Bun.file(path).exists, minifier and bundler bugfixes
Jarred Sumner · June 30, 2023
Reduced memory usage, fs.watch(), better CommonJS support, improvements to bun test
, bun install
, and many bugfixes.
Ashcon Partovi · June 26, 2023
Memory usage reductions in Bun.serve(), bun install, module imports, and crypto hashing. Crash in CommonJS modules fixed, plus additional bugfixes.
Jarred Sumner · June 13, 2023
Password hashing, function mocking, debugging, and bug squashing
Colin McDonnell · June 9, 2023
Discord.js, Prisma, and Puppeteer support, faster node:crypto hashing, and lots of bug fixes
Jarred Sumner · June 2, 2023
Lots of improvements to bun test
, including Github Actions support, bun test --only
, test.if()
, describe.skip()
, and more matchers
Ashcon Partovi · May 31, 2023
Call JavaScript functions at bundle-time and inline results into the AST
Jarred Sumner · May 31, 2023
Native CommonJS support, $npm_lifecycle_event, bugfix for Bun.serve() with streaming files, bugfix for Node.js createConnection and a bundler bugfix
Jarred Sumner · May 29, 2023
Up to 80% faster bun test, test timeouts, timezone support, bundler bugfixes, console.log() improvements, node:http bugfixes, and more
Ashcon Partovi · May 26, 2023
Introducing node:vm
support, support for socket.io
and mongodb
, test.todo()
, and many bug fixes for the bundler.
Ashcon Partovi · May 22, 2023
Up to 20% faster JSON.parse, 15% faster JSON.stringify, and Proxy gets faster. A couple bugfixes to the minifier and bundler
Jarred Sumner · May 17, 2023
The Bun toolkit gets a new addition. Bun's fast native bundler is now in beta.
Jarred Sumner · May 16, 2023
A new JavaScript bundler, standalone executables, and lots of new features and improvements
Jarred Sumner · May 16, 2023
Introducing watch mode using bun --watch
, tarball dependencies in bun install
, and lots of bug fixes and compatibility improvements.
Ashcon Partovi · April 4, 2023
Introducing expect()
snapshots in bun test
, preloading modules using bun --preload
, basic glob star support in bun install, improvements to Web & Node.js compatibility, lots of bug fixes, and a teaser of what's next.
Ashcon Partovi · March 18, 2023
Bun has docs now? Bun has docs now.
Colin McDonnell · February 24, 2023
Support for FormData
and git
dependencies, better setTimeout()
compatibility, bun wiptest
is now bun test
, and better support on AWS Lambda and GitHub Actions.
Ashcon Partovi · February 24, 2023
Support for Bun.sleep
, improved Docker support, and improvements to Node.js and npm compatibility
Ashcon Partovi · February 9, 2023
Improved compatibility for node:http
, support for http.request()
and stripe-node
, and fixed various bugs.
Ashcon Partovi · February 2, 2023
MongoDB support, github:
dependencies in bun install
, faster Buffer
, bun run
for WebAssembly, express' body-parser
package, and many bug fixes.
Jarred Sumner · January 31, 2023
Support for aliasing package.json dependencies, a better error message when a workspace is not found, and a few important bug fixes.
Jarred Sumner · January 19, 2023
Support for npm workspaces, DNS lookups, database drivers, and lots of improvements to bun install.
Ashcon Partovi · January 18, 2023
Introducing bunx. Install and run an executable from npm, 100x faster than npx.
Ashcon Partovi · December 23, 2022
Massive reduction in memory usage, faster text encoding, improved Jest compatibility, file-system routing, automatic package installs, and a lot more
Ashcon Partovi · December 7, 2022
Release notes for Bun v0.2.2
Jarred Sumner · October 27, 2022
Release notes for Bun v0.2.1
Jarred Sumner · October 19, 2022
Release notes for Bun v0.2.0
Jarred Sumner · October 13, 2022
Release notes for Bun v0.1.12
Jarred Sumner · September 18, 2022
Release notes for Bun v0.1.11
Jarred Sumner · September 7, 2022
Release notes for Bun v0.1.10
Jarred Sumner · August 19, 2022
Release notes for Bun v0.1.9
Jarred Sumner · August 18, 2022
Release notes for Bun v0.1.8
Jarred Sumner · August 11, 2022
Release notes for Bun v0.1.7
Jarred Sumner · August 6, 2022
Release notes for Bun v0.1.6
Jarred Sumner · August 1, 2022
Release notes for Bun v0.1.5
Jarred Sumner · July 23, 2022
Release notes for Bun v0.1.4
Jarred Sumner · July 13, 2022
Release notes for Bun v0.1.3
Jarred Sumner · July 11, 2022
Release notes for Bun v0.1.2
Jarred Sumner · July 7, 2022
Release notes for Bun v0.1.1
Jarred Sumner · July 5, 2022