check-deprule 0.0.3

linter for dependency constraints in Cargo.toml
Documentation

check-dependency-rule

English version is here.

使い方

dependency_rules.toml

下記のようなcrate間の依存ルールを記載したファイルを作成する。

[[rules.rule]]
package = "core"
forbidden_dependencies = ["handler"]

[[rules.rule]]
package = "interactor"
forbidden_dependencies = [
    "database",
    "handler",
]

この時corepackageはhandlerをdenpendenciesに もってはいけないというルールを定義している。

command

CLIアプリケーションのインストール

cargo install check-deprule

ルールを満たさないパッケージが赤字で示されます。

check-deprule

remaining tasks

  • ルール定義ファイルの指定
  • ルールをパッケージ名だけではなく、柔軟に記載できるようにする
  • clapを使ったCLIアプリケーション化
  • 違反パッケージの特定とdepenndency treeの出力を分ける

Special Thanks