Sha256: 8b233740c6e2f5b6d0bb1dd4195478cd26536497dcf392046e581616266f797c
Contents?: true
Size: 973 Bytes
Versions: 17
Compression:
Stored size: 973 Bytes
Contents
class ReleaseChange include ActiveModel::Validations validates :description, :length => 1...255 # validates :tag_slug, :in => ENCODING_PATTERN = /^\[([^\]]*)\] (.*)$/.freeze def initialize(release, tag_slug, description) @release = release @tag_slug = tag_slug @description = description[/^.*$/] end attr_reader :release, :tag_slug, :description class << self def from_s(release, string) new release, *(string.match(ENCODING_PATTERN)[1..2]) end def from_commit(release, commit) message = commit.clean_message[0..255] message[0] = message[0].upcase if message[0] tag = Houston.config.fetch_tag(commit.tags.first) new release, tag.slug, message end end def to_s "[#{tag_slug}] #{description}" end def tag Houston.config.fetch_tag(tag_slug) end def id hash end def marked_for_destruction? false end def _destroy marked_for_destruction? end end
Version data entries
17 entries across 17 versions & 1 rubygems