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

feat: Add Ruby 3.2 to the test matrix #896

Closed
wants to merge 4 commits into from

Conversation

akofink
Copy link
Contributor

@akofink akofink commented Feb 14, 2024

This PR is mostly to demonstrate the issue solved by #889

For further discussion

It's sort of unclear which versions of Ruby we want to test against at the moment. Based on the ruby maintenance schedule, Ruby < 3.0 was end of life as of 2023-03-31.

I'm open to the idea of cleaning up the test matrix and removing Ruby 2 support for tmuxinator.

Ruby 3.0 is also going end of life quite soon, 2024-03-31. How long should we continue testing with it after EOL?

Should we also maybe test against Ruby 3.1?

We're also testing against literally all versions of tmux since 1.5.
Would it make sense to at least collapse 3.1[,a,b,c] to just 3.1c?

Happy to report an issue for this discussion about which versions we want to support and test against.

@augustelalande
Copy link
Contributor

I think dropping <3.0 makes sense, and is in line with the policy stated in the README

tmuxinator aims to be compatible with the currently maintained versions of Ruby

By the same logic we could drop 3.0 as of the end of the month, but assuming it's not blocking anything else, you could keep it an extra year until April 2025.

I think 3.1 should be added to keep in line with the policy and possibly also 3.3?

@augustelalande
Copy link
Contributor

Is there any reason you want to reduce the number of tmux versions? Is backwards compatibility blocking anything?

@akofink
Copy link
Contributor Author

akofink commented Mar 27, 2024

The introduction of Ruby > 3.0 causes rubocop to fail. I've attempted upgrading; it's quite a big task. I think we have to get to v0.61.0 to get this fix.

Is there any reason you want to reduce the number of tmux versions?

We're currently testing against 3.1, 3.1a, 3.1b, and 3.1c; tmux appears to follow semver conventions, where there are expected to be no breaking changes between 3.1 and 3.1c. I don't really feel that strongly about reducing the tmux versions list if there's a good reason to test against each version like this.

@augustelalande
Copy link
Contributor

Nice. Are you running into any blockers when upgrading rubocop?

@augustelalande
Copy link
Contributor

augustelalande commented Mar 28, 2024

We're currently testing against 3.1, 3.1a, 3.1b, and 3.1c; tmux appears to follow semver conventions, where there are expected to be no breaking changes between 3.1 and 3.1c. I don't really feel that strongly about reducing the tmux versions list if there's a good reason to test against each version like this.

Like I said, I don't really see a point in dropping any of the versions even if they don't do anything. At worst it's just a bit of wasted compute on the microsoft servers.

@akofink
Copy link
Contributor Author

akofink commented Mar 28, 2024

Rubocop adds cops as it upgrades, and we have some failing new cops. One way to upgrade is to rely on .rubocop_todo.yml which just excludes existing occurrences of failures, which we can work on over time to correct.

It also seems like upgrades between major versions of rubocop (i.e. 0.x -> 1.x -> 2.x) have more than just new cops. Many cops are renamed, split, or merged into other cops. I'll open a PR at some point when I get it to a good state, but no promises on timeline. 😄

@augustelalande
Copy link
Contributor

Ok. Let me know if you need help on anything.

@akofink
Copy link
Contributor Author

akofink commented Mar 30, 2024

I've rebased this PR on top of #905 to demonstrate rubocop works with all existing supported versions of ruby in addition to 3.1 and 3.2.

akofink added 4 commits March 30, 2024 17:38
Signed-off-by: Andrew Kofink <ajkofink@gmail.com>
Signed-off-by: Andrew Kofink <ajkofink@gmail.com>
Signed-off-by: Andrew Kofink <ajkofink@gmail.com>
Signed-off-by: Andrew Kofink <ajkofink@gmail.com>
@akofink
Copy link
Contributor Author

akofink commented Mar 31, 2024

Closing this in favor of #907

@akofink akofink closed this Mar 31, 2024
@akofink akofink deleted the ruby-3.2 branch March 31, 2024 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants