Skip to content

Releases: jetify-com/devbox

0.13.6

29 Oct 17:39
0bc66cb
Compare
Choose a tag to compare

What's new in this release

  1. Fixes a few issues with package patching that could prevent Python from installing succesfully
  2. Improves platform compatibility checks when installing packages with runx
  3. Fixes an issue where devbox shellenv would fail on paths with whitespace
  4. Fixes a bug where env_from would fail when called from a subdirectory
  5. Fixes documentation and error messaging for env_from when calling devbox from a subdirectory

Changelog

0.13.5

16 Oct 16:25
8205c25
Compare
Choose a tag to compare

What's new in this release

  • Process-compose downgraded to 1.24.2 to fix an issue with PostgreSQL services
  • Fixes a potential error with devbox init

Changelog

0.13.4

09 Oct 19:15
9c709d2
Compare
Choose a tag to compare

What's new in this release:

  1. Bump process-compose to 1.34.0. This update fixes a bug where services would be left orphaned if your shell terminated suddenly
  2. [Python] venvShellHook is now more sh compatible
  3. Flake updated to only build the devbox package, and to support cross-compilation.

Changelog

0.13.3

03 Oct 18:29
fc7a398
Compare
Choose a tag to compare

What's new in this release

  • Fixes an issue where non-versioned packages and flakes could be incorrectly removed from the devbox.lock file.
  • Adds an experimental environment variable (DEVBOX_X_GITHUB_PLUGIN_CACHE_TTL) that manages how long Devbox caches Github-sourced plugins

