โ ๏ธ Breaking Change
Impact Score: 7/10
bun v0.1.7
Source available โ automated, not human-reviewed
Component: bun ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
Breaking-change evidence from the source
Breaking changes - bun install will invalidate the lockfiles on upgrade if it exists. Unfortunately, this is necessary to support private/scoped package installs
โก Executive Summary (TL;DR)
Bun bun-v0.1.7. Source highlight: curl https://bun.sh/install | bash
Who Does This Impact? (Role-Based Analysis)
๐ป Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
๐ Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
โ๏ธ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
โ ๏ธ Breaking Changes & Deprecations (1)
- Breaking changes - bun install will invalidate the lockfiles on upgrade if it exists. Unfortunately, this is necessary to support private/scoped package installs
๐ง Bug Fixes & Patches (6)
- Fix a handful of crashes that occurred in rare cases in Bun.Transpiler, `bun:ffi` and a couple other places thanks to @sno2
- `Buffer.isBuffer` no longer checks that `this` is the `Buffer` constructor
- `Bun.Transpiler` no longer does bun-specific transforms when it shouldn't
- Make internal APIs that iterate through JS objects more reliable @sno2 in https://github.com/oven-sh/bun/pull/974
- Fix u32 jsNumber cast
- fix import in http polyfill
๐ View Raw Release Notes (Original Developer Log)
To upgrade:
```bash
bun upgrade
```
To install:
```bash
curl https://bun.sh/install | bash
```
<details>
<summary>If you have any problems upgrading</summary>
Run the install script (you can run it multiple times):
```bash
curl https://bun.sh/install | bash
```
</details>
## What's new
**`bun init` quickly start a new, empty project that uses Bun** (similar to npm init). `bun init` is a new subcommand in `bun`.
<img src="https://user-images.githubusercontent.com/709451/183006613-271960a3-ff22-4f7c-83f5-5e18f684c836.gif" height=450 />
**`bun install` now supports private npm registries & scoped (authenticated) packages**
Thank you @soneymathew for your help with this.
<img width="433" alt="image" src="https://user-images.githubusercontent.com/709451/183240854-325123ab-1c32-420b-b227-a68902d416ac.png">
**`bun install` now supports lifecycle hooks for project-level package.json** (not dependencies)
<img width="445" alt="image" src="https://user-images.githubusercontent.com/709451/183240585-f5344dbf-1d9e-40ff-a9a3-f6e089c4dc77.png">
It runs postinstall scripts for your app's package.json, but ignores dependencies lifecycle hooks. This lets you use `husky`, `lint-staged`, and other postinstall-dependent packages tools
More new stuff:
- `express` is partially supported, thanks to @zhuzilin and @evanwashere. There is a lot more work to be done - it's not fast yet and it logs a spurious error on request, but it is better than not working
- `bun create` now lets you specify a start command so that you can say how to run the program in the output
- `process.revision` has the git sha that bun was built with
## Breaking changes
- bun install will invalidate the lockfiles on upgrade if it exists. Unfortunately, this is necessary to support private/scoped package installs
## Bug fixes
* Fix a handful of crashes that occurred in rare cases in Bun.Transpiler, `bun:ffi` and a couple other places thanks to @sno2
* `Buffer.isBuffer` no longer checks that `this` is the `Buffer` constructor
* `Bun.Transpiler` no longer does bun-specific transforms when it shouldn't
* Make internal APIs that iterate through JS objects more reliable @sno2 in https://github.com/oven-sh/bun/pull/974
* Fix u32 jsNumber cast by @zhuzilin in https://github.com/oven-sh/bun/pull/964
* fix import in http polyfill by @zhuzilin in https://github.com/oven-sh/bun/pull/973
* fix path.normalize on ... by @zhuzilin in https://github.com/oven-sh/bun/pull/966
* allow setting status code in Response.redirect by @zhuzilin in https://github.com/oven-sh/bun/pull/985
* Fix for bearer tokens missing from request headers on bun install step by @soneymathew in https://github.com/oven-sh/bun/pull/991
* Fix of panic in threads while downloading scoped packages by @soneymathew in https://github.com/oven-sh/bun/pull/992
* feat(util): export util.TextDecoder by @xHyroM in https://github.com/oven-sh/bun/pull/990
* Fixed bugs in `latin1` and `binary` encodings in bun's `Buffer` implementation
## Misc:
* fix(makefile) fix devcontainer rule by @zhuzilin in https://github.com/oven-sh/bun/pull/957
* refactor: create a high-level property iterator by @sno2 in https://github.com/oven-sh/bun/pull/972
* fix(makefile): mkdir DEBUG_OBJ_DIR before compiling bindings by @zhuzilin in https://github.com/oven-sh/bun/pull/975
* Convert landing page to zero-JS Next.js application. by @leerob in https://github.com/oven-sh/bun/pull/945
* benchmarks(sqlite): invalid northwind database url by @xHyroM in https://github.com/oven-sh/bun/pull/989
* Update README for development help by @JL102 in https://github.com/oven-sh/bun/pull/982
## New Contributors
* @zhuzilin made their first contribution in https://github.com/oven-sh/bun/pull/964
* @leerob made their first contribution in https://github.com/oven-sh/bun/pull/945
**Full Changelog**: https://github.com/oven-sh/bun/compare/bun-v0.1.6...bun-v0.1.7