Composer/ja

Composer (コンポーザー) は、PHP のライブラリの依存関係マネージャーです. さらに、MediaWiki 拡張機能のインストールの管理にも使用できます ( 以降で利用できます). 以降、MediaWiki コアの外部ライブラリの依存関係は Composer で管理されています.

On Unix/Linux and macOS
install Composer には、最も明白な方法である  に加えて、複数の方法があります:

最新のスナップショットを取得するには以下を実行します:

これは現行の master のスナップショットをダウンロードします. このスナップショットは30日間で有効期限が切れます. 1.0.0-alpha のようにアルファ版「リリース」の phar もあります.

OS X を使用している場合は、composer のインストールに Homebrew を使用できます:

動作しない場合、または Homebrew がインストールされていない場合は、以下をお試しください:

Jenkins and the extension distributor use the copy of composer contained in the "integration/composer" git repo.

composer をインストールすると、ダウンロードした phar 経由で以下のようにコマンドを実行できるようになります:

phar をパスが通っている場所に移動すると、通常の実行可能ファイルと同様に使用できます:

mv コマンドが権限が原因で失敗した場合は、sudo を付けてもう一度お試しください.

On Windows
Just download and run the installer from the download page. If you prefer manual installation, you can follow the above steps except that Windows doesn’t have wget (or APT or Homebrew) by default, and there is no /usr/local/bin directory.

MediaWiki コアでの使用法
MediaWiki 1.25 以降は、Composer で管理されているいくつかの外部ライブラリに依存しています. Composer は、 によってインクルードされる自動ローダーを   に作成します.

Composer managed dependencies are bundled into tarball distributions of MediaWiki and extensions so system administrators do not need to use composer directly. When installing MediaWiki using Git, dependencies declared in  can either be installed locally by running   or the   repository can be cloned to provide the same libraries used on the Wikimedia production cluster.

composer-merge-plugin の使用
MediaWiki core "owns"  and will change the contents of that file in both tarball and Git managed updates. In order to allow local installs to use Composer to load optional libraries and/or manage extensions with Composer, a special plugin for Composer named composer-merge-plugin was developed. This plugin and the MediaWiki core  configuration allow a local deployment to add required extensions and libraries to a file   inside the root MediaWiki directory.

can also be used to install Composer managed libraries that are needed by extensions that are not installed using Composer themselves. This is only needed when the extensions are not installed from tarballs generated by Extension Distributor.

To enable Composer to discover and process the  files that may be included in any and all of your locally installed extensions, add something like this to  :

After any changes to, you need to remove   before running   again so that Composer will recalculate the dependencies and the changes will take effect.

リソース

 * List of extensions that can or must be installed with Composer
 * List of extensions that can or must be installed with Composer