Zum Inhalt springen

Glossar

Composer: die Paketverwaltung für PHP und Laravel

Das Werkzeug, das fremde PHP-Pakete installiert, aktuell hält und ihre Abhängigkeiten untereinander auflöst.

Laravel selbst und praktisch jedes Paket darum herum werden über Composer installiert. Dabei löst Composer auch die Abhängigkeiten der Pakete untereinander auf und findet eine Kombination von Versionen, die zusammenpasst.

Deshalb schreibt in Laravel-Projekten kaum jemand Grundfunktionen selbst. Für Bildbearbeitung, PDF-Erzeugung, Excel-Export oder Volltextsuche gibt es gepflegte Pakete, die getestet und dokumentiert sind.

Die Kehrseite

Jedes Paket ist fremder Code, der mit ausgeliefert wird. Es kann Schwachstellen haben, und es kann aufhören, gepflegt zu werden. Zur Pflege einer Anwendung gehören deshalb zwei Gewohnheiten. Regelmäßig prüfen, ob für installierte Pakete Sicherheitsmeldungen vorliegen. Und beim Aufnehmen eines neuen Pakets nachsehen, ob es überhaupt noch jemand betreut.

Ein Rückstand von mehreren Jahren lässt sich nicht mehr in einem Schritt aufholen, weil sich die Anforderungen der Pakete untereinander widersprechen. Warum kleine Schritte deshalb günstiger sind, steht im Beitrag Laravel-Versionen: wann ein Upgrade wirklich dringend wird.

FAQ

Häufige Fragen

Wozu gibt es composer.json und composer.lock?
In composer.json steht, welche Pakete in welchem Versionsbereich gewünscht sind. In composer.lock steht, welche Versionen tatsächlich installiert wurden. Nur so bekommen Entwicklung, Testumgebung und Betrieb garantiert dieselben Stände. Die Lock-Datei gehört deshalb ins Repository.

Verwandt

Begriffe, die dazugehören

Projekt oder Frage?

Schreiben Sie uns, worum es geht. Sie bekommen eine Einschätzung von jemandem, der selbst mit Laravel arbeitet — nicht vom Vertrieb.