【发布时间】:2020-02-22 01:21:12
【问题描述】:
我正在将 Sorbet 添加到一个相当普通的中小型 Rails 应用程序中。
在运行设置脚本srb init 时,我得到了这个错误确认:
Adding `typed:` sigils did not converge after 50 tries.
Would you like to continue anyway? [Y/n]
我选择了“Y”。脚本随后停顿了一会儿,报告说尝试了 100 次后不成功,但随后又继续说“完成”。我不清楚这是否意味着它有效。
但是,当我运行bundle exec srb tc 时,出现了很多问题:
它似乎没有添加任何印记,我认为它会
好像是报核心类有问题:
https://github.com/sorbet/sorbet/tree/645cc5344236f8e32d18320dd728ea6954814229/rbi/core/class.rbi#L136: The corresponding argument arg0 in the previous definition was not a splat argument
136 | def instance_methods(arg0=T.unsafe(nil)); end
- 它似乎在报告我无法控制的 gem 中的问题,比如 activerecord:
sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi:464: Method ActiveRecord::Base.before_create redefined without matching argument count. Expected: 2, got: 3 https://srb.help/4010
我必须手动忽略这些项目吗?我开始这样做,但我认为这也不正确。总的来说,我不确定设置是否有效,或者我收到的初始错误是否是问题所在。
版本信息:
sorbet (0.5.5384)
sorbet-runtime (0.5.5384)
sorbet-static (0.5.5384-universal-darwin-14)
rails-6.0.2.1
ruby 2.6.4p104
macOS Mojave
MacBook Pro 2017
谢谢
【问题讨论】:
-
我注意到了这一点:
bundle exec srb tc --suggest-typed --error-white-list=7022 --typed=strict --silence-dev-message -a引发了段错误:/Users/bobwork/.rbenv/versions/2.6.4/lib/ruby/gems/2.6.0/gems/sorbet-0.5。 5384/bin/srb:第 46 行:39783 分段错误:11 "${sorbet}" "${args[@]}"
标签: sorbet