-
-
Notifications
You must be signed in to change notification settings - Fork 329
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
Drop support for old Rails versions < 4.2 #392
Drop support for old Rails versions < 4.2 #392
Conversation
Personally, I'm not too keen on removing support for rails 4-4.2, as these versions are still heavily used and I don't believe the maintenance impact is really such an issue. The really old ruby versions, however, I can see having a slight impact on future maintenance. Let's wait and see what the core team think. :) |
Yeah, let's wait and see :) |
In my opinion dropping the testing of old items and whatnot is fine (the rails 4.2 argument aside) However whilst we are not using ruby 2.3 (or higher), specific code, there is no need to restrict users. Furthermore, you'll see this in other OS software that I / others maintain. Selenium for example still allowed 2.0 because they didn't use any 2.1 / 2.2 specific code. Although for selenium4 they will be, hence dropping support of older rubies. |
@luke-hill Yeah, I see what you mean, but if we accept that as a reason, it kind of becomes a vicious circle: we keep support for old rubies because we don't use newer ruby features, and we don't use newer ruby features because we still support old rubies. For example, a contributor might find interesting to use squiggly heredocs for her code, but refrain from doing it because of the current support matrix. |
In my opinion, the mere fact that a library or language version no longer gets security fixes applied is reason enough for dropping support. |
The 2nd point you made about not using new features isn't what I was getting at. If cucumber hypothetically needed some new feature, then the old ruby/ies would be removed. There's no question over (I can't use method X because it doesn't exist in old ruby/ies), unless you wanted dual support (Something very few gems I know about do) To use an example. |
Normally you don't need to use new features and can get away without them, it's just nice to be able to use them.
Not sure what you mean, that's an example of what? In any case, it makes sense to keep the ruby support matrix in sync with cucumber-core, so I'm dropping the changes about ruby versions! 👍 |
I removed the changes related to ruby versions. Now the branch name is a bit misleading, I can close this PR and reopen a new one with a better branch name if needed 😃. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally this seems fine. I'm not a huge rails user, but I believe 4.2 is still quite widely used. But other than that it seems good to me.
Only reason for not approving is I know others were debating about this.
@deivid-rodriguez I edited the title of this PR, to increase visibility. I hope my wording reflects your intent. |
Yes, although that brings another discussion to the table. I think the minimum rails version should also be limited via gemspec, but I understand from previous messages that some contributors might prefer to only stop testing but keep implicit support? |
I also thought that it would be better to leave Rails 4.2. Recently Rails 4.2.11 has been released. |
If this were changed to drop rails40, rails41 from the testing matrix, would you be in favor? |
Sounds good, I'll readd 4.2 then! |
IMO, If there is no strong reason for the core team, I think that it is good to drop Rails 4.0 and Rails 4.1 from the testing matrix. |
I ended up limiting the minimum rails version through the gemspec as well, so I edited the PR title accordingly. |
This should be ready to go now, are you ok with limiting the minimum rails via gemspec? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems solid.
@@ -4,13 +4,13 @@ source "https://rubygems.org" | |||
|
|||
gem "rails", "~> 5.2" | |||
gem "railties", "~> 5.2" | |||
gem "capybara", "~> 3.0" | |||
gem "capybara", "~> 3" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might need a slight prod.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What do you mean? Do I need to change anything?
I'm doing some dependency rework anyways in #395, so I'm going to go ahead and merge this with @luke-hill's approval! :) |
Summary
What do you think about dropping support for old versions of Rails and Ruby that already reached their End of Life?
Details
Motivation and Context
How Has This Been Tested?
Through the current CI setup.
Screenshots (if appropriate):
Types of changes
Checklist: