From 9e2a72a666065deca164d8219cced80d0c0cd19f Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Sun, 26 Apr 2026 23:32:02 +0200 Subject: [PATCH 01/18] Add TruffleRuby and TruffleRuby GraalVM 34.0.1 --- share/ruby-build/truffleruby+graalvm-34.0.1 | 16 ++++++++++++++++ share/ruby-build/truffleruby-34.0.1 | 16 ++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 share/ruby-build/truffleruby+graalvm-34.0.1 create mode 100644 share/ruby-build/truffleruby-34.0.1 diff --git a/share/ruby-build/truffleruby+graalvm-34.0.1 b/share/ruby-build/truffleruby+graalvm-34.0.1 new file mode 100644 index 00000000..67357685 --- /dev/null +++ b/share/ruby-build/truffleruby+graalvm-34.0.1 @@ -0,0 +1,16 @@ +platform="$(uname -s)-$(uname -m)" +case $platform in +Linux-x86_64) + install_package "truffleruby+graalvm-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-jvm-34.0.1-linux-amd64.tar.gz#2fb0ad7964f635cdf47a9b1a238aaa377d1eb18ddd12c0846d525f7b82fac525" truffleruby + ;; +Linux-aarch64) + install_package "truffleruby+graalvm-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-jvm-34.0.1-linux-aarch64.tar.gz#f72d631d265cb6b2cac87169203eee4bfd3a61e75b8d7fd3cc8f383b8b701854" truffleruby + ;; +Darwin-arm64) + install_package "truffleruby+graalvm-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-jvm-34.0.1-macos-aarch64.tar.gz#1d14a4186e718a3f52682a771b9796c594ddf664c2eb9d24dba1abff7d973fd3" truffleruby + ;; +*) + colorize 1 "Unsupported platform: $platform" + return 1 + ;; +esac diff --git a/share/ruby-build/truffleruby-34.0.1 b/share/ruby-build/truffleruby-34.0.1 new file mode 100644 index 00000000..13c329fa --- /dev/null +++ b/share/ruby-build/truffleruby-34.0.1 @@ -0,0 +1,16 @@ +platform="$(uname -s)-$(uname -m)" +case $platform in +Linux-x86_64) + install_package "truffleruby-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-34.0.1-linux-amd64.tar.gz#15fb3c5bb6d2917a2e5d08497f62586d262cddd65c9d251f098f6b568b33a8f7" truffleruby + ;; +Linux-aarch64) + install_package "truffleruby-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-34.0.1-linux-aarch64.tar.gz#10ed8310addb41782d92ce44e1ec9b2865b65f1c8d7c4ce489d6e84854d0bca5" truffleruby + ;; +Darwin-arm64) + install_package "truffleruby-34.0.1" "https://github.com/truffleruby/truffleruby/releases/download/graal-34.0.1/truffleruby-34.0.1-macos-aarch64.tar.gz#7a1404751b88aa49686e0787eafc9695d67ac3925d9d2bfdb881a4e5258842f3" truffleruby + ;; +*) + colorize 1 "Unsupported platform: $platform" + return 1 + ;; +esac From f723aa7bf027dc714784bc8de421248565e66649 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Sun, 26 Apr 2026 23:37:45 +0200 Subject: [PATCH 02/18] ruby-build 20260426 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index accf526a..68a46af5 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -16,7 +16,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260422" +RUBY_BUILD_VERSION="20260426" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index c5a9b365..3c1bb8f1 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2024-09-24 +.\" Date: 2024-09-23 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260422 +.\" Source: ruby-build 20260426 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2024-09-24" "ruby\-build 20260422" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2024-09-23" "ruby\-build 20260426" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From 20abbb0618fd0ca1c2be946170d82fe01b74b65a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Wed, 29 Apr 2026 17:18:23 +0200 Subject: [PATCH 03/18] Add mruby-4.0.0 --- share/ruby-build/mruby-4.0.0 | 1 + 1 file changed, 1 insertion(+) create mode 100644 share/ruby-build/mruby-4.0.0 diff --git a/share/ruby-build/mruby-4.0.0 b/share/ruby-build/mruby-4.0.0 new file mode 100644 index 00000000..a493bb5e --- /dev/null +++ b/share/ruby-build/mruby-4.0.0 @@ -0,0 +1 @@ +install_package "mruby-4.0.0" "https://github.com/mruby/mruby/archive/4.0.0.tar.gz#e2ea271dbed14e9f2b33df773ae447b747dbc242ce2675022c0a57efea85a7b4" mruby From 92d57fdbb64cb45e0b7e1ca2369e8bd8d004986e Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Fri, 1 May 2026 12:25:11 +0200 Subject: [PATCH 04/18] Support building with version prefix (#2610) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Support building with version prefix Commonly in CI pipelines and other scripts, users may want to install the latest from a specific series, e.g. `3.4` or `jruby-10.0`. ```bash $ bin/ruby-build 3.4 /tmp/3.4 ... Downloading ruby-3.4.9.tar.gz... $ bin/ruby-build 4.0 /tmp/4.0 ... Downloading ruby-4.0.2.tar.gz... ``` Also support `--resolve`: ```bash $ bin/ruby-build --resolve 3.4 3.4.9 ``` * Improve version name resolution from prefix - `ruby-build --resolve` now prints canonical definition names, always stripping the "ruby-" prefix from output (e.g. "ruby-3.4" => "3.4.9"). - Fix sorting versions so that "jruby" correctly resolves to "jruby-10.x" instead of to "jruby-9.x". - Support bare "ruby" argument to select the latest CRuby version, since that was already possible for "jruby", "mruby", et al. - Case-normalize version inputs so that arguments like "JRuby" or "TruffleRuby" resolve to their lowercase definitions. - Simplify definition file lookup: all code paths now go through resolve_version. - Restore the named-pipe + `--dir` check to correctly abort early. - Update README and man page: bump Ruby version numbers in examples, add Ruby implementations section, document the `--resolve` option. * Clarify what ruby-build considers to be "latest" Ruby version * Print usage error message if `--resolve` wasn't passed an argument --------- Co-authored-by: Mislav Marohnić --- README.md | 36 ++++++++- bin/rbenv-install | 8 +- bin/ruby-build | 90 ++++++++++++++++------- share/man/man1/ruby-build.1 | 121 ++++++++++++++++++++++++++++--- share/man/man1/ruby-build.1.adoc | 57 ++++++++++++--- test/build.bats | 24 ++++++ test/definitions.bats | 95 ++++++++++++++++++++++++ test/rbenv.bats | 22 +++--- 8 files changed, 394 insertions(+), 59 deletions(-) diff --git a/README.md b/README.md index c0a3f16c..7581776e 100644 --- a/README.md +++ b/README.md @@ -42,11 +42,13 @@ PREFIX=/usr/local ./ruby-build-*/install.sh # As a standalone program $ ruby-build --list # lists latest stable releases for each Ruby $ ruby-build --definitions # lists all definitions, including outdated ones -$ ruby-build 3.2.2 ~/.rubies/ruby-3.2.2 # installs Ruby 3.2.2 -$ ruby-build -d ruby-3.2.2 ~/.rubies # alternate form for the previous example +$ ruby-build 3.4.9 ~/.rubies/ruby-3.4.9 # installs Ruby 3.4.9 +$ ruby-build -d ruby-3.4.9 ~/.rubies # alternate form for the previous example +$ ruby-build -d ruby-3.4 ~/.rubies # installs latest Ruby 3.4.x # As an rbenv plugin -$ rbenv install 3.2.2 # installs Ruby 3.2.2 to ~/.rbenv/versions/3.2.2 +$ rbenv install 3.4.9 # installs Ruby 3.4.9 to ~/.rbenv/versions/3.4.9 +$ rbenv install 3 # installs latest Ruby 3.x ``` > [!WARNING] @@ -61,6 +63,28 @@ Basically, what ruby-build does when installing a Ruby version is this: Depending on the context, ruby-build does a little bit more than the above: for example, it will try to link Ruby to the appropriate OpenSSL version, even if that means downloading and compiling OpenSSL itself; it will discover and link to Homebrew-installed instances of some libraries like libyaml and readline, etc. +### Ruby versions + +When listing "latest" Ruby versions, such as in `ruby-build --list` output, ruby-build only knows of Ruby versions that are bundled with this project. That means that when a new Ruby version comes out, ruby-build will not know about it immediately— you will have to upgrade ruby-build before you can use it to install the new Ruby version. This is because ruby-build bundles [definition files](#custom-build-definitions) for each individual Ruby version. + +If it's important to you that your installer tool always consults remote resources to download the list of latest Ruby versions (without having to upgrade the tool itself), check out [ruby-install][] as an alternative to ruby-build. + +### Ruby implementations + +ruby-build ships with definitions for the following Ruby implementations, denoted by version prefixes in the `ruby-build --list` output: + +- [CRuby][]: listed in ruby-build as unprefixed version numbers in the `X.Y.Z` format. This is the main Ruby implementation that most people use and is also historically known as "MRI". ruby-build allows adding the `ruby-` prefix to CRuby version numbers for compatibility with other version managers. + +- `jruby`: [JRuby][] is a high-performance Ruby implementation with real threading built on top of the Java virtual machine (JVM). + +- `mruby`: [mruby][] is a lightweight, embeddable Ruby implementation for microcontrollers. + +- `picoruby`: [PicoRuby][] is an alternative mruby implementation for one-chip microcontrollers. + +- `truffleruby`: The Native standalone distribution of [TruffleRuby][], an implementation of Ruby on top of GraalVM's Truffle framework. + +- `truffleruby+graalvm`: The JVM standalone distribution of TruffleRuby. + ### Advanced Usage #### Custom Build Definitions @@ -197,3 +221,9 @@ Be sure to include the full build log for build failures. [wiki]: https://github.com/rbenv/ruby-build/wiki [build-env]: https://github.com/rbenv/ruby-build/wiki#suggested-build-environment [issue tracker]: https://github.com/rbenv/ruby-build/issues + [cruby]: https://www.ruby-lang.org/ + [truffleruby]: https://truffleruby.dev/ + [picoruby]: https://github.com/picoruby/picoruby#readme + [mruby]: https://mruby.org/ + [jruby]: https://www.jruby.org/ + [ruby-install]: https://github.com/postmodern/ruby-install#readme diff --git a/bin/rbenv-install b/bin/rbenv-install index b5f47800..017daaa4 100755 --- a/bin/rbenv-install +++ b/bin/rbenv-install @@ -134,8 +134,6 @@ done [ "${#ARGUMENTS[@]}" -le 1 ] || usage 1 >&2 -unset VERSION_NAME - # The first argument contains the definition to install. If the # argument is missing, try to install whatever local app-specific # version is specified by rbenv. Show usage instructions if a local @@ -144,6 +142,12 @@ DEFINITION="${ARGUMENTS[0]}" [ -n "$DEFINITION" ] || DEFINITION="$(rbenv-local 2>/dev/null || true)" [ -n "$DEFINITION" ] || usage 1 >&2 +if VERSION_NAME="$(ruby-build --resolve "$DEFINITION")"; then + DEFINITION="$VERSION_NAME" +else + unset VERSION_NAME +fi + # Define `before_install` and `after_install` functions that allow # plugin hooks to register a string of code for execution before or # after the installation process. diff --git a/bin/ruby-build b/bin/ruby-build index 68a46af5..b1e937eb 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -2,10 +2,12 @@ # # Usage: ruby-build [-dvpk] [-- ] # ruby-build {--list|--definitions} +# ruby-build --resolve # ruby-build --version # # -l, --list List latest stable releases for each Ruby # --definitions List all local definitions, including outdated ones +# --resolve Print the latest stable definition name matching a version prefix # --version Show version of ruby-build # # -d, --dir Install the Ruby in / instead of @@ -1411,6 +1413,36 @@ list_maintained_versions() { } | extract_latest_versions | sort_versions | uniq } +# resolve a version prefix to the exact version name for which exists a +# definition file. Example: "ruby-3" => "3.4.9" +resolve_version() { + local version="${1#ruby-}" + + # Look for an exact match first. + for DEFINITION_DIR in "${RUBY_BUILD_DEFINITIONS[@]}"; do + if [ -f "${DEFINITION_DIR}/${version}" ]; then + echo "$version" + return 0 + fi + done + + local grep_pattern="${version%.}" + if [ "$grep_pattern" = "ruby" ]; then + # Special case to select the latest CRuby. + grep_pattern="[0-9]" + else + grep_pattern="$(tr 'A-Z' 'a-z' <<<"${grep_pattern//./\\.}")" + fi + + version=$(list_definitions | \ + grep -e "^${grep_pattern}[-.]" | \ + grep -v -e '-rc[0-9]*$' -e '-preview[0-9]*$' -e '-dev$' | \ + tail -n 1) + + [ -n "$version" ] || return 1 + echo "$version" +} + extract_latest_versions() { # sort in this function looks redundunt but it is necessary # rbx-3.99 appears latest unless the sort @@ -1453,6 +1485,14 @@ for option in "${OPTIONS[@]}"; do "l" | "list") EARLY_EXIT=list_maintained_versions ;; + "resolve") + if [ "${#ARGUMENTS[*]}" -eq 1 ]; then + EARLY_EXIT=resolve_version + else + echo "ruby-build: '--resolve' needs an argument" >&2 + EARLY_EXIT=usage_error + fi + ;; "d" | "dir") APPEND_DEFINITION_TO_PREFIX=true ;; @@ -1503,12 +1543,9 @@ if [ "${#EXTRA_ARGUMENTS[@]}" -gt 0 ]; then RUBY_CONFIGURE_OPTS_ARRAY=("${EXTRA_ARGUMENTS[@]}") fi -if [ "$APPEND_DEFINITION_TO_PREFIX" = "true" ]; then - if [ -p "$DEFINITION_PATH" ]; then - echo "ruby-build: using named pipes in combination with \`--dir' is not possible" >&2 - EARLY_EXIT=usage_error - fi - PREFIX_PATH="$PREFIX_PATH/$(basename "$DEFINITION_PATH")" +if [[ "$APPEND_DEFINITION_TO_PREFIX" = "true" && -p "$DEFINITION_PATH" ]]; then + echo "ruby-build: using named pipes in combination with \`--dir' is not possible" >&2 + EARLY_EXIT=usage_error fi case "$EARLY_EXIT" in @@ -1521,6 +1558,10 @@ version | list_definitions | list_maintained_versions ) "$EARLY_EXIT" exit 0 ;; +resolve_version ) + resolve_version "${ARGUMENTS[0]}" || exit 1 + exit 0 + ;; usage_error ) echo >&2 usage 1 >&2 @@ -1533,30 +1574,29 @@ usage_error ) ;; esac +VERSION_NAME_PREFIX="" + # expand the argument to full path of the definition file if [[ ! -f "$DEFINITION_PATH" && ! -p "$DEFINITION_PATH" ]]; then - for DEFINITION_DIR in "${RUBY_BUILD_DEFINITIONS[@]}"; do - if [ -f "${DEFINITION_DIR}/${DEFINITION_PATH}" ]; then - DEFINITION_PATH="${DEFINITION_DIR}/${DEFINITION_PATH}" - break - fi - done - - # If the given definition is like ruby-X.Y.Z, search again with X.Y.Z - if [[ "$DEFINITION_PATH" =~ ^ruby-[0-9] ]]; then - DEFINITION_PATH="${DEFINITION_PATH#ruby-}" - for DEFINITION_DIR in "${RUBY_BUILD_DEFINITIONS[@]}"; do - if [ -f "${DEFINITION_DIR}/${DEFINITION_PATH}" ]; then - DEFINITION_PATH="${DEFINITION_DIR}/${DEFINITION_PATH}" - break - fi - done - fi - - if [ ! -f "$DEFINITION_PATH" ]; then + if ! VERSION_NAME="$(resolve_version "$DEFINITION_PATH")"; then echo "ruby-build: definition not found: ${DEFINITION_PATH}" >&2 exit 2 fi + + if [[ $DEFINITION_PATH == ruby-* && $VERSION_NAME != ruby-* ]]; then + VERSION_NAME_PREFIX="ruby-" + fi + + for DEFINITION_DIR in "${RUBY_BUILD_DEFINITIONS[@]}"; do + if [ -f "${DEFINITION_DIR}/${VERSION_NAME}" ]; then + DEFINITION_PATH="${DEFINITION_DIR}/${VERSION_NAME}" + break + fi + done +fi + +if [ "$APPEND_DEFINITION_TO_PREFIX" = "true" ]; then + PREFIX_PATH="$PREFIX_PATH/${VERSION_NAME_PREFIX}$(basename "$DEFINITION_PATH")" fi # normalize the argument diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index 3c1bb8f1..14d965ec 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2024-09-23 +.\" Date: 2026-05-01 .\" Manual: ruby-build Manual .\" Source: ruby-build 20260426 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2024-09-23" "ruby\-build 20260426" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260426" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 @@ -35,15 +35,14 @@ ruby\-build [\-dvpk] \fI\fP \fI\fP [\-\- \fI\fP +.br ruby\-build \-\-version .SH "DESCRIPTION" .sp ruby\-build downloads, compiles, and installs a Ruby version named by the \fIdefinition\fP argument into the location specified by \fIprefix\fP. .sp -The \fIdefinition\fP argument can optionally start with "ruby\-", in which case -it resolves to a CRuby that matches the version number that follows. -.sp The \fIdefinition\fP argument can be a path to a file on disk, in which case it is sourced into ruby\-build as a bash script. .sp @@ -53,6 +52,91 @@ will get forwarded to the \f(CR./configure\fP invocation. By default, all compile output is redirected to a log file at \f(CR$TMPDIR/ruby\-build.*.log\fP. Activate the verbose mode to skip the log file and print everything to standard streams. +.SH "RUBY VERSIONS" +.sp +When listing "latest" Ruby versions, such as in \f(CR\-\-list\fP output, +ruby\-build only knows of Ruby versions that are bundled with this project. +That means that when a new Ruby version comes out, ruby\-build will not +know about it immediately; you will have to upgrade ruby\-build before you +can use it to install the new Ruby version. +.SH "RUBY IMPLEMENTATIONS" +.sp +ruby\-build ships with definitions for the following Ruby implementations: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +CRuby, also known as "MRI": denoted by version numbers in form of "X.Y.Z". +This is the main Ruby implementation that most people use. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +"jruby": High\-performance Ruby implementation with real threading built +on top of the Java virtual machine (JVM). +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +"mruby": Lightweight Ruby for microcontrollers. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +"picoruby": Alternative mruby implementation for one\-chip microcontrollers. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +"truffleruby": The Native standalone distribution of TruffleRuby, an +implementation of Ruby on top of GraalVM\(cqs Truffle framework. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +. sp -1 +. IP \(bu 2.3 +.\} +"truffleruby+graalvm": The JVM standalone distribution of TruffleRuby. +.RE +.sp +The \fIdefinition\fP argument may optionally start with "ruby\-", in which case +it resolves to a CRuby that matches the version number that follows. The +\fIdefinition\fP argument may also be a name of one of the alternative Ruby +implementations, in which case the latest version of that implementation +will be installed. .SH "OPTIONS" .sp \fB\-l, \-\-list\fP @@ -65,6 +149,11 @@ List latest stable releases for each Ruby List all local definitions, including outdated ones .RE .sp +\fB\-\-resolve\fP +.RS 4 +Print the definition name of the latest stable Ruby version matching the \fIversion\fP argument +.RE +.sp \fB\-\-version\fP .RS 4 Show version of ruby\-build @@ -106,27 +195,37 @@ Install a Ruby version while tweaking some configuration options: .if n .RS 4 .nf .fam C -$ ruby\-build 3.2.2 /path/to/destination \-\- \-\-disable\-install\-doc \-\-with\-openssl\-dir=/opt/openssl +$ ruby\-build 3.4.9 /path/to/destination \-\- \-\-disable\-install\-doc \-\-with\-openssl\-dir=/opt/openssl .fam .fi .if n .RE .sp -Install a Ruby version to \f(CR~/.rubies/ruby\-3.2.2\fP: +Install a Ruby version to \f(CR~/.rubies/ruby\-3.4.9\fP: .sp .if n .RS 4 .nf .fam C -$ ruby\-build \-\-dir ruby\-3.2.2 ~/.rubies +$ ruby\-build \-\-dir ruby\-3.4.9 ~/.rubies .fam .fi .if n .RE .sp -Install a Ruby version to \f(CR~/.rbenv/versions/3.3.5\fP: +Install the latest Ruby 3.x version to \f(CR~/.rubies/ruby\-3.x.y\fP: .sp .if n .RS 4 .nf .fam C -$ ruby\-build \-\-dir 3.3.5 ~/.rbenv/versions +$ ruby\-build \-\-dir ruby\-3 ~/.rubies +.fam +.fi +.if n .RE +.sp +Install a Ruby version to \f(CR~/.rbenv/versions/3.3.11\fP: +.sp +.if n .RS 4 +.nf +.fam C +$ ruby\-build \-\-dir 3.3.11 ~/.rbenv/versions .fam .fi .if n .RE @@ -136,7 +235,7 @@ Usage as rbenv plugin, accomplishes the same as the previous example: .if n .RS 4 .nf .fam C -$ rbenv install 3.3.5 +$ rbenv install 3.3.11 .fam .fi .if n .RE diff --git a/share/man/man1/ruby-build.1.adoc b/share/man/man1/ruby-build.1.adoc index b579296e..3ee361a0 100644 --- a/share/man/man1/ruby-build.1.adoc +++ b/share/man/man1/ruby-build.1.adoc @@ -13,6 +13,7 @@ ruby-build - Download, compile, and install a version of Ruby ruby-build [-dvpk] __ __ [-- __...] + ruby-build {--list|--definitions} + +ruby-build --resolve __ + ruby-build --version == Description @@ -20,9 +21,6 @@ ruby-build --version ruby-build downloads, compiles, and installs a Ruby version named by the _definition_ argument into the location specified by _prefix_. -The _definition_ argument can optionally start with "ruby-", in which case -it resolves to a CRuby that matches the version number that follows. - The _definition_ argument can be a path to a file on disk, in which case it is sourced into ruby-build as a bash script. @@ -33,6 +31,39 @@ By default, all compile output is redirected to a log file at `$TMPDIR/ruby-build.*.log`. Activate the verbose mode to skip the log file and print everything to standard streams. +== Ruby versions + +When listing "latest" Ruby versions, such as in `--list` output, +ruby-build only knows of Ruby versions that are bundled with this project. +That means that when a new Ruby version comes out, ruby-build will not +know about it immediately; you will have to upgrade ruby-build before you +can use it to install the new Ruby version. + +== Ruby implementations + +ruby-build ships with definitions for the following Ruby implementations: + +- CRuby, also known as "MRI": denoted by version numbers in form of "X.Y.Z". + This is the main Ruby implementation that most people use. + +- "jruby": High-performance Ruby implementation with real threading built + on top of the Java virtual machine (JVM). + +- "mruby": Lightweight Ruby for microcontrollers. + +- "picoruby": Alternative mruby implementation for one-chip microcontrollers. + +- "truffleruby": The Native standalone distribution of TruffleRuby, an + implementation of Ruby on top of GraalVM's Truffle framework. + +- "truffleruby+graalvm": The JVM standalone distribution of TruffleRuby. + +The _definition_ argument may optionally start with "ruby-", in which case +it resolves to a CRuby that matches the version number that follows. The +_definition_ argument may also be a name of one of the alternative Ruby +implementations, in which case the latest version of that implementation +will be installed. + == Options *-l, --list*:: @@ -41,6 +72,9 @@ and print everything to standard streams. *--definitions*:: List all local definitions, including outdated ones +*--resolve*:: + Print the definition name of the latest stable Ruby version matching the _version_ argument + *--version*:: Show version of ruby-build @@ -66,22 +100,27 @@ and print everything to standard streams. Install a Ruby version while tweaking some configuration options: ---- -$ ruby-build 3.2.2 /path/to/destination -- --disable-install-doc --with-openssl-dir=/opt/openssl +$ ruby-build 3.4.9 /path/to/destination -- --disable-install-doc --with-openssl-dir=/opt/openssl ---- -Install a Ruby version to `~/.rubies/ruby-3.2.2`: +Install a Ruby version to `~/.rubies/ruby-3.4.9`: ---- -$ ruby-build --dir ruby-3.2.2 ~/.rubies +$ ruby-build --dir ruby-3.4.9 ~/.rubies ---- -Install a Ruby version to `~/.rbenv/versions/3.3.5`: +Install the latest Ruby 3.x version to `~/.rubies/ruby-3.x.y`: ---- -$ ruby-build --dir 3.3.5 ~/.rbenv/versions +$ ruby-build --dir ruby-3 ~/.rubies +---- + +Install a Ruby version to `~/.rbenv/versions/3.3.11`: +---- +$ ruby-build --dir 3.3.11 ~/.rbenv/versions ---- Usage as rbenv plugin, accomplishes the same as the previous example: ---- -$ rbenv install 3.3.5 +$ rbenv install 3.3.11 ---- == Environment Variables diff --git a/test/build.bats b/test/build.bats index 87a253d7..4a867845 100755 --- a/test/build.bats +++ b/test/build.bats @@ -787,6 +787,30 @@ make install OUT } +@test "nested install destination with ruby prefix and version prefix" { + cached_tarball "ruby-3.2.45" configure + + stub_repeated brew false + stub_make_install + + mkdir -p "$TMP"/definitions + cat > "$TMP"/definitions/3.2.45 < "${TMP}/definitions/1.8.6" + echo false > "${TMP}/definitions/1.9.3" + echo true > "${TMP}/definitions/1.9.10" + echo false > "${TMP}/definitions/1.90.0" + echo false > "${TMP}/definitions/2.0.0" + + run bin/ruby-build "1.9" "${TMP}/install" + assert_success "" +} + +@test "resolve failure" { + run bin/ruby-build --resolve "doesntexist" + assert_failure "" +} + +@test "resolve definition by version prefix" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/1.8.6" + touch "${TMP}/definitions/1.9.3" + touch "${TMP}/definitions/1.9.10" + touch "${TMP}/definitions/1.90.0" + touch "${TMP}/definitions/2.0.0" + + run bin/ruby-build --resolve "1.9" + assert_success "1.9.10" +} + +@test "resolve definition by exact match" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/3.2.1" + + run bin/ruby-build --resolve "3.2.1" + assert_success "3.2.1" +} + +@test "resolve definition by exact match and ruby prefix" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/3.2.1" + + run bin/ruby-build --resolve "ruby-3.2.1" + assert_success "3.2.1" +} + +@test "resolve definition with ruby prefix" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/1.8.6" + touch "${TMP}/definitions/1.9.3" + touch "${TMP}/definitions/1.9.10" + touch "${TMP}/definitions/1.90.0" + touch "${TMP}/definitions/2.0.0" + + run bin/ruby-build --resolve "ruby-1.9" + assert_success "1.9.10" +} + +@test "resolve definition by implementation name" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/fooruby-1.8.6" + touch "${TMP}/definitions/fooruby-1.9.3" + touch "${TMP}/definitions/1.9.10" + touch "${TMP}/definitions/1.90.0" + touch "${TMP}/definitions/2.0.0" + + run bin/ruby-build --resolve "FooRuby" + assert_success "fooruby-1.9.3" +} + +@test "resolve definition by implementation name and version" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/foo-1.8.6" + touch "${TMP}/definitions/foo-1.9.3" + touch "${TMP}/definitions/1.9.10" + touch "${TMP}/definitions/1.90.0" + touch "${TMP}/definitions/2.0.0" + + run bin/ruby-build --resolve "foo-1.8" + assert_success "foo-1.8.6" +} + @test "installing nonexistent definition" { run ruby-build "nonexistent" "${TMP}/install" assert [ "$status" -eq 2 ] diff --git a/test/rbenv.bats b/test/rbenv.bats index 2f52961a..e5bea4c8 100644 --- a/test/rbenv.bats +++ b/test/rbenv.bats @@ -16,7 +16,7 @@ stub_ruby_build() { } @test "install proper" { - stub_ruby_build 'echo ruby-build "$@"' + stub_ruby_build 'echo 2.1.2' 'echo ruby-build "$@"' run rbenv-install 2.1.2 assert_success "ruby-build 2.1.2 ${RBENV_ROOT}/versions/2.1.2" @@ -27,7 +27,7 @@ stub_ruby_build() { } @test "install with flags" { - stub_ruby_build 'echo "ruby-build $(inspect_args "$@")"' + stub_ruby_build 'echo 2.1.2' 'echo "ruby-build $(inspect_args "$@")"' run rbenv-install -kpv 2.1.2 -- --with-configure-opt="hello world" assert_success "ruby-build --keep --verbose --patch 2.1.2 ${RBENV_ROOT}/versions/2.1.2 -- \"--with-configure-opt=hello world\"" @@ -39,7 +39,7 @@ stub_ruby_build() { @test "suggest running rbenv global after install" { rm -rf "$RBENV_ROOT/version" - stub_ruby_build 'echo ruby-build "$@"' + stub_ruby_build 'echo 2.1.2' 'echo ruby-build "$@"' run rbenv-install 2.1.2 assert_success <&2 && exit 2' \ + stub_ruby_build 'exit 1' \ + 'echo ERROR >&2 && exit 2' \ "--definitions : echo 1.8.7 1.9.3-p0 1.9.3-p194 2.1.2 | tr ' ' $'\\n'" run rbenv-install 1.9.3 @@ -127,10 +128,11 @@ OUT @test "Homebrew upgrade instructions" { stub brew "--prefix : echo '${BATS_TEST_DIRNAME%/*}'" - stub_ruby_build 'echo ERROR >&2 && exit 2' \ + stub_ruby_build 'exit 1' \ + 'echo ERROR >&2 && exit 2' \ "--definitions : true" - run rbenv-install 1.9.3 + run rbenv-install 1.9.10 assert_failure assert_output < Date: Fri, 1 May 2026 12:26:22 +0200 Subject: [PATCH 05/18] ruby-build 20260501 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index b1e937eb..004225a4 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260426" +RUBY_BUILD_VERSION="20260501" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index 14d965ec..000464e7 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -4,10 +4,10 @@ .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-05-01 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260426 +.\" Source: ruby-build 20260501 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260426" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260501" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From e98dffb562d295356eb1233a8c111c47d37c9bca Mon Sep 17 00:00:00 2001 From: Akira Matsuda Date: Sun, 3 May 2026 06:57:49 +0900 Subject: [PATCH 06/18] Fix definition lookup for ruby-prefixed names like `ruby-dev` `resolve_version` strips the leading `ruby-` from its argument and then only looks for the stripped form in the definitions directory. For canonical definitions whose filename retains the `ruby-` prefix (currently `ruby-dev`) the exact-match step searches for `dev`, which does not exist, and the grep fallback's `^dev[-.]` anchor also misses the `ruby-dev` line in the definitions list. Result: `ruby-build ruby-dev` reports "definition not found" even though the file is shipped. Try the original (unstripped) argument first in the exact-match loop, then fall back to the stripped form. Numeric-version inputs (`ruby-3.4.9`, `3.4`, `ruby-3.4`) and other implementations (`mruby-dev`, `jruby-dev`) are unaffected because their existing code paths still match. Regression introduced in #2610. --- bin/ruby-build | 4 ++++ test/definitions.bats | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/bin/ruby-build b/bin/ruby-build index 004225a4..b0a2b7e0 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -1420,6 +1420,10 @@ resolve_version() { # Look for an exact match first. for DEFINITION_DIR in "${RUBY_BUILD_DEFINITIONS[@]}"; do + if [ -f "${DEFINITION_DIR}/$1" ]; then + echo "$1" + return 0 + fi if [ -f "${DEFINITION_DIR}/${version}" ]; then echo "$version" return 0 diff --git a/test/definitions.bats b/test/definitions.bats index c507d79b..5bd7283b 100644 --- a/test/definitions.bats +++ b/test/definitions.bats @@ -113,6 +113,16 @@ NUM_DEFINITIONS="$(ls "$BATS_TEST_DIRNAME"/../share/ruby-build | wc -l)" assert_success "3.2.1" } +@test "resolve definition by exact match for ruby-prefixed name" { + export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" + mkdir -p "${TMP}/definitions" + + touch "${TMP}/definitions/ruby-dev" + + run bin/ruby-build --resolve "ruby-dev" + assert_success "ruby-dev" +} + @test "resolve definition with ruby prefix" { export RUBY_BUILD_DEFINITIONS="${TMP}/definitions" mkdir -p "${TMP}/definitions" From 17c061e067e43578ebe4c8be7825fe28aedea7c1 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Sun, 3 May 2026 16:14:36 +0200 Subject: [PATCH 07/18] ruby-build 20260503 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index b0a2b7e0..95682d22 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260501" +RUBY_BUILD_VERSION="20260503" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index 000464e7..ffcd8d49 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2026-05-01 +.\" Date: 2026-05-03 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260501 +.\" Source: ruby-build 20260503 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260501" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-03" "ruby\-build 20260503" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From f2eeb8802b3201559ce115b4c39b505f4344ee59 Mon Sep 17 00:00:00 2001 From: Camden Narzt Date: Sat, 9 May 2026 11:09:11 +0200 Subject: [PATCH 08/18] Mark Ruby 3.2 as EOL Ruby 3.2 reached End of Life on 01 April 2026 --- share/ruby-build/3.2-dev | 2 +- share/ruby-build/3.2.0 | 2 +- share/ruby-build/3.2.0-preview1 | 2 +- share/ruby-build/3.2.0-preview2 | 2 +- share/ruby-build/3.2.0-preview3 | 2 +- share/ruby-build/3.2.0-rc1 | 2 +- share/ruby-build/3.2.1 | 2 +- share/ruby-build/3.2.10 | 2 +- share/ruby-build/3.2.11 | 2 +- share/ruby-build/3.2.2 | 2 +- share/ruby-build/3.2.3 | 2 +- share/ruby-build/3.2.4 | 2 +- share/ruby-build/3.2.5 | 2 +- share/ruby-build/3.2.6 | 2 +- share/ruby-build/3.2.7 | 2 +- share/ruby-build/3.2.8 | 2 +- share/ruby-build/3.2.9 | 2 +- 17 files changed, 17 insertions(+), 17 deletions(-) diff --git a/share/ruby-build/3.2-dev b/share/ruby-build/3.2-dev index 61ec6f3e..370ef4cb 100644 --- a/share/ruby-build/3.2-dev +++ b/share/ruby-build/3.2-dev @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_git "ruby-3.2-dev" "https://github.com/ruby/ruby.git" "ruby_3_2" autoconf enable_shared standard_install_with_bundled_gems +install_git "ruby-3.2-dev" "https://github.com/ruby/ruby.git" "ruby_3_2" autoconf warn_eol enable_shared standard_install_with_bundled_gems diff --git a/share/ruby-build/3.2.0 b/share/ruby-build/3.2.0 index 6f054d48..b01ce018 100644 --- a/share/ruby-build/3.2.0 +++ b/share/ruby-build/3.2.0 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.0" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0.tar.gz#daaa78e1360b2783f98deeceb677ad900f3a36c0ffa6e2b6b19090be77abc272" enable_shared standard +install_package "ruby-3.2.0" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0.tar.gz#daaa78e1360b2783f98deeceb677ad900f3a36c0ffa6e2b6b19090be77abc272" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.0-preview1 b/share/ruby-build/3.2.0-preview1 index 2ea4525d..7f3fa8eb 100644 --- a/share/ruby-build/3.2.0-preview1 +++ b/share/ruby-build/3.2.0-preview1 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.0-preview1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview1.tar.gz#6946b966c561d5dfc2a662b88e8211be30bfffc7bb2f37ce3cc62d6c46a0b818" enable_shared standard +install_package "ruby-3.2.0-preview1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview1.tar.gz#6946b966c561d5dfc2a662b88e8211be30bfffc7bb2f37ce3cc62d6c46a0b818" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.0-preview2 b/share/ruby-build/3.2.0-preview2 index 78f50470..faaee33b 100644 --- a/share/ruby-build/3.2.0-preview2 +++ b/share/ruby-build/3.2.0-preview2 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.0-preview2" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview2.tar.gz#8a78fd7a221b86032f96f25c1d852954c94d193b9d21388a9b434e160b7ed891" enable_shared standard +install_package "ruby-3.2.0-preview2" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview2.tar.gz#8a78fd7a221b86032f96f25c1d852954c94d193b9d21388a9b434e160b7ed891" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.0-preview3 b/share/ruby-build/3.2.0-preview3 index 61aef67b..269f7c02 100644 --- a/share/ruby-build/3.2.0-preview3 +++ b/share/ruby-build/3.2.0-preview3 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.0-preview3" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview3.tar.gz#c041d1488e62730d3a10dbe7cf7a3b3e4268dc867ec20ec991e7d16146640487" enable_shared standard +install_package "ruby-3.2.0-preview3" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-preview3.tar.gz#c041d1488e62730d3a10dbe7cf7a3b3e4268dc867ec20ec991e7d16146640487" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.0-rc1 b/share/ruby-build/3.2.0-rc1 index 3bb0c4c5..9dcbe059 100644 --- a/share/ruby-build/3.2.0-rc1 +++ b/share/ruby-build/3.2.0-rc1 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.0-rc1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-rc1.tar.gz#3bb9760c1ac1b66416aaa4899809f6ccd010e57038eaaeca19a383fd56275dac" enable_shared standard +install_package "ruby-3.2.0-rc1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0-rc1.tar.gz#3bb9760c1ac1b66416aaa4899809f6ccd010e57038eaaeca19a383fd56275dac" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.1 b/share/ruby-build/3.2.1 index 1a3d4bee..75e6d46f 100644 --- a/share/ruby-build/3.2.1 +++ b/share/ruby-build/3.2.1 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.1.tar.gz#13d67901660ee3217dbd9dd56059346bd4212ce64a69c306ef52df64935f8dbd" enable_shared standard +install_package "ruby-3.2.1" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.1.tar.gz#13d67901660ee3217dbd9dd56059346bd4212ce64a69c306ef52df64935f8dbd" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.10 b/share/ruby-build/3.2.10 index f72ded84..b37dea9c 100644 --- a/share/ruby-build/3.2.10 +++ b/share/ruby-build/3.2.10 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.10" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.10.tar.gz#880acb05e08da8c559c56a13e512bae1b472da67c72ebb750c765f9c2134e689" enable_shared standard +install_package "ruby-3.2.10" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.10.tar.gz#880acb05e08da8c559c56a13e512bae1b472da67c72ebb750c765f9c2134e689" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.11 b/share/ruby-build/3.2.11 index 3004b411..33e19b75 100644 --- a/share/ruby-build/3.2.11 +++ b/share/ruby-build/3.2.11 @@ -1,2 +1,2 @@ install_package "openssl-3.0.19" "https://github.com/openssl/openssl/releases/download/openssl-3.0.19/openssl-3.0.19.tar.gz#fa5a4143b8aae18be53ef2f3caf29a2e0747430b8bc74d32d88335b94ab63072" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.11" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.11.tar.gz#b3eeabd6636f334531db3ffdc3229eb05e524740e6c84fdc043720573cf2f8b2" enable_shared standard +install_package "ruby-3.2.11" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.11.tar.gz#b3eeabd6636f334531db3ffdc3229eb05e524740e6c84fdc043720573cf2f8b2" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.2 b/share/ruby-build/3.2.2 index 003e9998..9cee4d21 100644 --- a/share/ruby-build/3.2.2 +++ b/share/ruby-build/3.2.2 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.2" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz#96c57558871a6748de5bc9f274e93f4b5aad06cd8f37befa0e8d94e7b8a423bc" enable_shared standard +install_package "ruby-3.2.2" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz#96c57558871a6748de5bc9f274e93f4b5aad06cd8f37befa0e8d94e7b8a423bc" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.3 b/share/ruby-build/3.2.3 index 9926da56..ec1999e7 100644 --- a/share/ruby-build/3.2.3 +++ b/share/ruby-build/3.2.3 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.3" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.gz#af7f1757d9ddb630345988139211f1fd570ff5ba830def1cc7c468ae9b65c9ba" enable_shared standard +install_package "ruby-3.2.3" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.3.tar.gz#af7f1757d9ddb630345988139211f1fd570ff5ba830def1cc7c468ae9b65c9ba" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.4 b/share/ruby-build/3.2.4 index d2bfe2db..49f1857d 100644 --- a/share/ruby-build/3.2.4 +++ b/share/ruby-build/3.2.4 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.4" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.tar.gz#c72b3c5c30482dca18b0f868c9075f3f47d8168eaf626d4e682ce5b59c858692" enable_shared standard +install_package "ruby-3.2.4" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.4.tar.gz#c72b3c5c30482dca18b0f868c9075f3f47d8168eaf626d4e682ce5b59c858692" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.5 b/share/ruby-build/3.2.5 index b8907d63..5f70dcde 100644 --- a/share/ruby-build/3.2.5 +++ b/share/ruby-build/3.2.5 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.5" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.gz#ef0610b498f60fb5cfd77b51adb3c10f4ca8ed9a17cb87c61e5bea314ac34a16" enable_shared standard +install_package "ruby-3.2.5" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.5.tar.gz#ef0610b498f60fb5cfd77b51adb3c10f4ca8ed9a17cb87c61e5bea314ac34a16" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.6 b/share/ruby-build/3.2.6 index 0d6e1c6c..8ef73f7d 100644 --- a/share/ruby-build/3.2.6 +++ b/share/ruby-build/3.2.6 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.6" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.6.tar.gz#d9cb65ecdf3f18669639f2638b63379ed6fbb17d93ae4e726d4eb2bf68a48370" enable_shared standard +install_package "ruby-3.2.6" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.6.tar.gz#d9cb65ecdf3f18669639f2638b63379ed6fbb17d93ae4e726d4eb2bf68a48370" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.7 b/share/ruby-build/3.2.7 index 0be2ac82..e7358bb4 100644 --- a/share/ruby-build/3.2.7 +++ b/share/ruby-build/3.2.7 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.7" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.7.tar.gz#8488fa620ff0333c16d437f2b890bba3b67f8745fdecb1472568a6114aad9741" enable_shared standard +install_package "ruby-3.2.7" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.7.tar.gz#8488fa620ff0333c16d437f2b890bba3b67f8745fdecb1472568a6114aad9741" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.8 b/share/ruby-build/3.2.8 index 4b993944..78abf0f0 100644 --- a/share/ruby-build/3.2.8 +++ b/share/ruby-build/3.2.8 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.8" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.8.tar.gz#77acdd8cfbbe1f8e573b5e6536e03c5103df989dc05fa68c70f011833c356075" enable_shared standard +install_package "ruby-3.2.8" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.8.tar.gz#77acdd8cfbbe1f8e573b5e6536e03c5103df989dc05fa68c70f011833c356075" warn_eol enable_shared standard diff --git a/share/ruby-build/3.2.9 b/share/ruby-build/3.2.9 index f1a7203c..40948494 100644 --- a/share/ruby-build/3.2.9 +++ b/share/ruby-build/3.2.9 @@ -1,2 +1,2 @@ install_package "openssl-3.0.18" "https://github.com/openssl/openssl/releases/download/openssl-3.0.18/openssl-3.0.18.tar.gz#d80c34f5cf902dccf1f1b5df5ebb86d0392e37049e5d73df1b3abae72e4ffe8b" openssl --if needs_openssl:1.0.2-3.x.x -install_package "ruby-3.2.9" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.9.tar.gz#abbad98db9aeb152773b0d35868e50003b8c467f3d06152577c4dfed9d88ed2a" enable_shared standard +install_package "ruby-3.2.9" "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.9.tar.gz#abbad98db9aeb152773b0d35868e50003b8c467f3d06152577c4dfed9d88ed2a" warn_eol enable_shared standard From 60d0948d0666e615b5e9f9583784b5f7718ff175 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Mon, 11 May 2026 21:27:21 +0000 Subject: [PATCH 09/18] Added 4.0.4 with OpenSSL 3.0.20 --- share/ruby-build/4.0.4 | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 share/ruby-build/4.0.4 diff --git a/share/ruby-build/4.0.4 b/share/ruby-build/4.0.4 new file mode 100644 index 00000000..33de3159 --- /dev/null +++ b/share/ruby-build/4.0.4 @@ -0,0 +1,2 @@ +install_package "openssl-3.0.20" "https://github.com/openssl/openssl/releases/download/openssl-3.0.20/openssl-3.0.20.tar.gz#c80a01dfc70ece4dc21168932c37739042d404d46ccc81a5986dd75314ecda6f" openssl --if needs_openssl:1.1.1-3.x.x +install_package "ruby-4.0.4" "https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.4.tar.gz#f35f6edfa3dabb3f723f9d0cf1906c6512ae77f4e412ab1e68cc6e91d230fa80" enable_shared standard From 7e6d7f165330bc49ba4a1184da74c20662ce9e1b Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Tue, 12 May 2026 09:31:59 +0900 Subject: [PATCH 10/18] ruby-build 20260512 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index 95682d22..bcd505d2 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260503" +RUBY_BUILD_VERSION="20260512" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index ffcd8d49..a215747d 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2026-05-03 +.\" Date: 2026-05-07 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260503 +.\" Source: ruby-build 20260512 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-03" "ruby\-build 20260503" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-07" "ruby\-build 20260512" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From ef6d2ba03dbee6f59a2cb67729bfc0bdd4619895 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Wed, 20 May 2026 00:30:01 +0000 Subject: [PATCH 11/18] Added 4.0.5 with OpenSSL 3.0.20 --- share/ruby-build/4.0.5 | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 share/ruby-build/4.0.5 diff --git a/share/ruby-build/4.0.5 b/share/ruby-build/4.0.5 new file mode 100644 index 00000000..73255a57 --- /dev/null +++ b/share/ruby-build/4.0.5 @@ -0,0 +1,2 @@ +install_package "openssl-3.0.20" "https://github.com/openssl/openssl/releases/download/openssl-3.0.20/openssl-3.0.20.tar.gz#c80a01dfc70ece4dc21168932c37739042d404d46ccc81a5986dd75314ecda6f" openssl --if needs_openssl:1.1.1-3.x.x +install_package "ruby-4.0.5" "https://cache.ruby-lang.org/pub/ruby/4.0/ruby-4.0.5.tar.gz#7d6149079a63f8ae1d326c9fa65c6019ba2dc3155eae7b39159817911c88958e" enable_shared standard From 3671c9ef15d58759311faba68c947d90b2d5980e Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 20 May 2026 09:35:40 +0900 Subject: [PATCH 12/18] ruby-build 20260520 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index bcd505d2..95abc5bd 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260512" +RUBY_BUILD_VERSION="20260520" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index a215747d..32520aa3 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -4,10 +4,10 @@ .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-05-07 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260512 +.\" Source: ruby-build 20260520 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-07" "ruby\-build 20260512" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-07" "ruby\-build 20260520" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From 84022feeb41e1d10d7c2e0302391d3605f6d6801 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Mon, 8 Jun 2026 13:18:43 -0500 Subject: [PATCH 13/18] Add JRuby 9.4.15.0 --- share/ruby-build/jruby-9.4.15.0 | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 share/ruby-build/jruby-9.4.15.0 diff --git a/share/ruby-build/jruby-9.4.15.0 b/share/ruby-build/jruby-9.4.15.0 new file mode 100644 index 00000000..d0a8fd5a --- /dev/null +++ b/share/ruby-build/jruby-9.4.15.0 @@ -0,0 +1,2 @@ +require_java 8 +install_package "jruby-9.4.15.0" "https://repo1.maven.org/maven2/org/jruby/jruby-dist/9.4.15.0/jruby-dist-9.4.15.0-bin.tar.gz#c8b8c5a7a1581fdba3ba73f7c375f793f6528117b444cc6baf6fb29bbcf9696d" jruby From 24a8f43af94b670bc4170a6df61d7a5925eba52c Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Thu, 11 Jun 2026 12:18:05 -0500 Subject: [PATCH 14/18] Add JRuby 10.0.6.0 --- share/ruby-build/jruby-10.0.6.0 | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 share/ruby-build/jruby-10.0.6.0 diff --git a/share/ruby-build/jruby-10.0.6.0 b/share/ruby-build/jruby-10.0.6.0 new file mode 100644 index 00000000..0b6de97e --- /dev/null +++ b/share/ruby-build/jruby-10.0.6.0 @@ -0,0 +1,2 @@ +require_java 21 +install_package "jruby-10.0.6.0" "https://repo1.maven.org/maven2/org/jruby/jruby-dist/10.0.6.0/jruby-dist-10.0.6.0-bin.tar.gz#58c0d10b8a6b0b74a6119109f094ce073a6a6e813c7368c3876d71967e3a877f" jruby From 2caf1b4be434e70e5a6857b919c573fb44b95796 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Tue, 16 Jun 2026 11:45:57 +0200 Subject: [PATCH 15/18] ruby-build 20260616 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index 95abc5bd..0320560d 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260520" +RUBY_BUILD_VERSION="20260616" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index 32520aa3..68e66f75 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2026-05-07 +.\" Date: 2026-05-01 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260520 +.\" Source: ruby-build 20260616 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-07" "ruby\-build 20260520" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260616" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 From 8227e60d7bac94e2aaa8c52e12c6c05341c6a6c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 08:52:21 +0000 Subject: [PATCH 16/18] Bump actions/checkout from 6 to 7 Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- .github/workflows/differential-shellcheck.yml | 2 +- .github/workflows/update-ruby.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 156c963c..8b3be499 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: os: [ubuntu-latest, macos-latest] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 with: fetch-depth: 0 - name: Install bats diff --git a/.github/workflows/differential-shellcheck.yml b/.github/workflows/differential-shellcheck.yml index 0b987057..53433357 100644 --- a/.github/workflows/differential-shellcheck.yml +++ b/.github/workflows/differential-shellcheck.yml @@ -18,7 +18,7 @@ jobs: steps: - name: Repository checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 with: fetch-depth: 0 diff --git a/.github/workflows/update-ruby.yml b/.github/workflows/update-ruby.yml index 51531517..e1631dbd 100644 --- a/.github/workflows/update-ruby.yml +++ b/.github/workflows/update-ruby.yml @@ -20,7 +20,7 @@ jobs: name: Update Ruby definitions runs-on: ubuntu-latest steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Store Ruby version run: echo "RUBY_VERSION=${{ github.event.client_payload.ruby_version || github.event.inputs.ruby_version }}" >> $GITHUB_ENV From db626efe002ab9a98af16bd1a65b76c1a32a2d80 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot Date: Tue, 30 Jun 2026 11:28:07 +0000 Subject: [PATCH 17/18] Added 3.4.10 with OpenSSL 3.0.21 --- share/ruby-build/3.4.10 | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 share/ruby-build/3.4.10 diff --git a/share/ruby-build/3.4.10 b/share/ruby-build/3.4.10 new file mode 100644 index 00000000..5d6645ec --- /dev/null +++ b/share/ruby-build/3.4.10 @@ -0,0 +1,2 @@ +install_package "openssl-3.0.21" "https://github.com/openssl/openssl/releases/download/openssl-3.0.21/openssl-3.0.21.tar.gz#617e29af8e421f46649484a4937e48c685e47f46488167c982f88bc4ec1d522f" openssl --if needs_openssl:1.0.2-3.x.x +install_package "ruby-3.4.10" "https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.10.tar.gz#ecee2d072a14f2d14347dd56dfd8fe5c3130abf5117bfaacbda0f4ef9cc429ec" enable_shared standard From 9207ff8331f18149b6ae071089d4ea73af304a75 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Wed, 1 Jul 2026 14:32:58 +0900 Subject: [PATCH 18/18] ruby-build 20260701 --- bin/ruby-build | 2 +- share/man/man1/ruby-build.1 | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/ruby-build b/bin/ruby-build index 0320560d..3aa554fb 100755 --- a/bin/ruby-build +++ b/bin/ruby-build @@ -18,7 +18,7 @@ # -6, --ipv6 Resolve names to IPv6 addresses only # -RUBY_BUILD_VERSION="20260616" +RUBY_BUILD_VERSION="20260701" OLDIFS="$IFS" diff --git a/share/man/man1/ruby-build.1 b/share/man/man1/ruby-build.1 index 68e66f75..93bf0a65 100644 --- a/share/man/man1/ruby-build.1 +++ b/share/man/man1/ruby-build.1 @@ -2,12 +2,12 @@ .\" Title: ruby-build .\" Author: Mislav Marohnić .\" Generator: Asciidoctor 2.0.26 -.\" Date: 2026-05-01 +.\" Date: 2026-05-07 .\" Manual: ruby-build Manual -.\" Source: ruby-build 20260616 +.\" Source: ruby-build 20260701 .\" Language: English .\" -.TH "RUBY\-BUILD" "1" "2026-05-01" "ruby\-build 20260616" "ruby\-build Manual" +.TH "RUBY\-BUILD" "1" "2026-05-07" "ruby\-build 20260701" "ruby\-build Manual" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0