Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ruby version support policy #77

Open
ianks opened this issue Nov 6, 2022 · 3 comments
Open

Ruby version support policy #77

ianks opened this issue Nov 6, 2022 · 3 comments

Comments

@ianks
Copy link

ianks commented Nov 6, 2022

Currently, RCD supports all the way down to Ruby 2.4 which has been EOL for almost 3 years.

Not only is there a maintenance burden from supporting more versions, it makes certain refactors harder to do.

I propose come up with a policy for which Ruby versions RCD will support, and how that will affect RCDs semver. The obvious proposal would be to support stable rubies (as of now 2.7+), and release a major version of RCD whenever a Ruby version is EOL.

We can also adjust this scheme to make migration easier — i.e. support the most recent EOL Ruby version (as of now 2.6) via opt-in if it’s included in RUBY_CC_VERSION.

The goal here is to agree on a support policy going forward, since it’s untenable to support all rubies forever.

Thoughts?

@ianks ianks changed the title Ruby version support Ruby version support policy Nov 6, 2022
@flavorjones
Copy link
Collaborator

Wearing my Nokogiri maintainer hat, I try to support the 4 most recent Ruby minors at any time. A policy like this would be fine for me, but I think we should solicit more opinions from other users before committing to anything.

@copiousfreetime
Copy link

I have amalgalite - which doesn't have a lot of usage, but its still there (and yes, it needs a new release). I think supporting the most recent EOL version (either as an extra commandline, or by default) and all minors going forward with a major version release of RCD after each EOL sounds like a reasonable policy.

@larskanis
Copy link
Member

RCD is meant to support the release process of other gems with possibly a longer support time frame. That's why I tried to support 2 or 3 EOL releases as long as there is no relevant maintenance burden. And that wasn't the case so far. It only took a little bit more building time on my end and approx 25 MByte per release uncompressed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants