Composer

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Composer and the translation is 59% complete.
Outdated translations are marked like this.
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎magyar • ‎português • ‎русский • ‎中文 • ‎日本語

Composer est un gestionnaire de dépendances pour les bibliothèques PHP. À partir de MediaWiki 1.25 , les dépendances des bibliothèques externes du noyau de MediaWiki sont gérées par Composer. En plus, il peut être utilisé pour gérer l'installation des extensions MediaWiki (depuis MediaWiki 1.22 ). However this is currently not well supported. This may change in the future.

Installer Composer

Sous Unix/Linux et macOS

Il existe plusieurs manières d'accéder à install Composer, à côté de la plus évidente, sudo apt install composer :

Only Composer 1.x is supported by MediaWiki 1.31, 1.35.0 and 1.35.1. Pour récupérer la dernière version stable de Composer 1.x :

wget -cO - https://getcomposer.org/composer-1.phar > composer.phar

Composer 2.x and Composer 1.x are supported by MediaWiki >= 1.35.2 (along with the REL1_36 branch and master). To grab the latest Composer 2.x stable release:

wget -cO - https://getcomposer.org/composer-2.phar > composer.phar

Pour les utilisateurs sous macOS, vous pouvez utiliser Homebrew pour installer Composer. Note this will install version Composer 2.x, so depending on the version of MediaWiki you are using, you may need to follow the wget instructions above instead to download Composer 1.x. To install using brew:

brew install composer

Si cela ne fonctionne pas, ou que vous n'avez pas installé Homebrew, vous pouvez essayer :

php -r "readfile('https://getcomposer.org/installer');" | php

Jenkins et le distributeur d'extensions utilisent la copie de composer contenue dans le répertoire Git « integration/composer » .

Une fois composer installé, vous pouvez exécuter les commandes via le fichier phar téléchargé :

php composer.phar someCommand

Vous pouvez déplacer le fichier phar dans votre chemin de sorte qu'il soit utilisé comme un exécutable classique :

mv composer.phar /usr/local/bin/composer
composer someCommand

Si la commande mv échoue à cause des droits d'accès, exécutez-la de nouveau avec sudo.

sudo mv composer.phar /usr/local/bin/composer
composer someCommand

Sous Windows

Téléchargez simplement et exécutez l'installeur à partir de la page de téléchargement. Si vous préférez une installation manuelle, vous pouvez suivre les étapes précédentes sauf que Windows ne dispose pas de wget (ni d'APT i de Homebrew) par défaut, et qu'il n'existe pas de répertoire /usr/local/bin . In these cases, you can just download composer-1.phar in your web browser and then rename it to composer.phar.

Upgrading Composer

Composer 1.x

If you want to upgrade Composer to the latest 1.x stable (or downgrade from 2.x stable), you can use:

composer self-update --1

If the update command fails due to permissions, execute it again with sudo.

sudo composer self-update --1

If you are on a really old version of composer, it may not have the --1 parameter. In this case, you might want to run self-update twice. The first may update it to 2.x, so the second will downgrade it to the latest version of 1.x.

composer self-update
composer self-update --1

Composer 2.x

If you are using Composer 1.x, and want to upgrade to Composer 2.x (and are using an appropriate version of MediaWiki, such as >= 1.35.2), you can use:

composer self-update --2

If the update command fails due to permissions, execute it again with sudo.

sudo composer self-update --2

Utilisation dans le noyau MediaWiki

MediaWiki 1.25+ dépend de quelques bibliothèques externes gérées par Composer. Composer crée un chargeur automatique sur vendor/autoload.php, qui est inclus par WebStart.php.

Les dépendances gérées par Composer sont regroupées dans des distributions tarball de MediaWiki et des extensions afin que les administrateurs système n'aient pas besoin d'utiliser directement Composer. Lorsque vous installez MediaWiki avec Git, les dépendances déclarées dans $IP/composer.json peuvent soit être installées localement en exécutant composer update --no-dev ou le référentiel mediawiki/vendor.git peut être cloné pour fournir les mêmes bibliothèques que celles utilisées sur la grappe de production Wikimedia.[1]

$IP désigne le répertoire d'installation (or "chemin" path en anglais) de votre installation MédiaWiki, le répertoire qui contient LocalSettings.php , index.php etc..

Utilisation du plugin composer-merge

$IP désigne le répertoire d'installation (or "chemin" path en anglais) de votre installation MédiaWiki, le répertoire qui contient LocalSettings.php , index.php etc..

Le noyau de MediaWiki « est propriétaire de » $IP/composer.json et modifiera le contenu de ce fichier dans les mises à jour par tarball ou gérées par Git. Afin de permettre aux installations locales d'utiliser Composer pour charger des bibliothèques facultatives et/ou gérer les extensions avec Composer, un plugin spécial pour Composer appelé composer-merge-plugin a été développé.[2] Ce plugin et la configuration composer.json du noyau de MediaWiki permettent à ce qu'un déploiement local puisse ajouter les extensions et les bibliothèques requises à un fichier composer.local.json dans le répertoire racine de MediaWiki.

composer.local.json peut également être utilisé pour installer les bibliothèques gérées par Composer et qui sont nécessaires aux extensions qui n'ont pas été installées avec Composer. Cela n'est nécessaire que lorsque les extensions ne sont pas installées à partir des archives générées par Extension Distributor.

Pour permettre à Composer de découvrir et de traiter les fichiers composer.json pouvant être inclus dans n’importe laquelle de vos extensions installées localement, ajoutez quelque chose comme ceci à $IP/composer.local.json :

{
    "extra": {
        "merge-plugin": {
            "include": [
                "extensions/*/composer.json",
                "skins/*/composer.json"
            ]
        }
    }
}

Après toute modification de composer.local.json, vous devez supprimer composer.lock avant d'exécuter de nouveau composer install de sorte que Composer puisse recalculer les dépendances et que les modifications puissent être réalisées.

Ressources

Références