diff options
| author | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2024-01-19 11:53:45 +0900 |
|---|---|---|
| committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2024-01-19 11:54:17 +0900 |
| commit | 04cf66765a8a9d48baea6d9aee266dc9aa21df27 (patch) | |
| tree | 1df3217ac15249fd5bbec2d374a0badcff9a741a /lib | |
| parent | 7265a5be01c269dcc54550ca8cd8ba1ce780f9ef (diff) | |
Revert "[rubygems/rubygems] Fix activation conflicts when circularly requiring a gem"
This reverts commit db44088c2a92040879386aa5f268db4c858e4e5b.
https://github.com/ruby/ruby/actions/runs/7578672002/job/20641640821
https://github.com/ruby/ruby/actions/runs/7578672002/job/20641641212
https://github.com/ruby/ruby/actions/runs/7578672002/job/20641642031
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/rubygems.rb | 7 | ||||
| -rw-r--r-- | lib/rubygems/core_ext/kernel_require.rb | 8 |
2 files changed, 2 insertions, 13 deletions
diff --git a/lib/rubygems.rb b/lib/rubygems.rb index ad7ab10756..47b1ce69d2 100644 --- a/lib/rubygems.rb +++ b/lib/rubygems.rb @@ -1216,13 +1216,6 @@ An Array (#{env.inspect}) was passed in from #{caller[3]} ## # Find a Gem::Specification of default gem from +path+ - def find_default_spec(path) - @path_to_default_spec_map[path] - end - - ## - # Find an unresolved Gem::Specification of default gem from +path+ - def find_unresolved_default_spec(path) default_spec = @path_to_default_spec_map[path] default_spec if default_spec && loaded_specs[default_spec.name] != default_spec diff --git a/lib/rubygems/core_ext/kernel_require.rb b/lib/rubygems/core_ext/kernel_require.rb index 073966b696..50e3ea89b4 100644 --- a/lib/rubygems/core_ext/kernel_require.rb +++ b/lib/rubygems/core_ext/kernel_require.rb @@ -42,11 +42,7 @@ module Kernel # If +path+ belongs to a default gem, we activate it and then go straight # to normal require - if spec = Gem.find_default_spec(path) - name = spec.name - - next if Gem.loaded_specs[name] - + if spec = Gem.find_unresolved_default_spec(path) # Ensure -I beats a default gem resolved_path = begin rp = nil @@ -64,7 +60,7 @@ module Kernel rp end - Kernel.send(:gem, name, Gem::Requirement.default_prerelease) unless + Kernel.send(:gem, spec.name, Gem::Requirement.default_prerelease) unless resolved_path next |
