module RemindMe::Utils::Versions
Constants
- INSTALLED_GEMS
Public Instance Methods
compare_version_numbers(target_version, current_version, comparator)
click to toggle source
# File lib/remind_me/utils/versions.rb, line 8 def compare_version_numbers(target_version, current_version, comparator) current_version.__send__(condition_comparators[comparator.to_sym], target_version) end
condition_comparators()
click to toggle source
# File lib/remind_me/utils/versions.rb, line 20 def condition_comparators %i[lt lte gt gte eq].zip(%i[< <= > >= ==]).to_h end
gem_installed?(gem)
click to toggle source
# File lib/remind_me/utils/versions.rb, line 12 def gem_installed?(gem) INSTALLED_GEMS.key?(gem.to_s) end
invalid_condition_message(source_location, condition)
click to toggle source
# File lib/remind_me/utils/versions.rb, line 31 def invalid_condition_message(source_location, condition) "REMIND_ME comment on #{source_location} has invalid condition: #{condition}, only "\ 'lt, lte, gt, gte, eq are possible, or you can omit it entirely (it will default to eq)' end
valid_condition?(condition)
click to toggle source
# File lib/remind_me/utils/versions.rb, line 16 def valid_condition?(condition) condition_comparators.keys.flat_map { |x| [x, x.to_s] }.include?(condition) end
valid_version_string?(version_string)
click to toggle source
# File lib/remind_me/utils/versions.rb, line 24 def valid_version_string?(version_string) Gem::Version.new(version_string) true rescue ArgumentError => _e false end