Closed kachick closed 2 years ago
@type annotationは書く場所が殆どメソッド内だからなのか、この問題起きたことなかったんで油断してた。YARD の tag も steep の annotation も @ 始まりなので、根っこの部分で衝突するっぽい。 まだ steep の annotation はそんなに無いみたいだけど、 alias_method とか attr_* みたいなマクロっぽいメソッドで定義された物を認識させる際には @dynamic という annotation が必要っぽい。 で、これが YARD(0.9.28) に掛けると warning を吐く。自分は大体 --fail-on-warning を YARD 起動時に付けてるのでCIまで落ちてしまった。
@type
@
alias_method
attr_*
@dynamic
--fail-on-warning
[warn]: Unknown tag @dynamic
えーどうしよっかなーと思ったけれど、YARD はカスタムタグも作れるハッカブルな感じに昔からなってるので取り敢えずこれはカスタムタグだよと教えてあげる事で suppress 出来た。 この手の話が他にも有るからなのか、ドキュメントから隠すというオプションも合って嬉しい。
.yardopts
yardopts
--tag dynamic:"To avoid conflict with rbs(steep) annotation. See https://github.com/soutaro/steep/tree/3994d5af99c458c2799331258fbe463db3b26d9a#2-write-ruby-code" --hide-tag dynamic
まぁなんでも過渡期だからこういう話はちょいちょい起こりそう。
@type
annotationは書く場所が殆どメソッド内だからなのか、この問題起きたことなかったんで油断してた。YARD の tag も steep の annotation も@
始まりなので、根っこの部分で衝突するっぽい。 まだ steep の annotation はそんなに無いみたいだけど、alias_method
とかattr_*
みたいなマクロっぽいメソッドで定義された物を認識させる際には@dynamic
という annotation が必要っぽい。 で、これが YARD(0.9.28) に掛けると warning を吐く。自分は大体--fail-on-warning
を YARD 起動時に付けてるのでCIまで落ちてしまった。えーどうしよっかなーと思ったけれど、YARD はカスタムタグも作れるハッカブルな感じに昔からなってるので取り敢えずこれはカスタムタグだよと教えてあげる事で suppress 出来た。 この手の話が他にも有るからなのか、ドキュメントから隠すというオプションも合って嬉しい。
.
yardopts
まぁなんでも過渡期だからこういう話はちょいちょい起こりそう。