Komponist 2: Was ist neu?

Composer, ein Abhängigkeitsmanager für PHP, wurde vor ungefähr 8 Jahren veröffentlicht und heute wird eine neue Version 2.0 veröffentlicht. Composer hat im Laufe der Jahre viele neue Funktionen erhalten und mit den PHP-Standards Schritt gehalten. Die zweite Version ist mit älteren Projekten kompatibel, bringt jedoch einige weitere großartige neue Funktionen. In diesem Artikel werde ich Ihnen mehr darüber erzählen.

Beschleunigung und Optimierung

In dieser Version wurden Leistungsverbesserungen vorgenommen. Jetzt werden bereits installierte Pakete nicht berücksichtigt, daher geht das Update viel schneller. Wir haben auch die Speicher- und Prozessorhandhabung verbessert.

. vendor , , . .

, , , , , hirak/prestissimo, .

Composer v2 ist fast 2x schneller, wenn Laravel / Laravel ohne Caching installiert werden.
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 , (*), .\

Wenn Sie aus irgendeinem Grund eine bestimmte Plattformanforderung ignorieren möchten, können Sie einfach den folgenden Befehl ausführen: composer install --ignore-platform-req php

Die Anforderung für PHP oder eine bestimmte Version wird übersprungen. Wenn Sie alle Anforderungen ignorieren möchten, sollten Sie den Befehl verwenden, der bereits in früheren Versionen verfügbar war --ignore-platform-reqs

Andere Updates

Es gibt viele neue kleinere Funktionen und Fehlerbehebungen, die die Benutzerfreundlichkeit und Qualität verbessert haben. Wenn Sie mehr darüber erfahren möchten, lesen Sie die Github-Versionshinweise .




All Articles