Repositorien so anpassen, dass sie Symfony 6.4 und 7.x offiziell unterstützen und in CI darauf getestet werden. Außerdem PHP-Obergrenze entfernen (z. B. ">=8.1" statt ">=8.1, <8.4") damit PHP 8.4 erlaubt ist. CI um PHP 8.4 erweitern und die Testmatrix anpassen (u. a. minimal/lowest- und stabile Läufe).
-
Ersetze in composer.json alls Abhängigkeiten für symfony/-Pakete, die im Moment auf ^5.x, ^6.x, ^7.x oder ähnliches zielen, konsistent auf "^6.4|^7.0". Es gibt einige symfony/-Pakete, die eine andere Versionsnummerierung verwenden und aktuell Versionen 1.x, 2.x, 3.x oder Mischungen davon erlauben. Diese Pakete dürfen nicht verändert werden.
-
Setze das Constraint für die PHP-Version in composer.json auf ">= 8.1"
-
Wenn es im Verzeichnis .github ein Skript gibt, das Symfony-Paketversionen locken möchte, entferne es. Dieses Skript verwendet dafür wahrscheinlich
jqodersedund enthält viele Regeln fürsymfony/*-Pakete. -
Passe die Testmatrix für PHPUnit-Tests in Workflows unterhalb von .github an. Sie soll folgendermaßen aussehen:
strategy:
fail-fast: false
matrix:
include:
- { php-version: 8.1, symfony-require: '', dependency-version: prefer-lowest }
- { php-version: 8.3, symfony-require: 6.4.*, dependency-version: prefer-stable }
- { php-version: 8.4, symfony-require: 7.*, dependency-version: prefer-stable }
-
Anstelle des Skripts zum Locking der Symfony-Version setze eine Umgebungsvariable
SYMFONY_REQUIREauf den Wert vonsymfony-requireder Testmatrix. -
Der Workflow muss schon
shivammathur/setup-php@v2verwenden, sonst gibt es ein Problem. In diesem Schritt, ergänze "flex" in der Liste der "tools". Beispiel: "tools: composer:v2, flex". Prüfe, dass die "php-version" aus der Matrix verwendet wird, um die richtige PHP-Version zu installieren. -
Das "dependency-version" aus der Matrix wird im "composer"-Aufruf verwendet, z. B. "composer update --${{ matrix.dependency-version }}".
-
Nach dem "composer update" sollte mit "composer show" auch eine Liste der verwendeten Pakete angezeigt werden, damit man es leichter kontrollieren kann.
-
Erstelle einen PR mit den notwendigen Code-Änderungen. Verwende folgenden Titel und Text für den PR:
Aktualisiere die Test-Matrix auf Symfony 6.4 und 7.x, verwende auch PHP 8.4
Dieser PR ändert die Mindestanforderungen auf PHP 8.1 und Symfony-Pakete aus dem 6.4-Release oder höher.
Er aktualisiert die Testmatrix entsprechend, und benutzt dabei den von Symfony vorgeschlagenen Weg, bestimmte Release-Versionen zum Test zu verwenden.