Skip to content

Commit

Permalink
Merge pull request #16241 from Bo98/ruby3-developers
Browse files Browse the repository at this point in the history
Enable Ruby 3 for `HOMEBREW_DEVELOPER` and the Docker image
  • Loading branch information
Bo98 authored Nov 21, 2023
2 parents 0956d47 + 7a9f3eb commit 189d709
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 12 deletions.
9 changes: 5 additions & 4 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -294,12 +294,12 @@ jobs:
- name: tests (macOS 13)
test-flags: --coverage
runs-on: macos-13
- name: tests (Ubuntu 22.04; Ruby 3.1)
- name: tests (Ubuntu 22.04; Ruby 2.6)
runs-on: ubuntu-22.04
ruby: '3.1'
- name: tests (macOS 13; Ruby 3.1)
ruby: '2.6'
- name: tests (macOS 13; Ruby 2.6)
runs-on: macos-13
ruby: '3.1'
ruby: '2.6'
steps:
- name: Set up Homebrew
id: set-up-homebrew
Expand All @@ -321,6 +321,7 @@ jobs:
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler: none

- name: Setup Ruby environment
if: matrix.ruby
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@ RUN apt-get update \

USER linuxbrew
COPY --chown=linuxbrew:linuxbrew . /home/linuxbrew/.linuxbrew/Homebrew
ENV PATH="/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:${PATH}"
ENV PATH="/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:${PATH}" \
HOMEBREW_RUBY3=1
WORKDIR /home/linuxbrew

RUN mkdir -p \
Expand Down
5 changes: 5 additions & 0 deletions Library/Homebrew/brew.sh
Original file line number Diff line number Diff line change
Expand Up @@ -945,6 +945,11 @@ then
export HOMEBREW_SORBET_RUNTIME="1"
fi

if [[ -n "${HOMEBREW_DEVELOPER}" ]]
then
export HOMEBREW_RUBY3="1"
fi

if [[ -f "${HOMEBREW_LIBRARY}/Homebrew/cmd/${HOMEBREW_COMMAND}.sh" ]]
then
HOMEBREW_BASH_COMMAND="${HOMEBREW_LIBRARY}/Homebrew/cmd/${HOMEBREW_COMMAND}.sh"
Expand Down
22 changes: 15 additions & 7 deletions Library/Homebrew/utils/ruby.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,24 @@ test_ruby() {
return 1
fi

if [[ -n "${HOMEBREW_RUBY3}" ]]
supported_ruby_versions=()
if [[ -n "${HOMEBREW_RUBY3}" && -z "${HOMEBREW_USE_RUBY_FROM_PATH}" ]]
then
required_ruby_version="3.1.0"
else
required_ruby_version="${HOMEBREW_REQUIRED_RUBY_VERSION}"
supported_ruby_versions+=("3.1.0")
fi
supported_ruby_versions+=("${HOMEBREW_REQUIRED_RUBY_VERSION}")

for ruby_version in "${supported_ruby_versions[@]}"
do
if "$1" --enable-frozen-string-literal --disable=gems,did_you_mean,rubyopt \
"${HOMEBREW_LIBRARY}/Homebrew/utils/ruby_check_version_script.rb" \
"${ruby_version}" 2>/dev/null
then
return 0
fi
done

"$1" --enable-frozen-string-literal --disable=gems,did_you_mean,rubyopt \
"${HOMEBREW_LIBRARY}/Homebrew/utils/ruby_check_version_script.rb" \
"${required_ruby_version}" 2>/dev/null
return 1
}

can_use_ruby_from_path() {
Expand Down

0 comments on commit 189d709

Please sign in to comment.