Bu kötümser bir versiyon kısıtlaması . RubyGems, sağlanan sürümün son basamağını artıracak ve maksimum sürüme ulaşana kadar bunu kullanacaktır. Öyleyse ~>0.8.5
anlamsal olarak eşdeğerdir:
gem "cucumber", ">=0.8.5", "<0.9.0"
Bunu düşünmenin kolay yolu, son rakamın keyfi bir değere yükselmesi konusunda sorun yaşamamanızdır, ancak dizede ondan öncekiler sağladığınızdan daha büyük olamaz. Bu nedenle ~>0.8.5
, herhangi bir değer üçüncü basamak (5) için 5'ten büyük veya ona eşit olması koşuluyla kabul edilebilir, ancak baştaki 0,8 "0,8" olmalıdır.
Örneğin, 0.9 sürümünün bazı önemli değişiklikleri uygulayacağını düşünüyorsanız, ancak 0.8.x sürüm serisinin tamamının sadece hata düzeltmeleri olduğunu biliyorsunuz.
Ancak, basitçe kullanılması ">=0.8.5"
, 0.8.5'ten sonraki (veya buna eşit) herhangi bir sürümün kabul edilebilir olduğunu gösterir. Üst sınır yok.
~>
.