Ruby's Pessimistic Operator
Do you know Ruby's pessimistic operator? It looks like this:
You've seen it in some
Gemfiles. Here's an example
gem 'rails', '~> 3.0.3' gem 'thin', '~> 1.1'
~> 3.0.3 means that when you
bundle install, you'll get the
highest-released gem version of
rails between the range
>= 3.0.3 and
~> 1.1 means that when you
bundle install, you'll get the highest-released
gem version of
thin between the range
>= 1.1 and
Using the pessimistic operator in combination with consistent Semantic versioning by gem authors, we can theoretically achieve better stability in our dependencies.
Read more on the tradeoffs or read our current guidelines on Bundler.