Skip to content

Update-Server in "repositories"-Sektion der composer.json an den Anfang schreiben

Wenn man einen Update-Server hinzufügt, wird er in an das Ende der "repositories"-Sektion in der composer.json eingefügt.
Seit Composer 2 sind Repositories standardmäßig canonical/kanonisch.
Das heißt, dass Composer ein Repository nach dem anderen durchgeht bis es das gewünschte Paket gefunden hat.
Die nachfolgenden Repositories werden nicht mehr nach dem Paket durchsucht anschaut.

Das führt bei der Entwicklung zu Problemen:
Wenn ich das git-Repository meines Pakets als Update-Server hinterlege, landet es am Ende der repositories-Sektion.
Composer schaut als erstes unter update.quiqqer.com und findet dort sehr wahrscheinlich mein Paket.
Unter update.quiqqer.com ist der Branch, den ich zum entwickeln benutzen möchte, nicht vorhanden.
Composer sagt, dass das Paket nicht installierbar ist.

Damit das nicht passiert müssten die Update-Server am Anfang der "repositories"-Sektion eingefügt werden oder die Standard-Repositories als canonical: false markiert werden (vermutlich schlecht für die Performance).

Mehr dazu siehe https://getcomposer.org/doc/articles/repository-priorities.md