Gems and Bundler
Lockfile Versions
A lockfile records the exact version chosen after dependency resolution.
Lockfile Versions
lockfile_versions.rb
locked_text =
locked_version = Gem::Version.new(locked_text)
requirement = Gem::Requirement.new("~> 3.2")
compatible = requirement.satisfied_by?(locked_version)
status = compatible ? "compatible" : "review"
puts "locked=#{locked_version}"
puts "requirement=~> 3.2"
puts "status=#{status}"
locked_text =
locked_version = Gem::Version.new(locked_text)
requirement = Gem::Requirement.new("~> 3.2")
compatible = requirement.satisfied_by?(locked_version)
status = compatible ? "compatible" : "review"
puts "locked=#{locked_version}"
puts "requirement=~> 3.2"
puts "status=#{status}"
locked_text =
locked_version = Gem::Version.new(locked_text)
requirement = Gem::Requirement.new("~> 3.2")
compatible = requirement.satisfied_by?(locked_version)
status = compatible ? "compatible" : "review"
puts "locked=#{locked_version}"
puts "requirement=~> 3.2"
puts "status=#{status}"
lockfile version
Checking a locked version against a requirement explains whether the selected version still fits.