diff --git a/README.md b/README.md index 3307066..e2d4654 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ pairing with smart people at Hashrocket. For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186). -_1552 TILs and counting..._ +_1553 TILs and counting..._ --- @@ -1269,6 +1269,7 @@ _1552 TILs and counting..._ - [Iterate With An Offset Index](ruby/iterate-with-an-offset-index.md) - [Include Extra Context In A Honeybadger Notify](ruby/include-extra-context-in-a-honeybadger-notify.md) - [Ins And Outs Of Pry](ruby/ins-and-outs-of-pry.md) +- [Install Latest Version Of Ruby With asdf](ruby/install-latest-version-of-ruby-with-asdf.md) - [Invoking Rake Tasks Multiple Times](ruby/invoking-rake-tasks-multiple-times.md) - [IRB Has Built-In Benchmarking With Ruby 3](ruby/irb-has-built-in-benchmarking-with-ruby-3.md) - [Jump Out Of A Nested Context With Throw/Catch](ruby/jump-out-of-a-nested-context-with-throw-catch.md) diff --git a/ruby/install-latest-version-of-ruby-with-asdf.md b/ruby/install-latest-version-of-ruby-with-asdf.md new file mode 100644 index 0000000..f9b72cc --- /dev/null +++ b/ruby/install-latest-version-of-ruby-with-asdf.md @@ -0,0 +1,54 @@ +# Install Latest Version Of Ruby With asdf + +When I check the `asdf` Ruby plugin for known versions of Ruby: + +```bash +$ asdf list-all ruby | fzf +``` + +I don't find the latest (`3.4`). + +I need to update the plugin. A newer version of the plugin will know about +newer Ruby versions. + +```bash +$ asdf plugin-update ruby +``` + +Now, if I run the `list-all` command again, I'll find the version I'm looking +for — `3.4.1`. + +Now that `asdf` and I both know about the version to be installed, I can tell +`asdf` to install it: + +```bash +$ asdf install ruby 3.4.1 +``` + +Now, if I check the current Ruby version, I'll see that it is still set to some +other version. + +```bash +$ ruby --version +ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-darwin22] +``` + +I need to tell `asdf` to start using this newly installed version instead, +either globally or locally. + +```bash +$ # globally +$ asdf global ruby 3.4.1 +$ # or locally +$ asdf local ruby 3.4.1 +``` + +And now I'm all set: + +```bash +$ asdf current ruby +ruby 3.4.1 /Users/jbranchaud/.tool-versions + +$ ruby --version +ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x86_64-darwin22] +```