Skip to content

Releases: jetify-com/devbox

0.5.3

31 May 22:29
5ff0bdb
Compare
Choose a tag to compare

What's new in this release

Automatic @latest

  • Adding a package without a version number will now automatically install the latest version of the package from our Index. This is equivalent to running devbox add pkg@latest from the CLI
  • Pinning a specific Nixpkg commit for the entire project in your devbox.json is now deprecated. This release still maintains backwards compatibility, but the nixpkg commit will be removed from the config in an upcoming release.
  • See our guide on pinning packages for more information

Devbox Global Improvements

  • devbox global pull can now pull and activate a global profile from a tarball.
  • You can now use update, services, and run with devbox global.
  • Running devbox run without an argument will list the available global scripts

devbox create

  • Our new create subcommand makes it easy to create a new devbox project from a template.
  • Our current templates are based on the projects in our examples repo

MariaDB Plugin

  • Devbox can now automatically configure MariaDB packages using our Plugin.
  • Click here to see the example project, or read the MariaDB docs for more detail

PHP Plugin improvement

  • PHP plugin now lets you edit the php.ini file for your project.

Performance Improvements

  • Projects with a large number of packages are now significantly faster when running devbox add

Bug Fixes

  • Devbox no longer overwrites XDG_DATA_DIRS, instead it will prepend to the path
  • Fixed a bug that caused plugins to function incorrectly with certain Nix pnames
  • Fixed pip plugin autodetection
  • Fixed a bug that prevented Devbox from installing path: flakes without a default package
  • Changes to local flakes should now update when the user runs devbox install

Special thanks to

What's Changed

  • [haskell] Move planner to plugin by @mikeland86 in #1009
  • [devbox.json] Don't create nixpkgs commit hash by @mikeland86 in #1013
  • [examples] Added llama example by @mohsenari in #1008
  • [versions] Enable auto-latest by @mikeland86 in #1011
  • [easy][pip] Fix pip plugin by @mikeland86 in #1005
  • [planners] Remove unused planner code by @mikeland86 in #1012
  • [testscripts] augment php testscrpt to remove and re-add a php-extension by @savil in #1021
  • [devbox.json] Turn shell into pointer by @mikeland86 in #1014
  • [cicd] Simplify go CICD cache by @mikeland86 in #1019
  • chore: update dependencies by @hezhizhen in #1030
  • [direnv] Added warning for old envrc content by @mohsenari in #1018
  • [global] Remove global only functions, make global reuse local code by @mikeland86 in #1027
  • [bug fix] write devbox.lock file first, and then write local.lock by @savil in #1032
  • [devcontainer] Added shellenv to dockerfile template by @mohsenari in #1036
  • [UX] Improve ux when nixpkgs has not been downloaded by @mikeland86 in #1040
  • [plugin] Add php.ini in the PHP plugin by @Lagoja in #1039
  • [templates] Add ability to start project from a template by @mikeland86 in #1016
  • [docs] Correct direnv.md reference to devbox generate direnv by @chancecarey in #1042
  • [easy][bug] Fix legacy resolving when nixpkgs hash is not set by @mikeland86 in #1047
  • [pull] Implement pull tar by @mikeland86 in #1043
  • [refactor] Move config to own package. Don't warn if overwriting defa… by @mikeland86 in #1045
  • [global] Add update/services/run commands to global by @mikeland86 in #1046
  • [shellenv] prepend to XDG_DATA_DIRS, instead of overwriting by @savil in #1041
  • MariaDB Plugin by @Lagoja in #1048
  • [perf] Improve how we determine attribute path by @mikeland86 in #1050
  • feat: add list to devbox run if no args are given by @bketelsen in #1054
  • [docs] Mention bundler flags/configs for ruby projects by @mauricioabreu in #1031
  • [Flakes] Changes to local flakes should reflect in shell after devbox install by @savil in #1063
  • [plugins] Improve how we determine package name in plugins by @mikeland86 in #1062
  • [docs][easy] Fix missing code block type in ruby.md by @mikeland86 in #1065
  • [packages] fix error check in pendingPackagesForInstallation by @savil in #1052
  • [flakes] Fix flakes with fragments by @mikeland86 in #1069

