Bun v1.3.9 Bun v1.3.9 introduces new `bun run --parallel` and `bun run --sequential` commands that allow running multiple package.json scripts concurrently or sequentially with colored, prefixed output, including full integration with `--filter` and `--workspaces` for monorepo support. The update also fixes HTTP/2 connection upgrades via `net.Server`, and adds `Symbol.dispose` support to `mock()` and `spyOn()` in `bun:test`, enabling automatic mock restoration using the `using` keyword. To install Bun curl -fsSL https://bun.sh/install | bash npm install -g bun powershell -c "irm bun.sh/install.ps1|iex" scoop install bun brew tap oven-sh/bun brew install bun docker pull oven/bun docker run --rm --init --ulimit memlock=-1:-1 oven/bun To upgrade Bun bun upgrade bun run --parallel and bun run --sequential Run multiple package.json scripts concurrently or sequentially with Foreman-style prefixed output. Includes full --filter and --workspaces integration for running scripts in parallel or sequential across workspace packages. Run "build" and "test" concurrently from the current package.json bun run --parallel build test Run "build" and "test" sequentially with prefixed output bun run --sequential build test Glob-matched script names bun run --parallel "build: " Run "build" in all workspace packages concurrently bun run --parallel --filter ' ' build Run "build" in all workspace packages sequentially bun run --sequential --workspaces build Multiple scripts across all packages bun run --parallel --filter ' ' build lint test Continue running even if one package fails bun run --parallel --no-exit-on-error --filter ' ' test Skip packages missing the script bun run --parallel --workspaces --if-present build Each line of output is prefixed with a colored, padded label so you can tell which script produced it: build | compiling... test | running suite... lint | checking files... When combined with --filter or --workspaces , labels include the package name: pkg-a:build | compiling... pkg-b:build | compiling... --parallel starts all scripts immediately with interleaved, prefixed output. --sequential runs scripts one at a time in order. By default, a failure in any script kills all remaining scripts — use --no-exit-on-error to let them all finish. Pre/post scripts prebuild /postbuild are automatically grouped with their main script and run in the correct dependency order within each group. How is this different from --filter? bun --filter="pkg"