From 098ced7420065149feec732f979402afe2573d60 Mon Sep 17 00:00:00 2001 From: Claire Date: Sun, 27 Nov 2022 20:41:39 +0100 Subject: [PATCH] Remove support for Ruby 2.6 (#21477) As pointed out by https://github.com/mastodon/mastodon/pull/21297#discussion_r1028372193 at least one of our dependencies already dropped support for Ruby 2.6, and we had removed Ruby 2.6 tests from the CI over a year ago (#16861). So stop advertising Ruby 2.6 support, bump targeted version, and drop some compatibility code. --- .rubocop.yml | 2 +- Gemfile | 2 +- README.md | 2 +- config/application.rb | 1 - lib/enumerable.rb | 26 -------------------------- 5 files changed, 3 insertions(+), 30 deletions(-) delete mode 100644 lib/enumerable.rb diff --git a/.rubocop.yml b/.rubocop.yml index 38a413c2e3..aec11b0306 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -2,7 +2,7 @@ require: - rubocop-rails AllCops: - TargetRubyVersion: 2.5 + TargetRubyVersion: 2.7 NewCops: disable Exclude: - 'spec/**/*' diff --git a/Gemfile b/Gemfile index ca77e6a2ab..a55f03edbf 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,7 @@ # frozen_string_literal: true source 'https://rubygems.org' -ruby '>= 2.6.0', '< 3.1.0' +ruby '>= 2.7.0', '< 3.1.0' gem 'pkg-config', '~> 1.4' gem 'rexml', '~> 3.2' diff --git a/README.md b/README.md index 5019bd0975..277ae0cc16 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,7 @@ Mastodon acts as an OAuth2 provider, so 3rd party apps can use the REST and Stre - **PostgreSQL** 9.5+ - **Redis** 4+ -- **Ruby** 2.6+ +- **Ruby** 2.7+ - **Node.js** 14+ The repository includes deployment configurations for **Docker and docker-compose** as well as specific platforms like **Heroku**, **Scalingo**, and **Nanobox**. The [**standalone** installation guide](https://docs.joinmastodon.org/admin/install/) is available in the documentation. diff --git a/config/application.rb b/config/application.rb index 4d6c7ebf10..6fa3654d8c 100644 --- a/config/application.rb +++ b/config/application.rb @@ -22,7 +22,6 @@ require 'mail' Bundler.require(*Rails.groups) require_relative '../lib/exceptions' -require_relative '../lib/enumerable' require_relative '../lib/sanitize_ext/sanitize_config' require_relative '../lib/redis/namespace_extensions' require_relative '../lib/paperclip/url_generator_extensions' diff --git a/lib/enumerable.rb b/lib/enumerable.rb deleted file mode 100644 index 66918f65e8..0000000000 --- a/lib/enumerable.rb +++ /dev/null @@ -1,26 +0,0 @@ -# frozen_string_literal: true - -module Enumerable - # TODO: Remove this once stop to support Ruby 2.6 - if RUBY_VERSION < '2.7.0' - def filter_map - if block_given? - result = [] - each do |element| - res = yield element - result << res if res - end - result - else - Enumerator.new do |yielder| - result = [] - each do |element| - res = yielder.yield element - result << res if res - end - result - end - end - end - end -end