Chapter 11

WORK-②: パッケージの追加処理を作ってみよう(require)

Hideki Kinjyo
Hideki Kinjyo
2024.12.21に更新

ワークの概要とゴール

2つ目に作るのは、 require フェーズです。

特定のパッケージを使えるように、 とても簡易的なcomposer.json composer.lockを作成できる状態を目指します。
具体的には、決め打ちで psr/logaura/cliを追加できるようにします。


出来上がる予定のパッケージ定義ファイルたち

ワーク2で抑えたいComposerの仕組み

Composerのエッセンスについて、このワークに取り組むことで学べるポイントは次のとおりです。

  1. Packagistからパッケージのメタ情報を取得する仕組み、取得されたデータの構造
  2. composer.jsoncomposer.lock の最低限の内容

本物との差分の例

本物のComposerと異なる点(機能が欠落している要素)は、次のとおりです。

  • 追加するパッケージが持っている依存(孫依存)の解決に対応していない)
  • バージョンの指定に対応していない
  • システム環境の要件などの成約に対応していない
  • Packagist以外のレポジトリに対応していない