# File lib/semantic_puppet/version.rb, line 17 def parse(ver) match, major, minor, patch, prerelease, build = *ver.match(/\A#{REGEX_FULL}\Z/) if match.nil? raise _("Unable to parse '%{version}' as a semantic version identifier") % {version: ver} end prerelease = parse_prerelease(prerelease) if prerelease # Build metadata is not yet supported in semantic_puppet, but we hope to. # The following code prevents build metadata for now. #build = parse_build_metadata(build) if build if !build.nil? raise _("'%{version}' MUST NOT include build identifiers") % {version: ver} end self.new(major.to_i, minor.to_i, patch.to_i, prerelease, build) end