End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
Gem::Commands::UninstallCommand#uninstall_specific
uninstall_specific
lib/rubygems/commands/uninstall_command.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.0.5/lib/rubygems/commands/uninstall_command.rb, line 148
def uninstall_specific
deplist = Gem::DependencyList.new
original_gem_version = {}
get_all_gem_names_and_versions.each do |name, version|
original_gem_version[name] = version || options[:version]
gem_specs = Gem::Specification.find_all_by_name(name, original_gem_version[name])
say("Gem '#{name}' is not installed") if gem_specs.empty?
gem_specs.each do |spec|
deplist.add spec
end
end
deps = deplist.strongly_connected_components.flatten.reverse
gems_to_uninstall = {}
deps.each do |dep|
unless gems_to_uninstall[dep.name]
gems_to_uninstall[dep.name] = true
unless original_gem_version[dep.name] == Gem::Requirement.default
options[:version] = dep.version
end
uninstall_gem(dep.name)
end
end
end
No documentation available