FriendsOfREDAXO / minify

Minifiziert und bündelt CSS/Sass, JavaScript, HTML
https://github.com/FriendsOfREDAXO/minify
MIT License
43 stars 5 forks source link

Fehlermeldung, wenn nicht im Debugmodus #22

Closed netzproductions closed 7 years ago

netzproductions commented 7 years ago

Auf Redaxo 5.2.0 und PHP 7.0.11 generiert Minify folgende Fehlermeldung, wenn der Debugmodus ausgeschaltet ist: `"Error" thrown in /path/to/site/redaxo/src/addons/minify/lib/class.minify.php on line 85 Class 'MatthiasMullie\Minify\JS' not found

0 /path/to/site/redaxo/src/addons/minify/boot.php(59): minify->minify('js', 'JS', 'file')

1 /path/to/site/redaxo/src/core/lib/extension.php(45): rex_package->{closure}(Object(rex_extension_point))

2 /path/to/site/redaxo/src/core/lib/response.php(129): rex_extension::registerPoint(Object(rex_extension_point))

3 /path/to/site/redaxo/src/addons/structure/plugins/content/boot.php(50): rex_response::sendPage('...', 1478629129)

4 /path/to/site/redaxo/src/core/lib/extension.php(45): rex_package->{closure}(Object(rex_extension_point))

5 /path/to/site/redaxo/src/core/frontend.php(23): rex_extension::registerPoint(Object(rex_extension_point))

6 /path/to/site/redaxo/src/core/boot.php(105): require('/path/to/site...')

7 /path/to/site/index.php(9): require('/path/to/site...')

8 {main}`

phoebusryan commented 7 years ago

Huch, das würde bedeuten, dass der Autoloader von Redaxo nicht greift.. Kannst du mir nähere Infos geben? Zum Beispiel Redaxoversion, Addonversion etc?

netzproductions commented 7 years ago

Minify läuft auf v1.4.2, Redaxo auf 5.2.0.

phoebusryan commented 7 years ago

Hm, ich kanns nicht reproduzieren. Was hast du sonst noch für Addons installiert?

netzproductions commented 7 years ago

In einer anderen Redaxo5-Installation läuft Minify einwandfrei.. Die Addon-Übersicht findest Du hier: https://www.dropbox.com/s/2whqmup1lcaj67r/addons.jpg?dl=0

phoebusryan commented 7 years ago

Schwer zu sagen. Die meisten davon habe ich aber selber auch im Einsatz.

Ich würde ein Addon nach dem anderen deaktivieren und dann schauen ob es klappt. Anfangen würde ich mit quick_navigation und rex5_multiupload weil ich diese selber nicht nutze.

alxndr-w commented 7 years ago

Fürs Protokoll:

Ich habe den gleichen Fehler. Eine (funktionierende!) Installation kopiert und neu hochgeladen. Keine Veränderung an den Addons oder den importierten Datenbanktabellen. Cache gelöscht, nur Domainpfad und Datenbank-Verbindung angepasst.

Einziger Unterschied: anderer Hoster.

Vielleicht hilft das beim Eingrenzen.

DanielWeitenauer commented 7 years ago

Hi, bei mir tritt der Fehler auch auf. Ich habe mal in autoloader.cache nachgesehen: Die Datei mit der Klasse JS taucht in der Dateiliste auf, die Klasse jedoch nicht in der Klassen-Liste. Vielleicht passt bei der Codierung etwas nicht?

DanielWeitenauer commented 7 years ago

Ich habe mal testweise die Monster-Regex-Konstante aus der Klasse JS entfernt - dann wird die Klasse korrekt in den Autoloader übernommen. Anscheinend ist die Zeilenlänge für manche Systeme zu hoch.

phoebusryan commented 7 years ago

Hat es denn mit der Zeixhenlänge zutun? Hat das mal einer analysiert?

phoebusryan commented 7 years ago

Jetzt hatte ich dies auch mal. In der lokalen Umgebung mit MAMP. Speziell.

@DanielWeitenauer Welche Monster-Regex-Konstante meinst du?

gharlan commented 7 years ago

Wird in REDAXO 5.3 behoben sein. Danke insbesondere an @DanielWeitenauer, es lag tatsächlich an der langen String-Konstante.

Zum Auffinden der Klassen in den Dateien nutzen wir eine Funktion aus Composer, die habe ich nun aktualisiert, und mit der neueren Variante klappt es korrekt.

phoebusryan commented 7 years ago

Top, danke @gharlan