Conversation
|
https://www.ruby-lang.org/en/downloads/branches/ 2.5 is eol. 2.6 is still supported. Wouldn't it make more sense to only support ruby versions that aren't EOL? |
In a perfect world, everyone would be running recent Ruby versions. But in practice, some people run old Ruby versions. I'd rather not boot anyone from GraphQL-Ruby if I can help it. I'm open to dropping support for some old Ruby versions in 1.13.0, but I haven't put a lot of thought into it yet. |
|
Well, shoot. I wanted to remove the string refinement used in the lexer, but in order to rebuild it properly, I had to update Ragel. I added a benchmark task to make sure there wasn't a regression... but there was: So, I guess I don't want to update Ragel. I'll roll back that change and edit the generated file by hand 😖 |
As per #3596, I opened a PR with the CI changes needed to support at a minimum
And prepare the way to support the upcoming Rails 7.
I took the opportunity to make all the changes needed in all the parts of the CI system I could find, like removing
RUBY_VERSION >= '2.4.0'conditionals, updating rubocop version, and removing some old string refinements that shouldn't be needed anymore.Removing support from these very old Rails and Ruby versions should speed up development moving forward.
Rails 4 and Ruby 2.4 themselves are still somewhat old and both EOL, but support for those ones is kept for a while longer
This PR can stay open for a while, for people to discuss whether they still need those versions or not.
Personally, I find it hard to believe that there are still people out there who are still using the latest
graphql-rubyversion and always keeping it updated while still using Rails 3 or Ruby 2.2. I'd argue that changing fromdefinebased to Class based API back in1.8, even with the migrator script, took a lot of effort, and anyone who can invest that effort can also invest the effort to keep their Ruby and Rails versions updated. Maybe I'm wrong on this, so let's see what other people have to say.Also, it's not like GraphQL would stop working for them. Assuming this PR makes it to a
1.13release, they'd still be able to use everything up to1.12and use later versions at their own risk, just like they are using unsupported Ruby and Rails versions that don't receive security fixes at their own risk, anyway.Tests all worked on my local machine using the ruby versions specified in the
ci.yaml