Skip to content

Commit 9345e7c

Browse files
hsbtclaude
andcommitted
Skip flaky prerelease add specs on Ruby 3.3 Windows due to SEGV
Ruby 3.3 on Windows has a native crash (SEGV in rb_ary_cmp during Array#join) likely related to Object Shape optimization. The crash corrupts version segments producing invalid requirements like "~> false.12.3.pre" or "~> 2.12.3.pre". This does not occur on Ruby 3.4+ where Object Shape implementation was significantly improved. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 320418d commit 9345e7c

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

spec/commands/add_spec.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,16 @@
5151
end
5252

5353
it "version requirement becomes ~> major.minor.patch.pre when resolved version is < 1.0" do
54+
# Ruby 3.3 on Windows has a native crash (SEGV in rb_ary_cmp during Array#join) related to Object Shape optimization.
55+
skip "Ruby 3.3 on Windows crashes with SEGV in Array#join" if Gem.win_platform? && RUBY_VERSION.start_with?("3.3.")
5456
bundle "add 'cat'"
5557
expect(bundled_app_gemfile.read).to match(/gem "cat", "~> 0.12.3.pre"/)
5658
expect(the_bundle).to include_gems "cat 0.12.3.pre"
5759
end
5860

5961
it "version requirement becomes ~> major.minor.pre when resolved version is > 1.0.pre" do
62+
# Ruby 3.3 on Windows has a native crash (SEGV in rb_ary_cmp during Array#join) related to Object Shape optimization.
63+
skip "Ruby 3.3 on Windows crashes with SEGV in Array#join" if Gem.win_platform? && RUBY_VERSION.start_with?("3.3.")
6064
bundle "add 'dog'"
6165
expect(bundled_app_gemfile.read).to match(/gem "dog", "~> 1.1.pre"/)
6266
expect(the_bundle).to include_gems "dog 1.1.3.pre"

0 commit comments

Comments
 (0)