年中アイス

いろいろつらつら

homebrewのformulaフォーマットをチェックする

ふとQiita見てたら、homebrewで配布するという記事に、auditでフォーマットチェックするといいよってコメントがついていました。 goでcliのコマンドを作ってhomebrewで使えるようにしてみた - Qiita

rnzooもrnsshも数年前にpecoを参考に作っただけで、チェックも知らなかったので実行してみました。

homebrew-rnzooのformulaファイルに試してみました。

brew audit --strict --online rnzoo.rb

まず、チェック用に、rubocop のインストールが行われました。ログは記録忘れ。brewで入るようで、ローカルのgem listには出てこないです。結果は、以下の通り。

rnzoo:
  * A `test do` test block should be added
  * `require "formula"` is now unnecessary
  * C: 5: col 12: Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.
  * C: 10: col 12: Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.
  * C: 14: col 17: Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.
  * W: 19: col 5: Useless assignment to variable - `msg`.
Error: 6 problems in 1 formula
  • test doはテスト用のブロックを入れるということで、特にないのでとりあえずブロックを作るだけ。
  • require "formula"はもういらないらしい(古いやつみたい)
  • Cの奴は、\使わないなら、"使うようにということで"に統一
  • Wの奴は、無駄な変数msgに割り当ててるとのことで、変数は除去

test do適当に追加したら、cavertstest doより前じゃないといけないとのこと。

* `caveats method` (line 26) should be put before `test block`

対応したコミットはこちら

セルフチェックできる仕組みいいですね。 homebrewの記事、新規に書いてアップデートしないとかなー。 reiki4040.hatenablog.com

参考