Add missing ruby2_keywords calls in rspec-mocks#1464
Conversation
0dbe9d7 to
9703d86
Compare
|
This change is also needed for Ruby 3.2 if the fix for https://bugs.ruby-lang.org/issues/18625 gets in. Since 3.2 needs that fix, it seems we will need a rspec release, so Bundler can get this fix, and Bundler is tested in ruby/ruby's CI. Bundler's specs can't just point to a github branch due to rspec inter-gem version restrictions (and that wouldn't be a good solution longer-term either of course): https://github.com/ruby/ruby/pull/5684/checks |
|
Re-running jobs to see if a weird failure was temporary. |
|
I'm fine with this if we can get a passing build, although if there is an easy way to get a spec (or specs) that would fail without these changes on one of the existing MRI builds that'd be a nice to have. |
|
I'm really confused how this PR can cause 2.5/2.6 to fail rspec-rails specs, on Linux but not Windows, when |
|
Looks like I'm running into #1385 (comment) |
* And standardize checks to `if respond_to?(:ruby2_keywords, true)`.
9703d86 to
114e6ba
Compare
|
CI shall be green now (here is my run), except 2.3 Windows which is already failing on main.
This is not possible, the code before this PR only works "thanks" to a CRuby bug of not resetting the |
|
Just to have some records of what the fix entailed, what is the difference between your original implementation of this PR and the final result, @eregon? |
You can see it with the |
|
Could I ask for a release of rspec-mocks including this fix? |
Add missing ruby2_keywords calls in rspec-mocks
|
Released as 3.11.1 |
if respond_to?(:ruby2_keywords, true).cc @bjfish
This is progress towards rspec/rspec-metagem#68.
Before: 25 failures, After: 2 failures left (which seem unrelated):
BTW, the reason the code worked before these
ruby2_keywordsseems accidental and due to a bug/inconsistency in CRuby: https://bugs.ruby-lang.org/issues/18625