Sha256: 5a54d300d632521662fb681e8259ac787057c6a9c89aafcca955e7d1566f0284
Contents?: true
Size: 1.14 KB
Versions: 2
Compression:
Stored size: 1.14 KB
Contents
module Bumbler module Bundler # Returns which gem a require maps to, or nil. def self.gem_for_require(path) self.read_bundler_environment if @require_map.nil? return @require_map[path] end def self.require_finished(path, load_time) self.read_bundler_environment if @gem_state.nil? # Tick it off for the gem. gem_name = self.gem_for_require(path) return unless gem_name @gem_state[gem_name][path] = true if @gem_state[gem_name].values.all? Bumbler::Progress.item_finished(:bundler, gem_name, load_time) end end def self.start! self.read_bundler_environment end private def self.read_bundler_environment @require_map = {} @gem_state = {} ::Bundler.environment.current_dependencies.each do |spec| @gem_state[spec.name] = {} Array(spec.autorequire || spec.name).each do |path| @require_map[path] = spec.name @gem_state[spec.name][path] = false end Bumbler::Progress.register_item(:bundler, spec.name) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
bumbler-0.1.1 | lib/bumbler/bundler.rb |
bumbler-0.1.0 | lib/bumbler/bundler.rb |