mini がプロジェクトにどう適応するか

mini はコードを読み、プロジェクトに合った場所でバージョンを引き上げます — 言語をまたいで、妥当なフォールバックで。

言語を認識するプロジェクトマップ

mini map は、機械可読のプロジェクトマップを単一の「プロジェクト言語」からではなく、拡張子ごとにファイル単位で構築します。プロジェクトは複数の言語を混在でき、認識された各ファイルがマップされます。対応する拡張子は次のとおりです:

.ts  .tsx  .php  .rs  .py  .go  .java  .cs  .kt  .kts  .swift  .rb

認識されない拡張子のファイルや、vendor/、target/、var/cache/、node_modules/ のようなベンダーやビルドのディレクトリはスキップされます — そのためマップはあなた自身のソースに集中したままになります。

バージョンが置かれる場所

--bump(および任意で --push)でフェーズを閉じると、mini は新しいバージョンをあなたのプロジェクトに合うファイルに書き込みます。下記のソースは固定の順序で試され、すでに利用可能なバージョンを持つ最初のものが選ばれます — 変更されるのはその単一ファイルだけです。

ファイル mini がここにバージョンを書き込むとき
package.json JavaScript / TypeScript プロジェクト — package.json の "version" フィールド。
Cargo.toml Rust プロジェクト — Cargo.toml の [package] セクション内のバージョン。
pyproject.toml Python プロジェクト — pyproject.toml の [project] または [tool.poetry] 内のバージョン。
setup.py setup.py を使う Python プロジェクト — version="…" 引数。
composer.json PHP プロジェクト — composer.json にすでに "version" フィールドがある場合のみ(mini は決して追加しません)。
__version__ Python プロジェクト — よくある場所の __version__ = "…" 行。
VERSION 認識されるマニフェストがないプロジェクト — x.y.z の 1 行を持つ単純な VERSION ファイル。まだ存在しない場合は 0.1.0 で作成されます。

書き込みは常にバージョン値の純粋なテキスト置換で、JSON や TOML の再整形はしないので、変更は 1 行のままです。

例: このサイト自体は composer.json にバージョンフィールドを持たない PHP/Symfony プロジェクトなので、引き上げは VERSION フォールバックファイルに落ちます。