Bug 965160

Summary: Bundled library: tcpdf in moodle
Product: [Fedora] Fedora Reporter: Remi Collet <fedora>
Component: moodleAssignee: Gwyn Ciesla <gwync>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gwync
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-05-20 16:58:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 964412    
Bug Blocks:    

Description Remi Collet 2013-05-20 15:00:07 UTC
Moodle provides a bundled copy of tcpdf while system library is now available.

Comment 1 Gwyn Ciesla 2013-05-20 15:25:30 UTC
This looks like there are some files in moodle's tcpdf that aren't in php-tcpdf, do you have any insight here?

This is moodle/lib/tcpdf from 2.5:

2dbarcodes.php  CHANGELOG.TXT  config          encodings_maps.php  htmlcolors.php  pdf417.php  readme_moodle.txt  spotcolors.php  tcpdf.crt  tcpdf_filters.php  tcpdf_parser.php  unicode_data.php
barcodes.php    composer.json  datamatrix.php  fonts               LICENSE.TXT     qrcode.php  README.TXT         sRGB.icc        tcpdf.fdf  tcpdf.p12          tcpdf.php

Comment 2 Remi Collet 2013-05-20 16:10:17 UTC
After a quick look.

Moodle 2.5 bundles php-tcpdf 5.9.209 (not so old, 2013-03-14).

Using system php-tcpdf shoud work "out of the box", just need to edit the moodle/lib/pdflib.php to fix paths.

The package need to requires:
php-tcpdf
php-tcpdf-gnu-free-serif-fonts
php-tcpdf-gnu-free-sans-fonts
php-tcpdf-gnu-free-mono-fonts

Most important changes between 5.9 and 6.0 was the "big" tcpdf class being split. So some call to $this->foo() have to be changed to, p.e. tcpdf_static::foo(), but I don't see any of them (very quick look).

In all case, all changes should happen in pdflib.php.

Of course, this must be tried.

Comment 3 Gwyn Ciesla 2013-05-20 16:16:18 UTC
Excellent, thanks.  I'll implement the above in 2.5 in rawhide only, and we'll go from there.