キャッシング
Rigorはコストの高い中間結果——パース済みRBS環境、ファイルごとの解析成果物——をキャッシュするため、変更のないプロジェクトへの2回目以降の実行は高速です。キャッシュは設計上正しいものです: 古い結果を修正するためにキャッシュをクリアする必要はないはずです。このページは、キャッシュの場所が気になるときや領域を解放したいときのためのものです。
キャッシュはオンディスクのディレクトリで、デフォルトではプロジェクトルートからの相対パスで.rigor/cacheです。cache.path設定キーで変更できます:
cache: path: tmp/rigor-cacheキャッシュディレクトリを.gitignoreに追加してください。
エントリーを無効化する条件
Section titled “エントリーを無効化する条件”各エントリーは、その結果が依存するすべてのもののハッシュをキーとしています:
- 入力したソースファイルと
.rbsファイルのコンテンツ、 - 使用中のgem(名前とロックされたバージョン)、
- アクティブなプラグイン(IDとバージョン)、
- 関連する設定。
これらのいずれかが変わると、依存するエントリーは自動的に再計算されます。破損した、または読み取れないエントリーはミスとして扱われ、上書きされます——悪いキャッシュ状態が実行を詰まらせることはありません。
キャッシュはスキーマバージョン管理もされています: キャッシュ形式を変更するRigorのアップグレード後、最初の書き込み可能な実行で古いキャッシュがパージされます。
キャッシュの制御
Section titled “キャッシュの制御”| フラグ | 説明 |
|---|---|
rigor check --no-cache | 永続キャッシュを読み書きせずに実行する。 |
rigor check --clear-cache | キャッシュディレクトリを削除してから実行する。 |
rigor check --cache-stats | 実行終了時にオンディスクキャッシュのインベントリを表示する。 |
キャッシュを恒久的に無効化する設定キーはありません——フラグは実行ごとのトグルです。習慣的に永続キャッシュなしで実行するには、cache.pathを使い捨てのディレクトリに向けてください。
キャッシュは安全に共有できます。並列ワーカープロセス(--workers=N)と同じプロジェクトに対する複数のエディタLSPセッションはアトミックなロック書き込みを通じて協調します。LSPはキャッシュを読み取り専用で開くため、並行して実行中のrigor checkと競合することはありません。
© 2026 TypedDuck. Licensed under CC BY-SA 4.0.