Skip to content

Drop support for Rails < 6.0 and Ruby < 2.7#276

Merged
mcelicalderon merged 3 commits intographql-devise:masterfrom
HeyNonster:nony--ruby-3-x
Nov 21, 2024
Merged

Drop support for Rails < 6.0 and Ruby < 2.7#276
mcelicalderon merged 3 commits intographql-devise:masterfrom
HeyNonster:nony--ruby-3-x

Conversation

@HeyNonster
Copy link
Copy Markdown
Contributor

Rails 5.2 and Ruby 2.6 went end-of-life in 2018 so I think they're both safe to drop support for. This PR also starts testing with more recent Ruby versions.

Support for Rails 5.2 and Ruby 2.6 ended in 2018 so I think it's a reasonable time to
drop support for it and everything below it.

I've changed the Rails version check in `application.rb` because `represent_boolean_as_integer` was
deprecated in Rails 6.0[^1].

The target Ruby version in `.rubocop.yml` has been updated but it seems
like Rubocop isn't actually being used to autocorrect offenses in the
gem and I didn't want to autocorrect everything because there are
hundreds of offenses.

[^1]:(https://github.com/rails/rails/blob/e29f5e0feb68ee6a9bd44f24991d7494a71884f0/guides/source/6_0_release_notes.md?plain=1#L446)
We will need a newer version of `pry` to support later Ruby versions.
@HeyNonster HeyNonster marked this pull request as ready for review November 9, 2024 13:17
@mcelicalderon
Copy link
Copy Markdown
Member

Thank you for your contribution, @HeyNonster! @00dav00 and I had similar discussions in the past and I have to admit that back then I was relunctant to drop support for older versions unless we had a good reason to do so (too hard to maintain both old a new versions support). But now, while I still think keeping support for older versions is not extremely complicated in this gem's codebase, I think I'm also leaning towards dropping support. This would of course be a breaking change, meaning the next version we release will be a Major version bump.

So, WDYT, @00dav00?

On a sidenote, apparently CircleCI changed how organizations are connected and we need to set that up again

Comment thread .circleci/config.yml Outdated
gemfile: gemfiles/rails5.2_graphql1.10.gemfile
- ruby-version: '3.0'
gemfile: gemfiles/rails5.2_graphql1.11.gemfile
exclude:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@HeyNonster indentation is 2 spaces too much to the right here, that's why CI is failing to run as the matrix is production way too many jobs

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be fixed now!

@HeyNonster HeyNonster force-pushed the nony--ruby-3-x branch 2 times, most recently from 500bacb to c7849d3 Compare November 9, 2024 17:50
Comment thread .circleci/config.yml Outdated
Skips testing Rails 6.0 with Ruby 3.3 due to incompatibilities.
@00dav00
Copy link
Copy Markdown
Contributor

00dav00 commented Nov 9, 2024

I also think we should remove them 💪

@HeyNonster
Copy link
Copy Markdown
Contributor Author

@mcelicalderon and @00dav00 how would you like to handle GraphQL < 1.12 support? It seems like GraphQL 1.11 has some issues with later Ruby versions. We can either drop support for graphql-ruby < 1.12 or skip testing with Ruby 3.1+ and GraphQL 1.11.

@mcelicalderon
Copy link
Copy Markdown
Member

mcelicalderon commented Nov 9, 2024

I see, @HeyNonster. I think we can just skip those failing combinations in the matrix for now. In the future and before another version release, we might drop support for GQL older versions. That might happen when we get to #273

@HeyNonster
Copy link
Copy Markdown
Contributor Author

@mcelicalderon and @00dav00 how would you like to handle GraphQL < 1.12 support? It seems like GraphQL 1.11 has some issues with later Ruby versions. We can either drop support for graphql-ruby < 1.12 or skip testing with Ruby 3.1+ and GraphQL 1.11.

I see, @HeyNonster. I think we can just skip those failing combinations in the matrix for now. In the future and before another version release, we might drop support for GQL older versions. That might happen when we get to #273

Hey! I've been at Ruby Conf this week so I haven't been able to finish this but I'll pick it back up next week!

@mcelicalderon
Copy link
Copy Markdown
Member

@HeyNonster @00dav00 after reviewing this one, I think I'm going to merge it as is. It will break master, but it's just the build and it would probably fail right now too as it fails to resolve dependencies. I'm working on #277 and it will be easier to do with this changes and I will fix the remaining jobs.

Thanks again, @HeyNonster!

@mcelicalderon mcelicalderon merged commit ba6b13b into graphql-devise:master Nov 21, 2024
@mcelicalderon mcelicalderon changed the title Drop Rails < 6.0, Ruby < 2.7, test with Ruby 3.1, 3.2, and 3.3. Drop support for Rails < 6.0 and Ruby < 2.7 Nov 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants