1
0
Fork 0
mirror of https://github.com/puma/puma.git synced 2022-11-09 13:48:40 -05:00
puma--puma/lib/puma/gems.rb
2011-09-22 19:24:43 -07:00

22 lines
624 B
Ruby

module Puma
module Gems
class << self
def require(library, version = nil)
begin
Kernel.require library
rescue LoadError, RuntimeError => e
begin
# ActiveSupport breaks 'require' by making it always return a true value
Kernel.require 'rubygems'
version ? gem(library, version) : gem(library)
retry
rescue Gem::LoadError, LoadError, RuntimeError
# puts "** #{library.inspect} could not be loaded" unless library == "puma_experimental"
end
end
end
end
end
end