如何判断一个方法是在哪个 Ruby 版本中首次引入的?

jon*_*101 5 ruby

在官方Ruby 文档中或其他地方,是否有一种简单的方法可以查看给定方法首次引入该语言的 Ruby 版本?

我还没有找到这样的资源,看来它显然很有用。

Grz*_*orz 1

您可以尝试在此处查看更改日志https://github.com/ruby/ruby/blob/trunk/doc但看起来他们跳过了一些;)

我能想到的唯一方法是拥有所有主要版本的二进制文件,并在它们上执行代码以查看是否有效。如果你正在寻找,Hash#fetch你可以运行ruby -e 'Hash.new.fetch(0, 0)'每个返回 0 的版本来实现它,其他版本意味着一些错误。你可以用rvm它。

您可以使用 git bisect 将其自动化。但它必须为每次检查编译 ruby​​ 二进制文件,并且一些依赖项可能已经改变,所以我不希望它在第一次尝试时工作:D