class PrChangelog::Releases

Attributes

git_proxy[R]

Public Class Methods

new(git_proxy = GitProxy.new) click to toggle source
# File lib/pr_changelog/releases.rb, line 7
def initialize(git_proxy = GitProxy.new)
  @git_proxy = git_proxy
end

Public Instance Methods

last_release() click to toggle source
# File lib/pr_changelog/releases.rb, line 11
def last_release
  sorted_tags.last
end
last_release_pair() click to toggle source
# File lib/pr_changelog/releases.rb, line 15
def last_release_pair
  sorted_tags.last(2)
end

Private Instance Methods

sorted_tags() click to toggle source
# File lib/pr_changelog/releases.rb, line 21
def sorted_tags
  git_proxy.git_tags_list.sort_by { |tag| tag_value(tag) }
end
tag_value(tag) click to toggle source
# File lib/pr_changelog/releases.rb, line 25
def tag_value(tag)
  components = tag.split('.')
  components[0].to_i * 100_000 + components[1].to_i * 1_000 + components[2].to_i
end