New Contributors

Full Changelog: 0.5.2...0.5.3

0.5.2

18 May 18:22
8f579b2
Compare
Choose a tag to compare

What's new in this release

  • Fixes a bug that would repeatedly prompt users to update

Changelog

0.5.1

18 May 00:56
8661579
Compare
Choose a tag to compare

What's new in this release

This release fixes the following issues:

  • devbox search is now visible in the Devbox CLI Help
  • Fixed a shell.nix bug that would break some direnv use cases
  • Updates the PHP planner to a Flake-backed Plugin
  • Fixes a bug that would print update notices multiple times.

Changelog

0.5.0: Find and Install Nix Packages by Version

15 May 22:26
e2478a2
Compare
Choose a tag to compare

What's New in This Release

This release includes one of our most requested features: installing a specific package version with Devbox. A complete list of features and commits is available below.

To install 0.5.0, run devbox version update from the command line, or follow the installation steps on our docs page. You can also check out our blog post for more details

Install Packages by Version Number

Previously, developers could only install the latest version of a Nix package available in Nixpkgs, or they had to look up and pin an alternative commit in their devbox.json. With 0.5.0, we maintain an index that maps version strings to Nixpkg commits, so users can install their packages by providing a name and version.

This change is backwards compatible, meaning you do not have to update your existing devbox.json immediately when you move to 0.5.0. More details are available in our Docs

Search for Packages

You can see what versions of a package are available to install by running devbox search <package>

$ devbox search nodejs

Found 168+ results for "nodejs":

* nodejs (19.8.1, 19.7.0, 19.5.0, 19.2.0, 18.16.0, 18.15.0, 18.14.2, 18.13.0, 18.12.1, 18.10.0, 
18.8.0, 18.4.0, 18.0.0, 17.9.0, 17.5.0, 17.3.0, 17.0.1, 16.19.1, 16.19.0, 16.18.1, 16.17.1, 16.17.0, 
16.15.0, 16.14.0, 16.13.1, 16.13.0, 16.8.0, 16.4.0, 16.0.0, 15.14.0, 15.10.0, 15.5.0, 15.0.1, 
14.18.1, 14.18.0, 14.17.5, 14.17.1, 14.16.1, 14.16.0, 14.15.3, 14.15.0, 14.9.0, 14.4.0, 13.14.0, 
12.22.12, 12.22.10, 12.22.8, 12.22.7, 12.22.5, 12.22.1, 12.21.0, 12.20.0, 12.19.0, 12.18.3, 
12.18.1, 10.24.1, 10.24.0, 10.23.0, 10.22.0, 10.21.0)
* nodejs_16 (16.20.0)
* nodejs_18 (18.16.0)
* nodejs_19 (19.9.0)
* nodejs_20 (20.0.0)
...

Adding a Package to Your Project

You can add a specific version of a package to your project by running devbox add <package>@<version>. For example, to add NodeJS 16.15.0 to your project you can run:

For packages that follow semver, you can also specify a minor or major version that you want to pin. For example, to install the latest version of NodeJS 16, you can run:

devbox add nodejs@16

To install the latest available version of NodeJS, you can run

devbox add nodejs@latest

or add nodejs@latest to the packages in your devbox.json.

If you do not include a version, Devbox will install the latest version of the package available in the nixpkgs.commit set in your devbox.json file.

Installing and Locking your Packages

Devbox will install your packages and generate a devbox.lock file whenever you run devbox add, devbox install, or whenever activate your shell.

{
      "[email protected]": {
          "last_modified": "2022-06-30T00:42:12Z",
          "resolved": "github:NixOS/nixpkgs/d3248619647234b5dc74a6921bcdf6dd8323eb22#nodejs-16_x",
          "version": "16.15.0"
       }
}

