class Gemdiff::GemUpdater
Attributes
name[R]
Public Class Methods
new(name)
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 7 def initialize(name) @name = name end
Public Instance Methods
clean?()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 31 def clean? git_diff.empty? end
commit()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 23 def commit git_commit end
diff()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 15 def diff git_diff end
reset()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 27 def reset git_reset end
show()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 19 def show git_show end
update()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 11 def update bundle_update end
Private Instance Methods
bundle_update()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 88 def bundle_update `bundle update #{name}` end
commit_message()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 74 def commit_message new_version = version(git_added_line) outdated = OutdatedGem.new(name, new_version, version(git_removed_line)) "Update #{name} to #{new_version}\n\n#{outdated.compare_url}" end
git_add_and_commit_lockfile()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 80 def git_add_and_commit_lockfile `git add Gemfile.lock && git commit -m '#{commit_message}'` end
git_added_line()
click to toggle source
example returns: + rails (4.2.3) or + sass-rails (4.0.3) + sass-rails or + activejob (= 4.2.3) + activejob (4.2.3) + activejob (= 4.2.3)
# File lib/gemdiff/gem_updater.rb, line 64 def git_added_line @git_added_line ||= `git diff | grep ' #{name} (' | grep '+ '` end
git_commit()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 45 def git_commit return false if git_added_line.empty? git_add_and_commit_lockfile true end
git_diff()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 41 def git_diff `git diff` end
git_removed_line()
click to toggle source
example returns:
-
json (1.8.1)
# File lib/gemdiff/gem_updater.rb, line 70 def git_removed_line `git diff | grep ' #{name} (' | grep '\\- '` end
git_reset()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 84 def git_reset `git checkout Gemfile.lock` end
git_show()
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 37 def git_show `git show` end
version(changed_line)
click to toggle source
# File lib/gemdiff/gem_updater.rb, line 51 def version(changed_line) changed_line.split("\n").first.split.last.gsub(/[()]/, "") end