Changelog

  • fc7a398 [plugins] Add env var to control github cache ttl (#2314)
  • 59c2d6d Update docs for 0.13 series (#2312)
  • 0ff66c1 [lockfile] Fix tidy for non-versioned packages (#2313)
  • f66f7a9 changed trigger to release to dockerhub to run on published releases (#2311)
  • 8ca1f75 patchpkg: improve CUDA shared library search (#2306)

0.13.2

30 Sep 18:09
fcf3a42
Compare
Choose a tag to compare

What's new in this release

  • [Services] Users can now choose the process-compose port when running services
    • To set it from the command line, use the --pcport, -p flag
    • To set it in your config or environment, export the DEVBOX_PC_PORT_NUM environment variable
  • [Install] Devbox can now use the Determinate Systems Installer to manage Nix.
    • To test the installer, export DEVBOX_FEATURE_DETSYS_INSTALLER=1 in your environment before setting up Nix
  • [Install] Nix Flake for installing Devbox
    • To get the latest version, run nix profile install github:jetify-com/devbox/latest
    • To pin a specific version, run nix profile install github:jetify-com/devbox/<version>. Note that only versions >= 0.13.2 can be installed this way
  • [Install] Devbox now installs the latest version of nix (2.24.7)

Changelog

  • fcf3a42 Fix flake rev issue (#2310)
  • 37c36a1 Build and Install Devbox via Nix Flake (#2308)
  • 2544163 [vscode-extension] Added support for reopen in devbox for cursor and vscodium (#2309)
  • 3da723b docs,examples: update dependencies (#2307)
  • 6a72354 [telemetry] Don't log user errors (#2305)
  • 57312c0 patchpkg: patch python to use devbox CUDA libs (#2296)
  • 58ed80e [nix] Add DetSys installer behind feature flag (#2303)
  • 68edd30 [services] Let users set the port for process-compose (#2299)
  • 3818683 refactor: add bash shebang for shellcheck (#2286)
  • 3c6af98 bump installed nix version to latest, and update test-nix-versions (#2301)

0.13.1

24 Sep 20:02
ac07204
Compare
Choose a tag to compare

What's new in this release

This hotfix fixes the following bugs in the 0.13.0 release:

  • Fixed an error with Python autopatching that could occur on macOS
  • Devbox can now handle paths that contain whitespace
  • Fixed a search error when installing Rust

Additionally, this release adds the following new features:

  • print-dev-env now has a --impure flag set, which allows flakes to receive environment variables. This feature is behind a feature flag, and can be enabled with IMPURE_PRINT_DEV_ENV=1.
  • devbox ls now prints the version strings of the packages installed in your project

Changelog

  • ac07204 internal/devbox: handle whitespace in paths (#2292)
  • f8f5511 patchpkg: don't error on missing store refs (#2293)
  • 6021de4 [search] Fix bad error when installing "rust" (#2284)
  • c314509 Aadd --impure flag when calling print-dev-env (#2279)
  • dd9d373 [sandboxes] devbox ls: print versions (#2277)
  • 6a89adb [easy][refactor] Move env var to owner package (#2282)

0.13.0

20 Sep 14:43
b9c5173
Compare
Choose a tag to compare

What's new in this release

0.13.0 is a major release, with several enhancements to improve the Python development experience with Devbox.

[Python] Autopatching Native Libraries

This release includes an experimental feature that automatically patches Python interpreters to load native libraries installed in your Devbox Shell, without needing to set LD_LIBRARY_PATH. This makes it easier to create Devbox shells for projects with Python Packages that use native extensions. Additionally, Devbox will automatically install native libraries that are commonly used by Python packages, such as zlib and openssl. This feature can be disabled with devbox add <python-package> --patch never

This release automatically enables patching for Python interepreters, but it can be enabled for any package (such as Ruby) using devbox add <pkg> --patch always.

[Python] Plugin + Virtual Environment improvements

When you launch Python, our plugin now defaults to putting your virtual environment in $DEVBOX_PROJECT_ROOT/.venv. This provides better compatibility with IDEs and Language Extensions that expect Python to be in your project root. The plugin also sets a UV_PYTHON environment variable to improve compatibility with the uv package manager.

You can manage where Devbox sets up your .venv directory by setting the $VENV_DIR environment variable in your devbox.json.

Special thanks to @djgoku for contributing fixes to this feature!

[Services] devbox services attach and better backgrounding

Starting Devbox services in the background with devbox services up -b now runs process-compose as a detached process in the background, meaning it will stay alive even if your terminal exits or crashes. You can attach the process-compose TUI to the backgrounded process with devbox services attach, and exiting the TUI will leave process-compose running in the background.

To stop the backgrounded process, you can use devbox services stop.

This release also upgrades the default process-compose to 1.24.2, which has several reliability and performance improvements.

Other Features

  • Devbox can now automatically parse and add secrets from your dotenv files. To have Devbox load your dotenv files automatically, add the dotenv file to env_from in your devbox.json
  • Devbox now includes a builtin plugins for Valkey, a drop-in Redis Replacement. Special thanks to @captainseeker for contributing!
  • Added a DEVBOX_WD environment variable that maps to the working directory where you ran a script. This variable is useful if you want to run scripts that act on your current working directory, instead of the Devbox project's root directory
  • Devbox's direnv integration now watched devbox.lock for changes, and updates your environment. Thanks to @mjgallag for contributing!
  • Added missing/required properties to the devbox-plugin-schema.json. Thanks to @svallory for contributing!

Full Changelog

New Contributors

Full Changelog: 0.12.0...0.13.0

0.13.0-devrc

18 Sep 16:13
b9c5173
Compare
Choose a tag to compare
0.13.0-devrc Pre-release
Pre-release

What's new in this Release

Process Compose Updates

Process compose is now updated to v1.24.2, which should provide more stability and includes several new features. The release also adds the devbox services attach command, which lets you re-attach to process compose while it is running in the background

Other fixes

  • Improvements to Python plugin
  • Bug fixes for Python auto-patching

Changelog

  • b9c5173 devpkg: fix empty patch mode (#2278)
  • 9da62f6 patchpkg: patch libstdc++ (#2271)
  • 1b918e7 [pc-version] Bump process compose to 1.24.2 (#2276)
  • 3ac5262 [Services] Keep Process Compose alive in background, add attach command (#2269)
  • df187b9 Chore/switch pip plugin reference to python (#2265)
  • d1ab641 [Python] Venv tweaks based on testing in Sandboxes (#2264)

0.13.0-deva

11 Sep 18:10
6df893a
Compare
Choose a tag to compare
0.13.0-deva Pre-release
Pre-release

What's new in This Pre-release

[Python] Plugin will now create .venv in your project root by default

When you launch Python, our plugin now defaults to putting your virtual environment in $DEVBOX_PROJECT_ROOT/.venv. This provides better compatibility with IDEs and Language Extensions that expect Python to be in your project root.

You can manage where Devbox sets up your .venv directory by setting the $VENV_DIR environment variable in your devbox.json

Other Fixes

  • Devbox now automatically installs common native libraries used by Python on Darwin.

Changelog

  • 6df893a [Python] Change .venv script to be more compatible with IDEs (#2259)
  • aaf5670 patchpkg: patch missing Python refs on darwin (#2258)

0.13.0-dev

09 Sep 21:33
afa6187
Compare
Choose a tag to compare
0.13.0-dev Pre-release
Pre-release

New in this Pre-release

Autopatching Python w/ Native Libraries

This release includes an experimental feature that automatically patches Python interpreters to load native libraries installed in your Devbox Shell, without needing to set LD_LIBRARY_PATH. This makes it easier to create Devbox shells for projects with Python Packages that use native extensions. Additionally, Devbox will automatically install native libraries that are commonly used by Python packages, such as zlib and openssl. This feature is currently enabled for Linux only, and can be disabled with devbox add <python-package> --patch never

This release automatically enables patching for Python interepreters, but it can be enabled for any package (such as Ruby) using devbox add <pkg> --patch always.

Other new Features

  • Devbox can now automatically parse and add secrets from your dotenv files. To have Devbox load your dotenv files automatically, add the dotenv file to from_env in your devbox.json
  • Added a builtin plugins for Valkey, a drop-in Redis Replacement
  • Added a DEVBOX_WD environment variable that maps to the working directory where you ran a script. This variable is useful if you want to run scripts that act on your current working directory, instead of the Devbox project's root directory

Bug Fixes

  • Devbox's direnv integration now watched devbox.lock for changes, and updates your environment
  • Added missing/required properties to the devbox-plugin-schema.json
  • Various fixes to docs and examples

Changelog