Bug 544724 - Moodle bundles libraries. [NEEDINFO]
Moodle bundles libraries.
Status: ASSIGNED
Product: Fedora
Classification: Fedora
Component: moodle (Show other bugs)
23
All Linux
low Severity medium
: ---
: ---
Assigned To: Jon Ciesla
Fedora Extras Quality Assurance
:
Depends On: 542027 542036 542045
Blocks: DuplicSysLibsTracker
  Show dependency treegraph
 
Reported: 2009-12-06 02:13 EST by David Nalley
Modified: 2015-07-15 11:20 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
triage: needinfo? (david)


Attachments (Terms of Use)

  None (edit)
Description David Nalley 2009-12-06 02:13:40 EST
While working on removing bundled libraries from sahana, I noted  that moodle bundles multiple libraries. 

Because I was working on these libraries, I most closely noted:
fpdf, htmlpurifier, nusoap, and snoopy - I either already have these in Fedora or have them up for review to solve my own bundled libraries problems. 

It appears, though I haven't done an exhaustive search, that there are multiple other bundled libraries in the lib/ directory. 

https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
Comment 1 Jon Ciesla 2009-12-07 09:20:04 EST
I'm aware of Moodle's bundling, and thought I had removed all that were in Fedora.  I'll start work on this shortly.
Comment 2 David Nalley 2009-12-07 10:38:09 EST
Hi Jon: 

You may want to look at bug 544722, I am on the hook to package a number of bundled libs from one of my packages, and have a number in progress. Just don't want us duplicating effort unnecessarily. 

The list of libs I am packaging is in the above. 

Thanks, 

David Nalley
Comment 3 Jon Ciesla 2010-08-19 14:30:55 EDT
moodle is moving to system php-pear-CAS shortly.
Comment 4 Iain Arnell 2010-08-26 05:15:07 EDT
Jon, 

I've just taken the Fedora Engineering ticket for unbundling php libraries[1]. For starters, I've made a brief audit of the libraries currently bundled in moodle. Please let me know if there's something I can do to assist in resolving this matter. Feel free to copy me on any resulting package reviews and I'll take a look at them.


There already seems to be a suitably packaged version of these available:

* markdown.php - php-markdown
* pear/Auth/RADIUS - php-pear-Auth-RADIUS
* pear/Console/Getopt - php-pear
* pear/Crypt/CHAP - php-pear-Crypt-CHAP
* pear/HTML/Common - php-pear-HTML-Common
* pear/HTML/QuickForm - php-pear-HTML-QuickForm
* pear/OLE - php-pear-OLE


These seem to be pure bundling; no changes from upstream, or inconsequential changes. Should be simple to package separately and remove from moodle.

* pear/HTML/AJAX - http://pear.php.net/package/HTML_AJAX/
* pear/HTML/QuickForm/Renderer/Tableless.php - http://pear.php.net/package/HTML_QuickForm_Renderer_Tableless
* pear/HTML/QuickForm/DHTMLRulesTableless.php - http://pear.php.net/package/HTML_QuickForm_DHTMLRulesTableless
* pear/HTTP/WebDAV - http://pear.php.net/package/HTTP_WebDAV_Server
* bennu - http://bennu.sourceforge.net/
* editor/tinymce - http://tinymce.moxiecode.com/
* geoip - http://www.maxmind.com/app/php
* overlib - http://www.bosrup.com/web/overlib/
* pclzip (patched) - http://www.phpconcept.net/pclzip/ (patch appears to affect windows only)
* phpxml - http://keithdevens.com/software/phpxml
* recaptchalib.php - http://code.google.com/apis/recaptcha/docs/php.html
* snoopy (patched) - http://sourceforge.net/projects/snoopy/ (patch appears to be cosmetic)
* speller - http://spellerpages.sourceforge.net/
* tcpdf (patched) - http://www.tcpdf.org/ (moodle ships a trimmed down version; api & code are the same)
* typo3 - http://typo3.org/ (only a couple of classes are bundled)
* validateurlsyntax.php - http://www.canowhoopass.com/guides/regex/
* yui - http://developer.yahoo.com/yui/


These three contain binary swf files that are not compiled from source; if they cannot be built from source, they need to be removed from the package:

* flashdetect
* mp3player
* swfobject


These appear to be unnecessary and can probably be removed:

* base32.php - seems to be unused
* soap/nusoap - not used with php5
* ufo.js - http://www.bobbyvandersluis.com/ufo/index.html - but can probably be removed if we can't include flash objects


