Module: YAVDB::Utils::SemVer

Defined in:
lib/yavdb/utils/semver.rb

Constant Summary collapse

SEMANTIC_INTERVAL_REGEX =
%r{([(\[].+?[)\]])}

Class Method Summary collapse

Class Method Details

.clean_versions(versions) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/yavdb/utils/semver.rb', line 23

def self.clean_versions(versions)
  return if versions.nil? || (!versions.is_a?(String) && !versions.is_a?(Array))

  versions = to_array(versions).map do |version|
    if semantic_interval?(version)
      convert_to_semver(version)
    else
      split_versions(version)
    end
  end

  versions
    .flatten
    .map(&:strip)
    .select { |str| str != '-' && !str.empty? }
end