Die PackageStates.php wird nicht mehr berücksichtigt
Die Datei PackageStates.php ist nun Geschichte, zumindest für Composer-basierte TYPO3-Installationen. TYPO3 selbst wird mit Extensions gebaut und der TYPO3-Core wird ab TYPO3 v11 mit 36 Systemerweiterungen ausgeliefert. Über Composer kannst du also die Extensions anfordern und laden, die du für deine Website wirklich brauchst. Wenn du zum Beispiel die „indexierte Suche“ von TYPO3 nicht brauchst, weil du die Solr-Erweiterung verwendest, ist deine Codebasis viel kleiner. Weniger Code ist immer eine gute Sache für die Wartbarkeit und Sicherheit.
Bei Erweiterungen, die nicht zum System gehören, hat TYPO3 schon immer den Ordner typo3conf/ext/ auf Erweiterungen von Drittanbietern überprüft. Diejenigen, die „aktiv“ sind (das wird von TYPO3s internem Konfigurationsmanagement erkannt), werden in der Datei PackageStates.php aufgeführt. In der Vergangenheit haben wir die großartige TYPO3 Console-Erweiterung von Helmut Hummel verwendet, um die Datei PackageStates.php bei jedem Composer-Befehl als eigenes Skript zu erstellen.
In TYPO3 v11 sind alle erforderlichen Erweiterungen des TYPO3-Core und die Erweiterungen von Drittanbietern, die in der composer.json definiert sind, immer aktiv. Das ist ein praktischer Weg, um sich den nativen Konzepten von Composer anzunähern: Wenn du ein Paket benötigst, ist es aktiv. Wenn du es nicht brauchst, entfernst du es einfach über Composer.
Wenn du auf TYPO3 Version 11 aktualisierst, wird die PackageStates-Datei nie wieder im Composer-Mode ausgewertet. Wenn du so bereits mit Composer gearbeitet hast, dass alle benötigten Erweiterungen jederzeit aktiv sind, dann bist du bereits hervorragend auf TYPO3 v11 vorbereitet.