splitbrain / dokuwiki-plugin-dw2pdf

A fork of Luigi Micco's PDF export plugin for DokuWiki
http://www.dokuwiki.org/plugin:dw2pdf
55 stars 68 forks source link

Upgrade mPDF to 8.1.4 #476

Closed eduardomozart closed 11 months ago

eduardomozart commented 1 year ago

Upgrade mPDF to 8.1.4 to add support for PHP 8.X as mPDF from DW2PDF supports PHP <= 7.4. Sadly this breaks compatibility with PHP 7.4 because it's dependencies requires PHP >= 8.0.

eduardomozart commented 1 year ago

Thank you. I didn't know that, but I'd noticed that local images wasn't being loaded with a newer mPDF version and was trying to figure out why. Applied your suggestions and now DW2PDF seems to be working as expected.

Klap-in commented 1 year ago

Thanks for patching again. Could you check please why the unit tests did fail? Remarkably, it still throws an error about the decorator..

eduardomozart commented 1 year ago

Those unit tests seems to be failing because mPDF 8.1.4 requires PHP 8 so composer seems not loading the mPDF library at all, as PHP 8 unit tests seems to be the only test that succeeded as expected. It would be great to implement DokuWiki HTTPClient for mPDF, as it would support parameters set at the DokuWiki interface (like Proxy), but I don’t see developing it as a priority because I do not use any of those features right now (most of my bug contributions are related to bugs or features I found myself into our own Wiki instance). As developing isn’t my main function (I’m a SysAdmin), I can get in trouble in my work if I took to much time developing instead of deploying systems and attending our clients.

Klap-in commented 1 year ago

about http client, clear trade-off, thanks for the effort so far. If it would fit you, it would be an opportunity. Therefore, I brought it up. Without is also fine.

Ah, I see now something from composer is blocking it. That would mean for everybody with php7.4 and lower it is not usable. Since November 7.4 is also EOL.

Feels a bit to early to completely not support php7 anymore, but we have also no method to indicate it to the user. Maybe the extension manager should get a way to inform users before installing.