Hiroshi SHIBATA 2026-08-04 05:43:31 +0000 (Tue, 04 Aug 2026)
New Revision: 29d630c108
https://github.com/ruby/ruby/commit/29d630c108
Log:
[ruby/rubygems] Load vendored persistent before activating Artifice in-process
Artifice replaces Gem::Net::HTTP, so when bundler/vendored_persistent
gets lazily required while Artifice is active, the vendored Persistent
classes are defined under the Artifice replacement. After deactivation
Gem::Net::HTTP::Persistent becomes unresolvable, and the vendored
connection_pool fork hook then raises NameError on any later
Process.fork in the same rspec worker, failing worker_spec whenever it
shares a process with parallel_installer_spec. Load it up front like
gem_remote_fetcher_spec already does, before requiring
support/artifice/compact_index, which activates Artifice on load.
https://github.com/ruby/rubygems/commit/168266e7d6
Co-Authored-By: Claude Fable 5 <
nor...@anthropic.com>
Modified files:
spec/bundler/bundler/installer/parallel_installer_spec.rb
spec/bundler/support/artifice/helpers/artifice.rb