These appear to contain significant changes from their respective upstream. 

* pear/Spreadsheet/Excel/Writer - php-pear-Spreadsheet-Excel-Writer package available
* editor/htmlarea - upstream dead?
* evalmath - http://www.phpclasses.org/browse/package/2695.html
* excel - mostly replaced by pear/Spreadsheet/Excel; only referenced in mod/hotspot/report/default.php
* fpdf - unused? replaced by tcpdf
* graphlib.php - http://www.phpclasses.org/browse/package/176.html
* html2text.php - http://www.chuggnutt.com/html2text.php
* htmlpurifier - package review at #542045
* lexer.php - seems to come from http://www.lastcraft.com/simple_test.php which is also bundled
* magpie - php-magpierss already available but didn't work
* phpmailer - php-PHPMailer package available
* simpletestlib - http://lastcraft.com/simple_test.php


[1] https://fedorahosted.org/fedora-engineering-services/ticket/38
Comment 5 Bug Zapper 2010-11-04 00:12:24 EDT
This message is a reminder that Fedora 12 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 12.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '12'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 12's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 12 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Comment 6 Jon Ciesla 2012-05-09 12:30:23 EDT
Sorry for the delay. . .

DONE markdown.php - php-markdown
DONE pear/Auth/RADIUS - php-pear-Auth-RADIUS
NO LONGER USED pear/Console/Getopt - php-pear
DONE pear/Crypt/CHAP - php-pear-Crypt-CHAP
DONE pear/HTML/Common - php-pear-HTML-Common
DONE pear/HTML/QuickForm - php-pear-HTML-QuickForm
DONE pear/OLE - php-pear-OLE

More to come. . .
Comment 7 Fedora End Of Life 2013-04-03 16:08:39 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.

(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora19
Comment 8 Tuomo Soini 2013-09-04 02:21:33 EDT
QuickForm can not be unbundled - it is heavily modified by moodle folks and system QuickForm won't work at all - moodle update will always hang if QuickForm is used requiring database restore and going back to last version with bundled QuickForm

see lib/pear/README_MOODLE.txt for full list of modifications to upstream modules before doing any unbundling.

Current moodle package is totally broken because of QuickForms unbundling.
Comment 9 Jon Ciesla 2013-09-04 09:24:12 EDT
Is this still the case with the modified unbundling I applied in July, for 2.4.5-2?
Comment 10 Tuomo Soini 2013-09-12 06:24:05 EDT
You must mean 2.5.1-2 ? No - that's not enough. you can't unbundle QuickForm - and also is very hard to go back to bundled version because of file conflict via symlinks...

From that README_MOODLE.txt on moodle 2.4.6:

Quickforms
==========
Full of our custom hacks, no way to upgrade to latest upstream.
Most probably we will stop using this library in the future.

MDL-20876 - replaced split() with explode() or preg_split() where appropriate

And note: that means you can't use moodle with later upstream Quickforms!

That file really need to be consulted before unbundling pear modules.

Since unbundling feodra moodle package can't be upgraded to new versions without breaking database permanently. I really hope everybody do have database backup from older versions...
Comment 11 Adam Williamson 2014-01-10 15:11:58 EST
"DONE pear/Crypt/CHAP - php-pear-Crypt-CHAP"

But:

[adamw@adam SPECS]$ sudo repoquery -l moodle-0:2.6-1.fc21.noarch | grep Crypt
/var/www/moodle/web/lib/pear/Crypt
/var/www/moodle/web/lib/pear/Crypt/CHAP.php
Comment 12 Adam Williamson 2014-01-10 15:12:29 EST
oh, is it a symlink? I didn't check.
Comment 13 Fedora End Of Life 2015-01-09 16:41:22 EST
This message is a notice that Fedora 19 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 19. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained. Approximately 4 (four) weeks from now this bug will
be closed as EOL if it remains open with a Fedora 'version' of '19'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 19 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.
Comment 14 Adam Williamson 2015-01-09 16:56:54 EST
this at least wasn't intrinsically f19-related, so bump for safety. jon, what's current status?
Comment 15 Jan Kurik 2015-07-15 11:20:21 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 23 development cycle.
Changing version to '23'.

(As we did not run this process for some time, it could affect also pre-Fedora 23 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 23 End Of Life. Thank you.)

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora23

Note You need to log in before you can comment on or make changes to this bug.