将Sorbet RBI文件添加到gems

时间:2019-11-25 01:06:00

标签: ruby rubygems sorbet

我正在研究将Sorbet RBI文件添加到我维护的gem所需的时间,并且我正在尝试找出适当的过程。不过,我不想将Sorbet作为gem的运行时依赖项,因此这意味着将所有类型信息存储在单独的RBI文件中。

我目前对此的查询是:

  • 我是否在rbi处添加了自己的./sorbet/rbi/gemname.rbi文件?如果我将Sorbet打包到已发布的gem文件中,那么默认情况下,Sorbet会出现在哪里?
  • 是否应该在发布的gem文件中包含其他自动生成的RBI文件(在./sorbet/rbi/sorbet-typed./sorbet/rbi/hidden-definitions中)?
  • 即使类型信息分为RBI文件,我也应该在我的gem文件中包含typed杂注注释吗?如果是这样,它应该反映注释所在文件中的类型信息,还是应该反映通过RBI文件可用的类型信息?

1 个答案:

答案 0 :(得分:0)

基于对the custom RBI content的阅读(我也有类似的经历),他们建议他们将定义写入gem根目录的rbi目录中。我认为它们不应该进入sorbet目录,因为该文件变得非常大(而且您不希望gem用户必须下载重复定义的MB)。

我一直将typed标记放在我有定义的库文件中,并且将RBI文件分开。 srb tc提取定义(并进行适当的投诉)。这意味着我不需要将冰糕添加为宝石依赖项(开发除外)。