545
546
547
548
549
550
551
552
553
554
555
556
557
558
|
# File 'lib/gel/environment.rb', line 545
def self.activate_gem(gem, why: nil)
return if activated_gems[gem.name] && activated_gems[gem.name].version == gem.version
raise LoadError, "already activated #{gem.name} #{activated_gems[gem.name].version}" if activated_gems[gem.name]
gem.dependencies.each do |dep, reqs|
self.gem(dep, *reqs.map { |(qual, ver)| "#{qual} #{ver}" }, why: ["required by #{gem.name} #{gem.version}", *why])
end
lib_dirs = gem.require_paths
@store.prepare gem.name => gem.version
activated_gems[gem.name] = gem
$:.concat lib_dirs
end
|