Composer

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

Composer PHP kütüphaneleri için bir bağımlılık yöneticisidir. Ayrıca, MediaWiki uzantılarının kurulumunu yönetmek için kullanılabilir (MediaWiki 1.22 üzerinden beri kullanılabilir). MediaWiki 1.25 ile başlayarak, MediaWiki çekirdeğinin harici kitaplık bağımlılıkları Composer ile yönetilmektedir.

Composer kurma

Unix/Linux ve macOS'da

install Composer uygulamasının en belirgin yolunun yanı sıra sudo apt install composer:

En son kararlı almak için:

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

Bu en son kararlı sürümü indirir. 1.0.0-alpha gibi alfa "sürümleri" için de phars vardır.

OS X'teki kullanıcılar için, besteci yüklemek için Homebrew kullanabilirsiniz:

brew install composer

Bu işe yaramazsa veya Homebrew yüklü değilse deneyebilirsiniz:

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

Jenkins ve uzatma distribütörü "integration/composer" git repo'da yer alan bestecinin kopyasını kullanıyor.

Composer kurulduktan sonra, indirilen phar üzerinden komutları çalıştırabilirsiniz:

php composer.phar someCommand

Phar'ı normal bir yürütülebilir dosya olarak kullanılabilmesi için yolunuza taşımak isteyebilirsiniz:

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

Mv komutu izinler nedeniyle başarısız olursa, sudo ile tekrar çalıştırın.

Windows'da

Yükleyiciyi indirme sayfasından indirip çalıştırın. Manüel yüklemeyi tercih ederseniz, Windows'un varsayılan olarak wget (veya APT veya Homebrew) olmaması ve /usr/local/bin dizini olmaması dışında yukarıdaki adımları uygulayabilirsiniz.

MediaWiki çekirdeğinde kullanım

MediaWiki 1.25+, Composer ile yönetilen bazı harici kütüphanelere bağlıdır. Composer, vendor/autoload.php altında WebStart.php tarafından eklenen bir otomatik yükleyici oluşturur.

Besteci tarafından yönetilen bağımlılıklar, MediaWiki ve uzantılarının tarball dağıtımlarında toplanır, böylece sistem yöneticilerinin besteciyi doğrudan kullanması gerekmez. Git kullanılarak MediaWiki kurulması, $IP/composer.json içinde bildirilen bağımlılıklar composer update --no-dev çalıştırarak yerel olarak kurulabilir veya mediawiki/vendor.git deposu, Wikimedia üretim kümesinde kullanılan kitaplıkları sağlamak için klonlanabilir.[1]

$IP , MediaWiki kurulumunuzun Kurulum Yolu (veya "dizin") anlamına gelir, aynı dizini LocalSettings.php , index.php vb.

composer-merge-plugin kullanma

$IP , MediaWiki kurulumunuzun Kurulum Yolu (veya "dizin") anlamına gelir, aynı dizini LocalSettings.php , index.php vb.

MediaWiki çekirdeği $IP/composer.json "sahiptir" ve hem tarball hem de Git yönetilen güncellemelerde bu dosyanın içeriğini değiştirir. Yerel yüklemelerin isteğe bağlı kitaplıkları ve/veya Composer ile uzantıları yönetme yüklemek için Composer'ı kullanmasına izin vermek için, composer-merge-plugin adlı Composer için özel bir eklenti geliştirildi.[2] Bu eklenti ve MediaWiki çekirdek composer.json yapılandırması, yerel dağıtımın kök MediaWiki dizini içindeki composer.local.json dosyasına gerekli uzantıları ve kitaplıkları eklemesine izin verir.

composer.local.json, Composer kullanılarak yüklenmeyen uzantıların ihtiyaç duyduğu Composer yönetilen kitaplıklarını yüklemek için de kullanılabilir. Bu yalnızca uzantılar Uzantı Distribütörü tarafından oluşturulan tarball'lardan yüklenmediğinde gereklidir.

Composer'ın yerel olarak yüklenmiş uzantılarınızın herhangi birinde ve tümünde bulunabilecek composer.json dosyalarını bulmasını ve işlemesini sağlamak için $IP/composer.local.json şu gibi bir şey ekleyin:

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

composer.local.json herhangi bir değişiklikten sonra, Composer'ın bağımlılıkları yeniden hesaplaması ve değişikliklerin etkili olması için composer install tekrar çalıştırmadan önce composer.lock kaldırmanız gerekir.

Kaynaklar

Kaynakça