~>
(the optimistic operator) is used when you want to specify a version 'up to next major | minor | patch'. For example:
~> 0.1.2
will get you a version up to 0.2 (but not including 0.2 and higher)
~> 0.1
will get you a version up to 1.0 (but not including 1.0 and higher)
~> 0
will get you a version of 0 and higher (same as if it was omitted)
where 0.1.2
would mean 'I want this exact version'
Here is some more info on this
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…