الملحن 2: ما الجديد؟

تم إصدار Composer ، وهو مدير تبعية لـ PHP ، منذ حوالي 8 سنوات واليوم تم نشر إصدار جديد ، 2.0. تلقى Composer العديد من الميزات الجديدة على مر السنين وواكب معايير PHP. الإصدار الثاني متوافق مع المشاريع القديمة ، ولكنه سيوفر بعض الميزات الجديدة الرائعة. في هذه المقالة سوف أخبركم المزيد عنها.

التسريع والتحسين

تم إجراء تحسينات في الأداء في هذا الإصدار. الآن لا يأخذ في الاعتبار الحزم المثبتة بالفعل ، ونتيجة لذلك ، يكون التحديث أسرع بكثير. لقد قمنا أيضًا بتحسين الذاكرة والتعامل مع المعالج.

. vendor , , . .

, , , , , hirak/prestissimo, .

يكون Composer v2 أسرع مرتين تقريبًا عند تثبيت Laravel / Laravel بدون تخزين مؤقت.
Composer v2 2 , laravel/laravel .

Composer . , Composer install/update .

, COMPOSER_DISABLE_NETWORK=1 :

COMPOSER_DISABLE_NETWORK=1 composer install

. , .:

https://repo.packagist.org could not be fully loaded (Network disabled, request canceled: https://repo.packagist.org/packages.json), package information was loaded from the local cache and may be out of date

, , :

The required git reference for gabrielanhaia/laravel-circuit-breaker is not in cache and network is disabled, aborting

--dry-run “require” “remove”

(composer update --dry-run. , , , vendor.

Composer 2.* composer require composer remove

root

root , .

, , :

Do not run Composer as root/super user! See https://getcomposer.org/root for details

Composer 2.* :

https://getcomposer.org/root for details
Continue as root/super user [yes]?

, . , --no-interaction

composer install --no-interaction

, . Composer 1.0 / . , ( ).

( ). , , packagist, .

, composer 2.x, . Composer 1.x , , , :

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://example.org",
            "canonical": false
        }
    ]
}

, , , , , .

, foo/bar some-vendor/ composer .:

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://example.org",
            "only": ["foo/bar", "some-vendor/*"]
        }
    ]
}

toy/package , , , .

{
    "repositories": [
        {
            "type": "composer",
            "url": "https://example.org",
            "exclude": ["toy/package"]
        }
    ]
}

only, exclude , (*), .\

إذا كنت تريد ، لسبب ما ، تجاهل متطلبات نظام أساسي معين ، يمكنك ببساطة تشغيل الأمر: composer install --ignore-platform-req php

سيتخطى متطلبات PHP أو إصدار معين. إذا كنت ستتجاهل جميع المتطلبات ، فيجب عليك استخدام الأمر المتاح بالفعل في الإصدارات السابقة --ignore-platform-reqs

تحديثات أخرى

هناك العديد من الميزات الصغيرة الجديدة وإصلاحات الأخطاء التي حسنت قابليتها للاستخدام وجودتها. إذا كنت مهتمًا بمعرفة المزيد عنها ، فراجع ملاحظات إصدار Github .




All Articles