Topic: Upgrade the included TCPDF library

Hello,

I'd like to implement a number of new PDF reports for my employer using more features of TCPDF than are currently exposed via the FrontReport (& Cpdf) classes.  In order to do that I could either:

- write the reports using TCPDF methods directly, bypassing the FrontReport & Cpdf classes, or

- extend the FrontReport class to expose more TCPDF functionality

I'd like to go with the second option because I think it would be more beneficial to the whole FrontAccounting project and other users who may want to generate their own reports in the future.

But I'm not asking you to approve any changes I'd make yet.  First, I just wanted to touch base and see if you'd consider shipping a more recent version of TCPDF with FrontAccounting.  That could really help my work to make the FrontAccounting Reporting system better.  The version of TCPDF you're shipping in a recent copy of the FA 2.2 branch from CVS is TCPDF v4.0.027.  The authors of TCPDF seem to consider all 4.x number increments to be fairly major releases and there have been a bunch of those and lots of bug fixes and new features made since the version you're using.  They're up to v4.8.007.

So, would you be open to upgrading the version of TCPDF you include?  Is there anything I could do to help make that happen?

Thanks so much for considering it!

Jason

Re: Upgrade the included TCPDF library

The problem is lack of resources. We have monitored the tcpdf project to see if we need updating. And we haven't needed an upgrade to solve our existing reporting. Most of the upgrades have been considering html print out.
We cannot upgrade tcpdf every time they ship. There can be several releases a week.
We also have a depreciated version of the huge file unicode_data called unicode_data2.php. it is also mandatory to say that we are php 4 and 5 compatible, so we must use the php 4 version.
You are, however, welcome to test if we can use a later version. Be aware of our own implementation inside tcpdf.php at the top. You should consider using the 2.2 unstable version of FA. The beta is shipping shortly. It it can be replaced, there should be no problems releasing this during minor release 2.2.X updates.

/Joe

Re: Upgrade the included TCPDF library

Hi Joe,

joe wrote:

The problem is lack of resources.

...snip...

You are, however, welcome to test if we can use a later version. Be aware of our own implementation inside tcpdf.php at the top.

...snip...

/Joe

Thanks so much for your fast and helpful response!  I'll do some testing to see if I need a newer version and whether I can integrate it into the FA 2.2 codebase.  I'll let you know what I find.  Thanks!

Jason

Re: Upgrade the included TCPDF library

It would be good to stay with old version, if possible. Even version currently integrated with FA has enormous size, but TCPDF 4.8 dangerously approaches  madness border - this is over 500k file! Over half a megabyte of code which is mostly not used in simple reports, but must be always included  hmm.
Just my 3p.
Janusz

Re: Upgrade the included TCPDF library

Hi Janusz,

itronics wrote:

It would be good to stay with old version, if possible. Even version currently integrated with FA has enormous size, but TCPDF 4.8 dangerously approaches  madness border - this is over 500k file! Over half a megabyte of code which is mostly not used in simple reports, but must be always included  hmm.
Just my 3p.
Janusz

Thanks for letting me know about the size concern!  Out of curiousity, what exactly is it about the size that is a problem?  Disk space used?  Performance concerns?  Amount of unknown code?  In most computing situations 0.5MB isn't considered a big deal these days.  It's not like we're aiming to get FrontAccounting embedded in every wristwatch, right?  smile

I'd like to have more flexibility for making nicer reports than the included ones, and tracking with a more recent TCPDF seemed like a good idea to me for several reasons:

- to have the last year's worth of bug fixes (it can be frustrating to encounter unexpected behavior and then wonder if it's a bug that's been fixed in a newer version, or if you just misunderstood how something is supposed to work)

- to have the last year's worth of features

- so the information on the TCPDF website would be more relevant to me and anyone else wanting to write more advanced reports

- to more easily communicate with the TCPDF developers and other users if the need should arise (you probably wouldn't be thrilled to be getting support requests from new FA users who were starting off with 1+ year old versions, right?  <grin>)

I'm almost done testing the integration of a newer version of TCPDF into FA.  What would be the best way to submit the code for your consideration?

Thanks for your help!

Jason

Re: Upgrade the included TCPDF library

maasj wrote:

Thanks for letting me know about the size concern!  Out of curiousity, what exactly is it about the size that is a problem?  Disk space used?  Performance concerns?  Amount of unknown code?  In most computing situations 0.5MB isn't considered a big deal these days.  It's not like we're aiming to get FrontAccounting embedded in every wristwatch, right?  smile

Right, although we are not in the M$ situation, so we cannot simply say: don't be tedious, if our application is too slow after upgrade for you, spend another thousand bucks for new server. Big part of FA users community is from third world countries, where imho average server has much worse performance than your desktop pc smile.

I'd like to have more flexibility for making nicer reports than the included ones, and tracking with a more recent TCPDF seemed like a good idea to me for several reasons:

- to have the last year's worth of bug fixes (it can be frustrating to encounter unexpected behavior and then wonder if it's a bug that's been fixed in a newer version, or if you just misunderstood how something is supposed to work)

- to have the last year's worth of features

- so the information on the TCPDF website would be more relevant to me and anyone else wanting to write more advanced reports

- to more easily communicate with the TCPDF developers and other users if the need should arise (you probably wouldn't be thrilled to be getting support requests from new FA users who were starting off with 1+ year old versions, right?  <grin>)

New release means not only bugfixes but usually also new bugs. In FrontAccounting TCPDF is used as working horse for pdf generation. Reports are written mostly using wrapper functions, not direct TCPDF calls, so information exchange with TCPDF development team can be problematic regardless of version used. Last, but not least most of functionality of TCPDF bells and wristles are sparse for simple accounting reports, even in those older version currently incorporated in FA. But utf-8 support is indispensable smile.

I'm almost done testing the integration of a newer version of TCPDF into FA.  What would be the best way to submit the code for your consideration?

You can send it directly to me or Joe.
To be understand right: I really appreciate your efforts, and I am very curious about the improvements in reporting you announced. If you would like to make them available for FA community we will be happy including them into FA. But on other hand I see no reason to upgrade TCPDF to newer, bigger, and probable even less used version, only for being happy we have new toy wink.

Can we agree that the best time for TCPDF upgrade is just when improvements requiring it are available?

Janusz