From 987ebe3d6d0aaa27ab9ca2e95fe807e0718d4378 Mon Sep 17 00:00:00 2001 From: Bo Anderson Date: Tue, 5 Dec 2023 02:10:01 +0000 Subject: [PATCH] Require Ruby 3.1 --- .github/workflows/tests.yml | 27 ++++----------------------- Library/Homebrew/brew.sh | 3 --- Library/Homebrew/utils/ruby.sh | 26 +++++++------------------- 3 files changed, 11 insertions(+), 45 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 66583d51b3..869f056b5b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -294,12 +294,6 @@ jobs: - name: tests (macOS 13) test-flags: --coverage runs-on: macos-13 - - name: tests (Ubuntu 22.04; Ruby 2.6) - runs-on: ubuntu-22.04 - ruby: '2.6' - - name: tests (macOS 13; Ruby 2.6) - runs-on: macos-13 - ruby: '2.6' steps: - name: Set up Homebrew id: set-up-homebrew @@ -313,21 +307,8 @@ jobs: uses: actions/cache@v3 with: path: ${{ steps.set-up-homebrew.outputs.gems-path }} - key: ${{ matrix.runs-on }}-tests-rubygems${{ matrix.ruby }}-${{ steps.set-up-homebrew.outputs.gems-hash }} - restore-keys: ${{ matrix.runs-on }}-tests-rubygems${{ matrix.ruby }}- - - - name: Setup Ruby - if: matrix.ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: ${{ matrix.ruby }} - bundler: none - - - name: Setup Ruby environment - if: matrix.ruby - run: | - echo "HOMEBREW_USE_RUBY_FROM_PATH=1" >> "${GITHUB_ENV}" - rm -rf "${{ steps.set-up-homebrew.outputs.repository-path }}/Library/Homebrew/vendor/portable-ruby" + key: ${{ matrix.runs-on }}-tests-rubygems-${{ steps.set-up-homebrew.outputs.gems-hash }} + restore-keys: ${{ matrix.runs-on }}-tests-rubygems- - run: brew config @@ -341,8 +322,8 @@ jobs: uses: actions/cache@v3 with: path: tests - key: ${{ runner.os }}-${{ matrix.test-flags }}-parallel_runtime_rspec${{ matrix.ruby }}-${{ github.sha }} - restore-keys: ${{ runner.os }}-${{ matrix.test-flags }}-parallel_runtime_rspec${{ matrix.ruby }}- + key: ${{ runner.os }}-${{ matrix.test-flags }}-parallel_runtime_rspec-${{ github.sha }} + restore-keys: ${{ runner.os }}-${{ matrix.test-flags }}-parallel_runtime_rspec- - name: Install brew tests dependencies if: matrix.name != 'tests (generic OS)' diff --git a/Library/Homebrew/brew.sh b/Library/Homebrew/brew.sh index 58f4047ef3..0118381ea5 100644 --- a/Library/Homebrew/brew.sh +++ b/Library/Homebrew/brew.sh @@ -504,9 +504,6 @@ case "$*" in ;; esac -# TODO: remove this after we want Dependabot to point to 3.1 minimum and system macOS Ruby code is gone -export HOMEBREW_RUBY3="1" - # TODO: bump version when new macOS is released or announced and update references in: # - docs/Installation.md # - https://github.com/Homebrew/install/blob/HEAD/install.sh diff --git a/Library/Homebrew/utils/ruby.sh b/Library/Homebrew/utils/ruby.sh index 6576f979ab..78d2c6ecc0 100644 --- a/Library/Homebrew/utils/ruby.sh +++ b/Library/Homebrew/utils/ruby.sh @@ -1,6 +1,9 @@ # When bumping, run `brew vendor-gems --update=--ruby` # When bumping to a new major/minor version, also update the bounds in the Gemfile -export HOMEBREW_REQUIRED_RUBY_VERSION=2.6.10 +export HOMEBREW_REQUIRED_RUBY_VERSION=3.1 + +# TODO: remove this after we want Dependabot to point to 3.1 minimum +export HOMEBREW_RUBY3="1" # HOMEBREW_LIBRARY is from the user environment # shellcheck disable=SC2154 @@ -10,24 +13,9 @@ test_ruby() { return 1 fi - supported_ruby_versions=() - if [[ -n "${HOMEBREW_RUBY3}" && -z "${HOMEBREW_USE_RUBY_FROM_PATH}" ]] - then - 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 - - return 1 + "$1" --enable-frozen-string-literal --disable=gems,did_you_mean,rubyopt \ + "${HOMEBREW_LIBRARY}/Homebrew/utils/ruby_check_version_script.rb" \ + "${HOMEBREW_REQUIRED_RUBY_VERSION}" 2>/dev/null } can_use_ruby_from_path() {