.phar assets cannot be opened, and a failed config generation still writes .rr.yaml
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 70/100
Rechercherichtung
Beginne in src/Archive/Factory.php, wo die Dateiendung .phar um Zeile 95 herum mit PharArchive abgeglichen wird, und lies dann PharArchive, um zu sehen, wie es PharData aufruft. In src/GetBinaryCommand.php gibt installConfig() um Zeile 216 den Fehler aus Generator::generate() aus, ruft aber trotzdem file_put_contents auf; MakeConfigCommand zeigt die FAILURE-Rückgabe, die übernommen werden sollte. Fertig ist es, wenn .phar nicht mehr PharData erreicht und eine fehlgeschlagene Generierung keine .rr.yaml schreibt. Frage, ob #49 diesen Code entfernen wird, bevor du anfängst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Description
Two smaller defects found while covering the package with tests. Neither shows up in normal use today.
.pharassets cannot be opened.Archive\Factorymaps the.pharextension toPharArchive, which opens the file withPharData.PharDatarefuses that extension:Cannot create phar '.../rr.phar', file extension (or combination) not recognised or the directory does not exist. RoadRunner does not publish.pharassets, so this matcher can never succeed in practice..rr.yamlis written even when generation fails. InGetBinaryCommand::installConfig(), the error is printed whenGenerator::generate()throws, but execution continues tofile_put_contents($to, $config)with$configundefined. By reading the code, that would emit an undefined-variable warning and write an empty.rr.yaml.MakeConfigCommandreturnsFAILUREin the same situation. None of the bundled sections throw today, so this path is not reachable with the built-in plugins.
Additional context
Archive handling and binary installation may be replaced by DLoad in #49, in which case this code goes away.
- Vorherrschende Sprache
- PHP
- Sterne
- 30
- Forks
- 15
- Ø Merge
- 45 Min.
- Gemergte PRs (30 T.)
- 11
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus roadrunner-php/cli
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
roadrunner-php/cli#69 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
roadrunner-php/cli#68 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
roadrunner-php/cli#67 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
roadrunner-php/cli#61 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
roadrunner-php/cli#60 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in roadrunner-php/cli
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 2 Tagen
-
backend bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 63/100
smarty-php/smarty#1215 ·