#1911·asdf

asdf 0.16.0+ `asdf shell` alternative

Author: KieranPCreated Feb 7, 2025Updated Jul 31, 2026
Labelsenhancement

Is your feature request related to a problem? Please describe

Before 0.16.0, it was quite handy to be able to set a version for the current shell session. e.g. for no downtime ruby deployments, I could install the new ruby version, use asdf shell to switch to it without the current shell, and install the required rubygems via bundler before switching our app over to use it.

Describe the proposed solution

Reimplement asdf shell (or asdf set --shell) so that asdf versions can be overwritten for the current shell environment

Describe similar asdf features and why they are not sufficient

With asdf shell gone, the only solution is to use asdf set, which overwrites tool-versions, which means when the application next boots up or scales up automatically, it uses the changed ruby version which might not be ready yet.

Describe other workarounds you've considered

I guess a work around would be to make a new directory, create a tool-versions there, a copy over the Gemfile and Gemfile.lock, but this is cumbersome compared to a quick asdf shell ruby 3.4.1 (or using the new set, asdf set --shell ruby 3.4.1)