Ruby IPAddr类接受错误的IPv6地址字符串

sdnqo3pr  于 2023-06-05  发布在  Ruby
关注(0)|答案(1)|浏览(834)

我们正在升级Ruby版本v2.7.3 -> v3.1.3
我们的一个测试用例与有效的ipv6地址字符串有关,请检查以下内容

  1. # ruby 2.7.3
  2. IPAddr.new('fe80::85e:7530:69ec:9074%en0').ipv6?
  3. => IPAddr::InvalidAddressError (invalid address: fe80::85e:7530:69ec:9074%en0)
  4. # ruby 3.1.3
  5. IPAddr.new('fe80::85e:7530:69ec:9074%en0').ipv6?
  6. => true

这真的是一个bug还是我错过了什么?请帮帮我。

mtb9vblg

mtb9vblg1#

这真的是一个bug还是我错过了什么?
这曾经是ipaddr中的an issuedefault gem,直到version 1.2.2,其中was fixedversion 1.2.3中,以便完全符合RFC 4007和RFC 6874。ipaddr默认gem的1.2.3版本是Ruby 3.1.0的一部分。
所以你说得对这是一个bug(尽管观点不同),在ipaddr 1.2.3 / Ruby 3.1.0中得到了修复。

相关问题