You can check this lockfile in to ensure that every developer who uses your project gets the same packages

Updating your Packages

You can update your devbox.lock and packages by running devbox update. This will fetch the latest versions of your packages that are compatible with your devbox.json

Other features and fixes

  • You can now explicitly activate plugins by adding the to the include section of your devbox.json. This is helpful for when you are installing a package from a flake, but also want to activate a devbox plugin. See more in our documentation
  • We’ve simplified our direnv function to a minimal 2 line script.
  • The Dockerfile generated by devbox generate dockerfile|devcontainer is now based on Debian instead of Alpine.
  • Fixed a bug where $SHELL was not being passed to binaries in your devbox shell (contributed by @ragingpastry)
  • Improved process spawning for devbox wrapper scripts (contributed by @literatesnow)
  • Added an install command and optional --init-hooks flag for devbox global

Special Thanks to:

Full Changelist

  • Devbox Services 2.0 docs by @Lagoja in #886
  • Flake Docs by @Lagoja in #909
  • [direnv] update envrcs in projects by @savil in #915
  • Update Flakes.md Typos by @Lagoja in #918
  • Reduce cognitive complexity by @hezhizhen in #911
  • Example for linking a custom extension to PHP by @Lagoja in #919
  • [direnv] change default hooks for shell --print-env by @mohsenari in #928
  • bring back shell.nix by @savil in #927
  • [search] Add search command by @mikeland86 in #916
  • [cleanup] Simplify code by removing printDevEnv cache and version file by @mikeland86 in #921
  • [add] Implemented devbox add granular package selection by @mikeland86 in #923
  • impl: semicolon at the end of env string commands by @gcurtis in #929
  • chore: move ssh-config generation out of general generating process and wrap its error by @hezhizhen in #922
  • Update add method of devbox interface by @hezhizhen in #924
  • [devbox global] Added init hook flag to global shellenv by @mohsenari in #920
  • [cleanup] add VirtenvBinPath variable by @hezhizhen in #932
  • chore: correct package comment and tweak OSExpandEnvMap by @hezhizhen in #937
  • [devbox global] Added devbox global install command by @mohsenari in #935
  • [cleanup] replace checks for file existing with fileutil.Exists by @hezhizhen in #944
  • [cleanup] replace literal http methods with constants by @hezhizhen in #942
  • Replace current process instead of spawning a new one. by @literatesnow in #934
  • chore: move all env to one package by @hezhizhen in #941
  • [vscode extension] ensure directory exists for ssh keys by @savil in #945
  • [cleanup] update checks for exist errors and not exist errors by @hezhizhen in #943
  • chore: move all env utils to env package by @hezhizhen in #946
  • [vscode extension] bump version and add to CHANGELOG by @savil in #951
  • update README for publishing vscode-extension by @savil in #953
  • [cleanup] replace pkgslice with lo by @hezhizhen in #948
  • [tests] global-add should not fail if global-bins-not-in-path and add testscript unit tests for add and global-add by @savil in #958
  • [cleanup] remove unused functions by @hezhizhen in #947
  • [global] Don't add global packages to local by @mikeland86 in #952
  • fix: inherit SHELL env variables in wrappers by @ragingpastry in #950
  • [lockfile] Add lockfile and use search endpoint to resolve versions by @mikeland86 in #936
  • [easy][wrappers] Ensure wrappers use correct project dir by @mikeland86 in #960
  • [easy][global] Don't show eval message if already shellenved by @mikeland86 in #961
  • Update CONTRIBUTING.md with fixes and style guide by @gcurtis in #963
  • chore: update or add copyright text by @hezhizhen in #968
  • [release] also release to stable-channel's S3 bucket by @savil in #969
  • chore: update env constants and functions by @hezhizhen in #954
  • chore: rename package env as envir by @hezhizhen in #962
  • [version] part 1: update command for devbox and launcher updates by @savil in #965
  • [version update] use LAUNCHER_PATH in triggerUpdate function by @savil in #975
  • [lockfile] Use lockfile for legacy packages by @mikeland86 in #964
  • feat: add cmdutil package to provide utils for commands by @hezhizhen in #970
  • doc: Fix typo in zig.md by @saimen in #977
  • Bump sqlparse from 0.4.3 to 0.4.4 in /examples/stacks/django by @dependabot in #940
  • [update] Implement devbox update by @mikeland86 in #978
  • chore: use constants defined in envir in version check by @hezhizhen in #976
  • chore: add GetValueOrDefault f...
