在Ruby gem依赖项中,tilde-than-than(〜>)是什么意思?

jwf*_*arn 136 ruby rubygems

~>在Ruby gem依赖关系的上下文中意味着什么?

例如,在RubyMine IDE中打开旧项目时,我收到此消息

Gems required for project are not attached:
arel (~> 2.0.2),
rspec-expectation (~> 2.5.0)...

我已经在Ruby世界的其他地方看到了这种波形符号(它不是特定于RubyMine).这个操作符的名称是否比笨拙的波形符号更大

sep*_*p2k 191

它表示"等于或大于最后一位",例如~> 2.3意味着"等于2.3或大于2.3,但小于3.0",而~> 2.3.0意味着"等于2.3.0或大于2.3.0,但更少比2.4.0".

您可以将其发音为"大于".

§悲观版本约束

  • **大约**!这非常有意义 - "〜"表示"近似",">"表示"大于".我一直以为`〜>`应该看起来像一个箭头,并没有真正理解符号的特殊选择......突破. (10认同)
  • 请注意,“~> 2”和“~> 2.0”的行为相同,两者都会生成与“>= 2.0”和“< 3.0”匹配的版本 (2认同)