fabrik
fabrik copied to clipboard
Update vendor libraries
Many of the vendor libraries used by the current version are outdated. We may or may not wish to continue support for the functionality but I want to list the ones I come across so we can make decisions along the way.
dompdf Twilio Mailgun AWS (Amazon web service) Myclabs phenx zoom
domPDF: https://fabrikar.com/forums/index.php?threads/dompdf-and-php8.53405/ fstorch: "...My PDF looks good again with PHP8 and DOMPDF 2.0. " I'll test it.
Yes, I was aware of that one. I think we need to update the composer.json file properly rather than simply ignoring the dependencies in it.
I read somewhere in the fabrik code that DOMPDF only can be used if DOMPDF is installed/present in Joomla. This was the case in J!3 but now no longer in J!4. Is this still required? If yes then we may have an issue.
Do we realy need all these vendor libraries b.t.w. Or some only for a plugin (which could be installed together with the plugin). My feeling is that we have far to many vendor libraries and most are never used.
I read somewhere in the fabrik code that DOMPDF only can be used if DOMPDF is installed/present in Joomla
No, it was always only Fabrik. Fabrik is checking if a folder exists because the PDF libs are not part of Fabrik core and you have to 'install' the library package. But it's not really installing, it's just files copying, you can also just update from GitHub without doing a discover.
Do we realy need all these vendor libraries
no idea. We can try to rename the folders and see what happens ;)
composer and symfony are also in Joomla's vendor (identical???), I assume stripe and twilio are for the plugins
@skurvish : where do you see Mailgun and zoom?
I think a lot of the libraries can go away, at least for now. the only one I see that is likely to be needed by many users is the pdf library. Is DOMPDF the right choice? Probably.
The Mailgun and Zoom libraries are included as part of their respective fabrik_form plugins.
Also, i think we should consider keeping Stripe and paypal. Stripe uses Guzzle. i have a lot of experience coding Stripe payment plugins as I wrote the one for JEvents so I can take that one as time permits. I think there are enough users who require some form of payment processor for us to have at least a couple they can choose from. Low priority though.
I remember that I removed the DOMPDF / MPDF choise in the config.xml. I need to undo this.
mPDF is huge but I think we should keep the possibility to use it. Creating PDF layouts can be a terrible work... Maybe we can keep these libs (also language files) somewhere separated so you won't get all automatically with a GitHub update.
One option I have been thinking about is integrating Koolreport into Fabrik (I already use it front ended by Fabrik forms). It has the ability to do a whole bunch of things that the visualizations do as well as output to pdf. The actual pdf generation is done offsite through an ajax call so there is no code burden on Fabrik for this. Something to ponder for future consideration.
Removal of DOMPDF / MPDF choise in the config.xml undone.
domPDF is updated
I needed to update dompdf or I get 'required parameter follows optional parameter' error. I updated to the latest version.
That is, I still used to old 0.8.6 version. Updated with GH now.