class Pessimize::Pessimizer
Attributes
file_manager[RW]
gemfile[RW]
lock_parser[RW]
options[RW]
Public Class Methods
new(file_manager, options)
click to toggle source
# File lib/pessimize/pessimizer.rb, line 7 def initialize(file_manager, options) self.file_manager = file_manager self.options = options self.lock_parser = GemfileLockVersionParser.new end
Public Instance Methods
run()
click to toggle source
# File lib/pessimize/pessimizer.rb, line 13 def run collect_gems_and_versions update_gem_versions write_new_gemfile puts "~> written #{gemfile.gems.length} gems to Gemfile, constrained to #{options[:version_constraint]} version updates\n\n" end
Protected Instance Methods
collect_gems_and_versions()
click to toggle source
# File lib/pessimize/pessimizer.rb, line 27 def collect_gems_and_versions self.gemfile = Gemfile.new(file_manager.gemfile_contents) lock_parser.call File.open(file_manager.gemfile_lock) end
sep(num = 1)
click to toggle source
# File lib/pessimize/pessimizer.rb, line 23 def sep(num = 1) "\n" * num end
update_gem_versions()
click to toggle source
# File lib/pessimize/pessimizer.rb, line 32 def update_gem_versions VersionMapper.new.call(gemfile.gems, lock_parser.versions, options[:version_constraint]) end
write_new_gemfile()
click to toggle source
# File lib/pessimize/pessimizer.rb, line 36 def write_new_gemfile File.delete(file_manager.gemfile) File.open(file_manager.gemfile, 'w') do |f| f.write gemfile.to_s end end