gpt4 book ai didi

ruby-on-rails - 为什么 Gem 在 RubyGems 中提供 ~> AND =>?

转载 作者:数据小太阳 更新时间:2023-10-29 07:15:52 27 4
gpt4 key购买 nike

bcrypt 的 gem 在 https://rubygems.org/gems/bcrypt/versions/3.1.11

显示这种用法

gem 'bcrypt', '~> 3.1', '>= 3.1.11'

为什么悲观算子有两个版本?

我们通常只对其他 gem 使用一个版本

最佳答案

>= 3.1.11是一个“乐观的”版本约束。它说所有的变化来自 3.1.11 on 会工作,但对于版本 4.0.0这不会是真的。

~> 3.1是“悲观的”。这明确排除了可能破坏您的代码的版本。基本上是说 >= 3.1< 4.0 .但是如果你有 ~> 3.1.1 , 它将等于 >= 3.1.1但小于 3.2

如果你想允许使用较新的向后兼容版本但需要特定的错误修复,你可以使用复合要求,如 '~> 3.1', '>= 3.1.11'详见 http://guides.rubygems.org/patterns/#pessimistic-version-constraint 如果您希望允许使用较新的向后兼容版本但需要特定的错误修复,您可以使用复合要求,例如... '~> 2.2', '>= 2.2.1'

关于ruby-on-rails - 为什么 Gem 在 RubyGems 中提供 ~> AND =>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39216863/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com