faker-ruby / faker

A library for generating fake data such as names, addresses, and phone numbers.
MIT License
11.28k stars 3.18k forks source link

Drop support for Ruby 2.7 #2885

Closed stefannibrasil closed 1 month ago

stefannibrasil commented 10 months ago

We're still supporting Ruby 2.7 but this version is not maintained anymore. To ensure faker is up to date with Ruby, we want to drop EOL versions and be fully running on the latest.

Here is a PR example from when we last dropped support for Ruby EOL versions: https://github.com/faker-ruby/faker/pull/2538. We also need to update any mention to Ruby 2.7 and replace it with 3.0.

The minimum Ruby version is going to be 3.0.

This is a great first-time contributor issue. If you're a contributor already, please leave it for someone looking for first-time issues :hugs:

koic commented 10 months ago

The latest stable version of Rails (7.1) supports Ruby 2.7. https://rubygems.org/gems/rails/versions/7.1.2

IMHO, Since Rails has a significant market presence, I think it is still valuable for the library to support Ruby 2.7, independent of its EOL.

stefannibrasil commented 10 months ago

Fair enough! FYI, Rails is already in preparation for dropping Ruby 2.7 soon https://github.com/rails/rails/pull/50491

I understand Rails is a good reference but I'd like to keep our Ruby support up to Ruby's EOL calendar. No strong opinions, though.

koic commented 10 months ago

Yes. After Rails 8 is released, the minimum required version of Ruby will change. However, it should be noted that Rails 7.1 will not become EOL immediately.

stefannibrasil commented 10 months ago

Sounds good, thanks! I guess I was too excited to start the year with this change but it can wait :blush:

What do you think of having a guideline for this in the Maintaining doc? https://github.com/faker-ruby/faker/blob/main/MAINTAINING.md

koic commented 10 months ago

Although it might be beneficial to mention this in the doc, I don't have a strong preference regarding it. Your discretion in this matter would be appreciated. Thank you very much for taking it into consideration!

stefannibrasil commented 10 months ago

Thank you, Koic for the discussion! I proposed a guideline here for the future here https://github.com/faker-ruby/faker/pull/2890

Gonna close this one for now and reopen when at least Ruby 3.0 is EOL.

koic commented 10 months ago

For reference, RuboCop has changed its maintenance policy and decided to support Ruby 2.7 for an extended period, regardless of Ruby 3.0's EOL. For more details, please see the following: https://docs.rubocop.org/rubocop/1.60/compatibility.html#support-matrix

stefannibrasil commented 10 months ago

That's really nice for RuboCop! As faker does not have many active maintainers, doing that here would be too much for the maintainers.

stefannibrasil commented 3 months ago

Ruby 3.0 EOL has passed on April 24th 2024. We're good in dropping support for 2.7.

ayana-s commented 2 months ago

Hi @stefannibrasil ! Can I tackle this one? I haven't contributed to Faker before but I am familiar with Ruby :)

stefannibrasil commented 2 months ago

hi @ayana-s yes, please! Thank you.