WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

composer.jsonのフィールドについて

   

composer.jsonのフィールド一覧

name パッケージの名前
description パッケージの概略
version パッケージのバージョン
type パッケージのタイプ
keyword(optional) パッケージのキーワード
homepage(optional) パッケージにWeb Siteがある場合はそのURL
license(optional) パッケージのライセンス

name

パッケージを公開するときに設定が必要。
ベンダー名とプロジェクト名を/で区切って記載する。

test-corp/test-project

description

1行ほどで記載する。
これもパッケージを公開するときに設定が必要。

version

バージョンの表記規則は決まっていて、`X.Y.Z`もしくは`vX.Y.Z`のような書式である必要があり、サフィックスは -dev, -patch, -alpha, -beta もしくは -RCである必要がある。

type

この値でインストールされる際の挙動が異なる。
パッケージをインストールするときに特別な処理が必要なら、適宜タイプの選択を行う必要がある。

library, project, metapackage, composer-pluginの4つがサポートされていて、デフォルトでは`Library`。それ以外は調査中。

Library 単にvendor/にファイルがコピーされる
project プロジェクトというよりはライブラリに近く、
metapackage
composer-plugin

※英語が読めません・・・
Composer ドキュメント日本語訳

license

必須ではないが記載することが推奨されている。

validateコマンド

`composer validate`でcomposer.jsonが正しいフォーマットであるかを確認できる。
引数を省略した場合、カレントディレクトリのcomposer.jsonが検証対象となるが、引数を指定すれば指定されたパスのファイルが検証対象となる。

参考資料

 - PHP