Composer packageを開発する時に知っておくとよい事


この記事で分かる事

表題の通りです。

記事の作成方針

既にネット上には良質な情報がたくさん上がっていますので、積極的に他記事へのリンクを貼っています。

この記事で新たに分かる事はあまりないと思いますが、体系的にまとまっている記事が少なかったので、この記事が他の良質な情報へのindex的な役割を果たすと良いと思っています。

この記事の公開後、有益な情報を見つけた場合はこの記事に追記を行っていきます。

開発〜公開までの流れ

自作ライブラリをComposer化&Packagistの登録方法 という記事が非常に参考になりました。

公開までの流れはこの記事を読んでもらえればほぼ理解出来るかと思います。

また記事の中で GitHubにtagをpushすると Packagist 側で自動更新する方法が記載されているので設定しておくと非常に便利です。

継続的インテグレーション

以下のサービスを利用します。

.travis.yml の書き方に関しては Building a PHP project を見れば大体は理解出来ます。

カバレッジを集計する為には Coveralls を利用するのですが、その際に php-coveralls を利用すると便利です。

私が公開しているpackage php-json-logger にも設定が記載されているので参考になれば幸いです。

またテストを通過していないPRがマージされる事を防ぐ為にも、テストを通過していないPRはマージ出来ないように設定しておく事をオススメします。

(参考)GitHub のブランチ保護を使用してリスキーなマージを防止する

READMEにBadgeを貼る

Packagist へ公開後であれば下記のサービスでBadgeを色々入手出来ます。

必要な物を選択しREADMEに追記しましょう。

実際に公開したpackage