RubyGems compares version strings by their numeric parts, not by plain alphabetical order.

Gem Versions

gem_versions.rb
version_text = 
current = Gem::Version.new(version_text)
baseline = Gem::Version.new("3.2.0")

new_enough = current >= baseline
comparison = new_enough ? "ok" : "old"

puts "current=#{current}"
puts "baseline=#{baseline}"
puts "comparison=#{comparison}"
version_text = 
current = Gem::Version.new(version_text)
baseline = Gem::Version.new("3.2.0")

new_enough = current >= baseline
comparison = new_enough ? "ok" : "old"

puts "current=#{current}"
puts "baseline=#{baseline}"
puts "comparison=#{comparison}"
version_text = 
current = Gem::Version.new(version_text)
baseline = Gem::Version.new("3.2.0")

new_enough = current >= baseline
comparison = new_enough ? "ok" : "old"

puts "current=#{current}"
puts "baseline=#{baseline}"
puts "comparison=#{comparison}"
gem version `Gem::Version` turns version text into comparable version objects.