$shibayu36->blog;

クラスター株式会社のソフトウェアエンジニアです。エンジニアリングや読書などについて書いています。

Perlで、あるファイルが必要のないモジュールをuseしてないか調べるスクリプト

Test::UsedModulesを使うと使っていないモジュールを検出できる。ユーティリティとしてリファクタリングのあとに、必要なくなったuseをサクッと調べられると、便利なのじゃないかと考えてcheck-perl-used-modulesというコマンドを作ってみた。

check-perl-used-modulesというファイルを適当にPATHが通っているところに用意する。

#!/bin/bash

path=$(git ls-files | peco)
if [ -z "$path" ]; then
    exit
fi
perl -MTest::UsedModules -MTest::More -e "used_modules_ok('$path');done_testing()"

そうするとgitのレポジトリ内からファイルを絞り込んで、チェックしてくれる。こんな感じ。

やってみて思ったけど、やりたいことは今編集しているファイルが不要なuseをしてないかチェックしたいということだった。Emacsでやれという感じなのでまた今度作ろうと思う。