https://bugzilla.redhat.com/show_bug.cgi?id=1231318
--- Comment #8 from Remi Collet fedora@famillecollet.com --- (In reply to Michael Cronenworth from comment #7)
(In reply to Remi Collet from comment #6)
[!]: Requires correct, justified where necessary. see phpcompatinfo report, Missing Requires: php-pcre php-spl php-reflection
Please explain why these are Requires. The php(language) requires draws in the same packages. Do I need 3 duplicate Requires entries? If so, where is this in the Packaging Guidelines?
From https://fedoraproject.org/wiki/Packaging:PHP#Extensions_Requires
"... on all of the dependent extensions ..."
Explanation: current layout (which package provide which ext.) have changed (more sub-packages, more shared extensions) and could change again in the future. And some ext can disappear (mysql, mssql, sybase_ct in php 7) or move to pecl.
Summary: package name are not reliable, only extension names are "stable".
[!]: Package complies to the Packaging Guidelines Please used normalized github URL https://fedoraproject.org/wiki/Packaging:SourceURL#Github
Except that this project produces a release tarball. The Source URL is OK.
The used URL is the "tag" URL which is exactly what the Guidelines explain to not use.
Feel free to raise discussion to FPC for clarification.
[?]: Package does not generate any conflict. While /usr/share/php/lightncandy is fine for now (and seems ok with curent Guildelines) /usr/share/php/zordius-lightncandy or /usr/share/php/zordius/lightncandy seems better (this single class is not PSR-0 compliant...)
I'm willing to change the directory structure to whatever is more appropriate. Pending other changes I will use /usr/share/php/zordius/lightncandy.
An autoload is "perhaps" not required for a single class.. but this can change in the future (other classes, dependency), so could have some value.
This is only a "could".
This stuff (speaking in general here) is not declared in the Packaging Guidelines and I had no idea that loaders were available outside of composer.
- Please get composer in Fedora.
See #1225134 But this will have no impact on packaging. Composer is designed to duplicate everything on every project, not something we want.
- Please change the PHP Packaging Guidelines.
Again, feel free to open a proposal to FPC
- If there is documentation I have not seen, please share it.
There is no specific documentation about autoloader, only experience: - keep providing autoloader which were available in PEAR channel (don't break) - moving various packages to github sources (symfony, ZF, ezc, bartlett...) - packaging various "app" which use system libraries (see phpunit, phpcompatinfo, composer...) - trying to make things easy to use
And perhaps in the future this experience will be proposed as a Guidelines (each library must provide a autloader file to be easily consumed...)