565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
|
# File 'lib/myprecious/python_packages.rb', line 565
def parse_version_str(s)
return s if s.kind_of?(Version)
return s unless parts = VERSION_PATTERN.match(s.downcase)
pre_group = case parts[:pre_group]
when 'alpha' then 'a'
when 'beta' then 'b'
when 'c', 'pre', 'preview' then 'rc'
else parts[:pre_group]
end
return Version.new(
FinalVersion.new(parts[:final]),
epoch: parts[:epoch],
pre: [pre_group, parts[:pre_n]],
post: parts[:post],
dev: parts[:dev],
local: parts[:local],
)
end
|