Read more

0.0.0-edge.2023-05-11

11 May 09:03
a1d77e7
Compare
Choose a tag to compare
0.0.0-edge.2023-05-11 Pre-release
Pre-release
Bump django from 4.1.7 to 4.1.9 in /examples/stacks/django (#992)

Bumps [django](https://github.com/django/django) from 4.1.7 to 4.1.9.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/django/django/commit/dceb634ba42d3a182ea653dce31a529017f75a95"><code>dceb634</code></a>
[4.1.x] Bumped version for 4.1.9 release.</li>
<li><a
href="https://github.com/django/django/commit/e7c3a2ccc3a562328600be05068ed9149e12ce64"><code>e7c3a2c</code></a>
[4.1.x] Fixed CVE-2023-31047, Fixed <a
href="https://redirect.github.com/django/django/issues/31710">#31710</a>
-- Prevented potential bypass of v...</li>
<li><a
href="https://github.com/django/django/commit/491dccec1aa10e829539e4e4fcd8cca606a57ebc"><code>491dcce</code></a>
[4.1.x] Added missing backticks in docs/releases/1.7.txt.</li>
<li><a
href="https://github.com/django/django/commit/6d334a0ca54f2f8b3cce28070367110497d8d82c"><code>6d334a0</code></a>
[4.1.x] Added stub release notes for 4.1.9 and 3.2.19.</li>
<li><a
href="https://github.com/django/django/commit/f55bcff9dcac1d0cb1f927f9fd543cfd567400c4"><code>f55bcff</code></a>
[4.1.x] Refs <a
href="https://redirect.github.com/django/django/issues/34118">#34118</a>
-- Fixed CustomChoicesTests.test_uuid_unsupported on Pyth...</li>
<li><a
href="https://github.com/django/django/commit/685721b4c5551c3ef755421c2f64c164e809c3b7"><code>685721b</code></a>
[4.1.x] Post-release version bump.</li>
<li><a
href="https://github.com/django/django/commit/bbce0153919c6e9ec7886f5ef3ce76463fae57c6"><code>bbce015</code></a>
[4.1.x] Bumped version for 4.1.8 release.</li>
<li><a
href="https://github.com/django/django/commit/67a79dcf5b245f6cb0a77e232243c6b4033dea5c"><code>67a79dc</code></a>
[4.1.x] Added release date for 4.1.8.</li>
<li><a
href="https://github.com/django/django/commit/ba1654cb54eccef3ba29e455cd5065aed84e1f90"><code>ba1654c</code></a>
[4.1.x] Fixed <a
href="https://redirect.github.com/django/django/issues/34384">#34384</a>
-- Fixed session validation when rotation secret keys.</li>
<li><a
href="https://github.com/django/django/commit/ff3e3eb2bd6c259807e5409a8e7299d00a42687e"><code>ff3e3eb</code></a>
[4.1.x] Added stub release notes for 4.1.8.</li>
<li>Additional commits viewable in <a
href="https://github.com/django/django/compare/4.1.7...4.1.9">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=django&package-manager=pip&previous-version=4.1.7&new-version=4.1.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/jetpack-io/devbox/network/alerts).

</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

0.0.0-edge.2023-05-10

10 May 01:02
Compare
Choose a tag to compare
0.0.0-edge.2023-05-10 Pre-release
Pre-release
Disable tests

0.4.9

03 May 17:05
Compare
Choose a tag to compare

What's new in this release

Devbox will no longer automatically update whenever a new version is available. Instead, users will be notified when a new version of the CLI or Launcher (which manages the Devbox Updates) is available, and prompted to update using devbox version update.

If you would like to pin a specific version of Devbox (for example, when using Devbox in CI), or rollback to an older version of Devbox after updating, you can set the DEVBOX_USE_VERSION environment variable to the version number you'd like to use. For example, to reliably install Devbox 0.4.9 in a CI/CD environment, you can run:

export DEVBOX_USE_VERSION=0.4.9
curl -fsSL https://get.jetpack.io/devbox | bash

Changelog

  • b03f0d2 [version update] use LAUNCHER_PATH in triggerUpdate function (#975)
  • 00d4182 [github post-release] also publish to stable S3 bucket
  • 2de18c7 [version] part 1: update command for devbox and launcher updates (#965)

0.4.9-dev

02 May 23:56
Compare
Choose a tag to compare
0.4.9-dev Pre-release
Pre-release

What's new in this release

Devbox will no longer automatically update whenever a new version is available. Instead, users will be notified when a new version of the CLI or Launcher (which manages the Devbox Updates) is available, and prompted to update using devbox version update.

If you would like to pin a specific version of Devbox (for example, when using Devbox in CI), or rollback to an older version of Devbox after updating, you can set the DEVBOX_USE_VERSION environment variable to the version number you'd like to use. For example, to reliably install Devbox 0.4.9 in a CI/CD environment, you can run:

export DEVBOX_USE_VERSION=0.4.9
curl -fsSL https://get.jetpack.io/devbox | bash

Changelog

  • b03f0d2 [version update] use LAUNCHER_PATH in triggerUpdate function (#975)
  • 00d4182 [github post-release] also publish to stable S3 bucket
  • 2de18c7 [version] part 1: update command for devbox and launcher updates (#965)

0.4.8

19 Apr 20:10
9645d48
Compare
Choose a tag to compare

Fixes in this release

This release provides backwards compatibility for developers using the Direnv integration before 0.4.7.

Note: For the best .envrc performance, and to take advantage of the new features released in 0.4.7, we recommend regenerating your .envrc file using devbox generate direnv --force. If you've modified your .envrc, you should back up your changes before running this command.

Changelog

0.4.7

18 Apr 15:35
bf7c274
Compare
Choose a tag to compare

What's New in This Release

This release includes an update to our Services system, the ability to install packages from Nix Flakes, and improvements to our Direnv Integration. You can view the full release announcement on our blog:

Note: Direnv users may need to regenerate their .envrc file using devbox generate direnv --force. The new .envrc file should perform better, and be more reliable than previous versions

Devbox Services 2.0

  • Devbox Services are now backed by Process Compose, making it easier to start, stop, and manage your services
  • Developers can define their own services using process-compose.yaml. Devbox will automatically detect and run services that are defined in your project's root directory.
  • Use devbox services up to start all your services in the foreground with the Process Compose UI, or start them in the background with devbox services up -b
  • Start, stop, and restart services with devbox services start|stop|restart. Stop all your projects with devbox services stop --all-projects

Flake Support

  • You can now install software from Nix Flakes by adding them to the packages in your devbox.json.
  • Devbox supports installing packages from Github hosted flakes (including NixOS/nixpkgs), or from local flakes.
  • Example flake references:
    {
     "packages": [
          // Add the default package from a Github hosted flake
         "github:numtide/flake-utils", 
          // Install a specific attribute or package from a Github hosted flake
         "github:nix-community/fenix#stable.toolchain", 
          // Install a package from a specific channel of Nixpkgs
         "github:nixos/nixpkgs/21.05#hello",
         // Install a package from a local flake. 
         // This should point to a directory that contains a flake.nix file.
         "path:../my-flake#my-package" 
      ]
    }

Direnv Improvements

  • Speed up start up performance by removing use nix .devbox/gen/shell.nix from the generated .envrc file.
  • Devbox now runs init_hooks as part of our .envrc hook.
  • Devbox will now ensure that the packages specified in your devbox.json are installed when generating your .envrc.

Special Thanks To:

What's Changed

  • all: upgrade to Go 1.20, upgrade all dependencies by @gcurtis in #862
  • ci: create Sentry release by @gcurtis in #861
  • chore: update descriptions for commands by @hezhizhen in #847
  • [vscode extension] Updated readme and changelog for v0.0.5 by @mohsenari in #853
  • boxcli,nix: some better error messages by @gcurtis in #855
  • Fix typo in installing_devbox.mdx by @parviste in #857
  • Migrate services to process-compose by @Lagoja in #836
  • [Readme] Moved install to above benefits by @mohsenari in #863
  • chore: go mod tidy by @hezhizhen in #864
  • chore: simplify global commands by @hezhizhen in #865
  • Skip interactive survey if devbox is not executed in a terminal by @LucilleH in #867
  • [devbox] generate script files when we generate shell files by @savil in #868
  • List Services and Status via Process Compose by @Lagoja in #870
  • Add init hook flag to shellenv command by @LucilleH in #871
  • [wrappers] Don't re-source shellenv if already sourced by @mikeland86 in #872
  • [vscode extension] update README by @hezhizhen in #877
  • [flakes] Add ability to add custom local flakes to devbox project by @mikeland86 in #866
  • [examples] Update dependencies by @mikeland86 in #878
  • [easy][examples] Update more deps by @mikeland86 in #879
  • [nix] Re-add profile to path by @mikeland86 in #882
  • [bin-wrappers] Use shellenv command in binwrappers by @mikeland86 in #876
  • set HOME for testscripts by @savil in #875
  • [vscode-extension] Added better error messages and debugs for openinvscode by @mohsenari in #887
  • nixstore: Nix expression for generating a nixpkgs index by @gcurtis in #885
  • [tests] Tests should not modify config by @mikeland86 in #883
  • [nix] Allow github flakes in devbox.json by @mikeland86 in #888
  • [cleanup] delete unused shell.nix and development.nix templates by @savil in #891
  • nixstore: add package for querying and resolving Nix store paths by @gcurtis in #884
  • chore: get config path from --config only by @hezhizhen in #889
  • [devbox] Make stack-examples using Postgres actually work by @savil in #874
  • [examples] enable stacks-django and rust examples to pass by @savil in #880
  • [example tests] generate "set -e" to exit scripts upon failure by @savil in #869
  • [shell] source the hooks file in shellrc by @savil in #890
  • bring back shell.nix, but keep development.nix deleted by @savil in #895
  • Bump nokogiri from 1.14.2 to 1.14.3 in /examples/stacks/rails/blog by @dependabot in #893
  • Multi-instance Process Compose by @Lagoja in #873
  • [devbox] add .envrc file to repo by @savil in #899
  • [lockfile] Add hidden lockfile for caching by @mikeland86 in #897
  • [perf] Only compute print-dev-env if needed by @mikeland86 in #898
  • [vscode-extension] Prep for version 0.0.6 release of vscode extension by @mohsenari in #903
  • [direnv] drop shell.nix, rely solely on devbox shell --print-env by @savil in #902
  • [examples tests] insert one second sleep for services to initialize by @savil in #904
  • [cicd] bump timeouts for cli-tests by @savil in #905
  • [CICD] stream go test output, and turn off DEVBOX_DEBUG for example tests by @savil in #906
  • [CICD] Don't run example tests on mac by @mikeland86 in #907
  • Use vars context for Sentry project + org by @Lagoja in #908
  • [direnv] run init-hooks in envrc, and generate shell files prior to gen envrc by @savil in #910
  • [devbox] add hidden all command to list all sub-commands (including hidden) by @savil in #901
  • [direnv] add quotations around devbox-shellenv-init-hook call by @savil in #913

New Contributors

  • @parviste made their first contribution in #857

Full Changelog: 0.4.6...0.4.7