Skip to content

Commit 6ba2fdb

Browse files
committedDec 31, 2023
Bump the required Ruby version to 3.1.0
Until now, Rails only droped compatibility with older rubies on new majors, but I propose to change this policy because it causes us to either keep compatibility with long EOLed rubies or to bump the Rails major more often, and to drop multiple Ruby versions at once when we bump the major. In my opinion it's a bad alignments of incentives. And we'd be much better to just drop support in new minors whenever they go EOL (so 3 years). Also Ruby being an upstream dependency, it's not even a semver violation AFAICT. Since Rails 7.2 isn't planned before a few months, we can already drop Ruby 3.0 as it will be EOL in March.
1 parent c061e56 commit 6ba2fdb

File tree

14 files changed

+14
-14
lines changed

14 files changed

+14
-14
lines changed
 

‎actioncable/actioncable.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "WebSocket framework for Rails."
1010
s.description = "Structure many real-time application concerns into channels over a single WebSocket connection."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎actionmailbox/actionmailbox.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Inbound email handling framework."
1010
s.description = "Receive and process incoming emails in Rails applications."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎actionmailer/actionmailer.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Email composition and delivery framework (part of Rails)."
1010
s.description = "Email on Rails. Compose, deliver, and test emails using the familiar controller/view pattern. First-class support for multipart email and attachments."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎actionpack/actionpack.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Web-flow and rendering framework putting the VC in MVC (part of Rails)."
1010
s.description = "Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web applications. Works with any Rack-compatible server."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎actiontext/actiontext.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Rich text framework."
1010
s.description = "Edit and display rich text in Rails applications."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎actionview/actionview.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Rendering framework putting the V in MVC (part of Rails)."
1010
s.description = "Simple, battle-tested conventions and helpers for building web pages."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎activejob/activejob.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Job framework with pluggable queues."
1010
s.description = "Declare job classes that can be run by a variety of queuing backends."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎activemodel/activemodel.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "A toolkit for building modeling frameworks (part of Rails)."
1010
s.description = "A toolkit for building modeling frameworks like Active Record. Rich support for attributes, callbacks, validations, serialization, internationalization, and testing."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎activerecord/activerecord.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Object-relational mapper framework (part of Rails)."
1010
s.description = "Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. Strong conventions for associations, validations, aggregations, migrations, and testing come baked-in."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎activestorage/activestorage.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Local and cloud file storage framework."
1010
s.description = "Attach cloud and local files in Rails applications."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎activesupport/activesupport.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "A toolkit of support libraries and Ruby core extensions extracted from the Rails framework."
1010
s.description = "A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎rails.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Full-stack web application framework."
1010
s.description = "Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313
s.required_rubygems_version = ">= 1.8.11"
1414

1515
s.license = "MIT"

‎railties/railties.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
99
s.summary = "Tools for creating, working with, and running Rails applications."
1010
s.description = "Rails internals: application bootup, plugins, generators, and rake tasks."
1111

12-
s.required_ruby_version = ">= 2.7.0"
12+
s.required_ruby_version = ">= 3.1.0"
1313

1414
s.license = "MIT"
1515

‎tools/rail_inspector/rail_inspector.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
1111
spec.summary = "A collection of linters for rails/rails"
1212
spec.homepage = "https://github.com/skipkayhil/rail_inspector"
1313
spec.license = "MIT"
14-
spec.required_ruby_version = ">= 2.7.0"
14+
spec.required_ruby_version = ">= 3.1.0"
1515

1616
spec.metadata["homepage_uri"] = spec.homepage
1717
spec.metadata["source_code_uri"] = spec.homepage

0 commit comments

Comments
 (0)
Please sign in to comment.