github jetify-com/devbox 0.19.0
0.19.0 — Devbox is its own launcher

4 hours ago

What's Changed

💥 Breaking Changes

  • Devbox is now its own launcher — release builds of devbox replace the bash launcher script that used to sit in front of every command. The binary picks the version to run (DEVBOX_USE_VERSION, otherwise your current version) and runs it directly, downloading it first if needed and verifying it against checksums.txt. The daily update check now runs in the background, so commands no longer wait on the network. Startup overhead for a command like devbox version drops from ~78ms to ~8ms. Existing installs keep working: you'll see "New launcher available" at most once a day, and devbox version update swaps the bash script for the new binary (asking for sudo only if the install directory isn't writable). Nix and Homebrew builds aren't affected, by @mikeland73 (#3024)
  • devbox version update no longer re-runs the installer — it downloads the latest release and makes it your current version itself, and only replaces the launcher when it's out of date (or when you pass the new --launcher flag). If devbox wasn't installed with the installer, it now fails and tells you to update through the package manager you installed it with, by @mikeland73 (#3024)

✨ New Features

  • Faster startup for every command — nix's version info is cached on disk instead of running nix --version each time (devbox global shellenv goes from ~86ms to ~16ms); telemetry no longer re-opens the project, caches the device ID, and uploads at most every 30 minutes; and devbox generate direnv --print-envrc, which direnv runs on every reload, skips the nix check and telemetry entirely, by @mikeland73 (#3020), (#3021) and (#3022)
  • "on_mismatch": "auto" switches versions before doing any work — projects that pin devbox_version now switch to the pinned release at startup, and exec an already-downloaded version directly, instead of starting devbox twice, by @mikeland73 (#3023)

🐛 Bug Fixes

  • Concurrent devbox commands in the same project no longer fail with ENOENT/EEXIST on runx binaries, and running shells no longer briefly lose them, by @mikeland73 (#3019).

🧹 Maintenance

Full Changelog: 0.18.5...0.19.0

Don't miss a new devbox release

NewReleases is sending notifications on new releases.