Why does the Gemfile semantic versioning operator (~>) produce inconsistent results with one number?
The gemspec semantic versioning operator ~> (aka twiddle-wakka , aka pessimistic operator) allows a gem version to be constrained yet allow some upgrades. I have often seen that it can be read as: "~> 3.1" => "Any version 3.x, but at least 3.1" "~> 3.1.1" => "Any version 3.1.x, but at least 3.1.1" But with one number, this rule breaks down: "~> 3" => "Any version x, but at least 3" *NOT TRUE!* "~> 3" => "Any version 3.x" *True. But why?* If I wanted "Any version 3.x", I could just use "~> 3.0", which is consistent. As it stands, this change of operation at one number is inconsistent and