[dev] RFC: Distribution packaging of composer based modular apps

Remi Collet remi at fedoraproject.org
Thu Dec 5 07:35:55 UTC 2019


Le 04/12/2019 à 16:15, Ralf Lang a écrit :
> Hi,
> 
> a recent discussion on opensuse yielded they don't currently have a clear strategy for distribution packaging of complex composer apps. It's all very pear centered.
> 
> As tools for composer are in the works, I am trying to build some open build service integration. Currently, I would produce pear packages and auto-wrap them into rpm spec files. 
> 
> What is the strategy on other distributions?

In Fedora we have hundreds of "composer" packages

The main benefit of composer, if that we now have a perfect description
if the dependencies

The main issue is that composer autoloader is generated after dependency
resolution, when all the stack is known, which is not suitable for
packaging.

Explained in
https://blog.remirepo.net/post/2015/06/30/PHP-SIG-autoloader

BTW, we now have drop the idea to use the Symfony autoloader and prefer
to avoid pulling it for all packages.

We prefer to use https://github.com/php-fedora/autoloader
and often generates classmap with https://github.com/theseer/Autoload

More in https://fedoraproject.org/wiki/SIGs/PHP/PackagingTips

All works really well:

- hundreds of libraries
- frameworks (SF, ZF)
- multiple versions of some libraries
- lot of developer app (phpunit 5, 6, 7 and 8, php-cs-fixer, phan, ...)
- various web app (phpMyAdmin, GLPI, ...)

And of course, upstream test suites are run during the build and in our
CI,
https://blog.remirepo.net/post/2014/08/12/Koschei-continuous-integration-of-PHP-stack-in-Fedora


Remi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 261 bytes
Desc: OpenPGP digital signature
URL: <https://lists.horde.org/archives/dev/attachments/20191205/de18baa6/attachment.bin>


More information about the dev mailing list