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

Start testing with Ruby 3.4 on every PR #8297

Merged
merged 1 commit into from
Nov 28, 2024

Conversation

deivid-rodriguez
Copy link
Member

@deivid-rodriguez deivid-rodriguez commented Nov 27, 2024

What was the end-user or developer problem that led to this PR?

In preparation for final Bundler 2.6.0 and RubyGems 3.6.0 releases, I'd like to make sure everything works with Ruby 3.4.

What is your fix for the problem, implemented in this PR?

Add 3.4.0-preview2 to our CI.

Make sure the following tasks are checked

@deivid-rodriguez deivid-rodriguez force-pushed the deivid-rodriguez/ruby-3-4-0-preview2 branch 2 times, most recently from b3af234 to 8f23a14 Compare November 27, 2024 17:08
@MSP-Greg
Copy link
Contributor

@deivid-rodriguez

Please consider using head. All the head builds available in GHA are tested (see https://github.com/ruby/ruby-dev-builder CI), and only replace the previous build if all the tests pass.

This has been in place for quite a while, and was done because other CI providers were running head builds and not testing them. They just ran make install and replaced the previous build. No one liked that...

@deivid-rodriguez
Copy link
Member Author

We already have a daily job that tests with head, that works fine.

@deivid-rodriguez deivid-rodriguez changed the title Starting testing with Ruby 3.4 Starting testing with Ruby 3.4 on every PR Nov 27, 2024
@deivid-rodriguez deivid-rodriguez changed the title Starting testing with Ruby 3.4 on every PR Start testing with Ruby 3.4 on every PR Nov 27, 2024
@deivid-rodriguez deivid-rodriguez force-pushed the deivid-rodriguez/ruby-3-4-0-preview2 branch from 8f23a14 to 23d0619 Compare November 27, 2024 18:52
@deivid-rodriguez
Copy link
Member Author

deivid-rodriguez commented Nov 27, 2024

To clarify, I understand that only replacing the previous dev build if all ruby tests pass is a good thing, but there's still some inherent unstability to testing against ruby-head that I don't want all PRs to inherit. We've been testing with ruby head daily for a while now and I address failures with it when I find time without allowing them to reach all PRs and result if false CI failures. This works very well so I see no reason to change it.

@deivid-rodriguez deivid-rodriguez marked this pull request as ready for review November 27, 2024 19:08
@MSP-Greg
Copy link
Contributor

I understand your position.

I think there is a converse. If RubyGems/Bundler commits automatically move to ruby/ruby, doesn't the potential exist for breakage in ruby/ruby, since you're not testing against Ruby head?

I'm not sure how that movement is initiated, so...

@deivid-rodriguez
Copy link
Member Author

Yes, that's a good point. I think that's not ideal either and it indeed causes issues sometimes. I proposed https://bugs.ruby-lang.org/issues/16778 to try fix it permanently but it's not going to happen.

Most issues caused by this automatic synchronization are usually due to how ruby-core runs bundler tests different, so to alleviate that, we do test with ruby-head on every PR in a special "ruby-core" job that runs tests in the same way ruby-core runs them. It's not perfect (due to the instability of head), but it does catch issues sometimes, so we live with it. When failures are still not caught, usually ruby-core maintainers address them quickly.

@deivid-rodriguez deivid-rodriguez merged commit cd65092 into master Nov 28, 2024
83 checks passed
@deivid-rodriguez deivid-rodriguez deleted the deivid-rodriguez/ruby-3-4-0-preview2 branch November 28, 2024 15:52
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

Successfully merging this pull request may close these issues.

2 participants