lib/semantic/version.rb in semantic-1.6.0 vs lib/semantic/version.rb in semantic-1.6.1

- old
+ new

@@ -4,11 +4,12 @@ include Comparable SemVerRegexp = /\A(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][a-zA-Z0-9-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?\Z/ - attr_accessor :major, :minor, :patch, :pre, :build + attr_accessor :major, :minor, :patch, :pre + attr_reader :build def initialize version_str v = version_str.match(SemVerRegexp) raise ArgumentError.new("#{version_str} is not a valid SemVer Version (http://semver.org)") if v.nil? @@ -24,10 +25,10 @@ def build=(b) @build = (!b.nil? && b.empty?) ? nil : b end def identifiers(pre) - array = pre.split(".") + array = pre.split(/[\.\-]/) array.each_with_index {|e,i| array[i] = Integer(e) if /\A\d+\z/.match(e)} return array end def compare_pre(prea, preb)