This page is a translated version of the page Composer and the translation is 38% complete.
Outdated translations are marked like this.

Composer is a dependency manager for PHP libraries. MediaWiki 1.25 দিয়ে শুরু করে, মিডিয়াউইকি কোরের বাহ্যিক লাইব্রেরি নির্ভরতা কম্পোজারের মাধ্যমে পরিচালিত হচ্ছে। উপরন্তু, এটি মিডিয়াউইকি এক্সটেনশনের ইনস্টলেশন পরিচালনা করতে ব্যবহার করা যেতে পারে (MediaWiki 1.22 থেকে উপলব্ধ)। যদিও এটি বর্তমানে ভালভাবে সমর্থিত নয়। এটি ভবিষ্যতে পরিবর্তন হতে পারে।

কম্পোজার ইনস্টল করা হচ্ছে

Unix/Linux এবং macOS এ

কম্পোজার ইনস্টল করার একাধিক উপায় রয়েছে, সবচেয়ে সুস্পষ্ট উপায় ছাড়াও, sudo apt install composer

শুধুমাত্র কম্পোজার 1.x মিডিয়াউইকি 1.31, 1.35.0 এবং 1.35.1 দ্বারা সমর্থিত। সর্বশেষ কম্পোজার 1.x স্থিতিশীল প্রকাশ পেতে:

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

কম্পোজার 2.x এবং কম্পোজার 1.x মিডিয়াউইকি >= 1.35.2 (REL1_36 শাখা এবং মাস্টার সহ) দ্বারা সমর্থিত। সর্বশেষ কম্পোজার 2.x স্থিতিশীল প্রকাশ পেতে:

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

MacOS-এর ব্যবহারকারীদের জন্য, আপনি কম্পোজার ইনস্টল করতে Homebrew ব্যবহার করতে পারেন। মনে রাখবেন এটি কম্পোজার 2.x সংস্করণ ইনস্টল করবে, তাই আপনি মিডিয়াউইকির যে সংস্করণটি ব্যবহার করছেন তার উপর নির্ভর করে, আপনাকে কম্পোজার 1.x ডাউনলোড করার পরিবর্তে উপরে wget নির্দেশাবলী অনুসরণ করতে হবে। brew ব্যবহার করে ইনস্টল করতে:

brew install composer

যদি এটি কাজ না করে, বা আপনার হোমব্রু ইনস্টল না থাকে, আপনি চেষ্টা করতে পারেন:

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

টুলফার্জ এবং এক্সটেনশন ডিস্ট্রিবিউটর "$কম্পোজার" গিট রেপোতে থাকা কম্পোজারের কপি ব্যবহার করে।

একবার কম্পোজার ইনস্টল হয়ে গেলে, আপনি ডাউনলোড করা phar এর মাধ্যমে কমান্ড চালাতে পারেন:

php composer.phar someCommand

আপনি ফারটিকে আপনার পথে সরাতে চাইতে পারেন যাতে এটি একটি সাধারণ এক্সিকিউটেবল হিসাবে ব্যবহার করা যেতে পারে:

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

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

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

উইন্ডোজে

শুধু ডাউনলোড পৃষ্ঠা থেকে ইনস্টলারটি ডাউনলোড করুন এবং চালান৷ আপনি যদি ম্যানুয়াল ইন্সটলেশন পছন্দ করেন, আপনি উপরের ধাপগুলি অনুসরণ করতে পারেন ব্যতীত যে উইন্ডোজে ডিফল্টরূপে wget (বা APT বা Homebrew) নেই এবং /usr/local/bin ডিরেক্টরি নেই। এই ক্ষেত্রে, আপনি শুধুমাত্র আপনার ওয়েব ব্রাউজারে composer-1.phar ডাউনলোড করতে পারেন এবং তারপরে এটির নাম পরিবর্তন করে composer.phar করতে পারেন।

Local installation

You're not out of luck if you don't have permissions to run Composer on the server. It is also possible to download the MediaWiki folder to your local machine, install and run Composer, and transfer the files back to the server.

কম্পোজার ইনস্টল করা হচ্ছে

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

Usage in MediaWiki core

MediaWiki 1.25+ depends on some external libraries which are managed with Composer. Composer creates an autoloader at vendor/autoload.php, which is included by WebStart.php.

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 $IP/composer.json can either be installed locally by running composer update --no-dev or the mediawiki/vendor.git repository can be cloned to provide the same libraries used on the Wikimedia production cluster.

$IP মানে আপনার মিডিয়াউইকি ইনস্টলেশনের ইনস্টলেশন পাথ (বা "ডিরেক্টরি"), একই ডিরেক্টরি যা LocalSettings.php , index.php ইত্যাদি ধারণ করে।


Using composer-merge-plugin

$IP মানে আপনার মিডিয়াউইকি ইনস্টলেশনের ইনস্টলেশন পাথ (বা "ডিরেক্টরি"), একই ডিরেক্টরি যা LocalSettings.php , index.php ইত্যাদি ধারণ করে।

MediaWiki core "owns" $IP/composer.json 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.[1] This plugin and the MediaWiki core composer.json configuration allow a local deployment to add required extensions and libraries to a file composer.local.json inside the root MediaWiki directory.

composer.local.json 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 composer.json files that may be included in any and all of your locally installed extensions, add something like this to $IP/composer.local.json:

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

After any changes to composer.local.json, you need to run composer update so that Composer will recalculate the dependencies and the changes will take effect.

Resources

References