On 08/24/2014 04:37 PM, Nico Kadel-Garcia wrote:
Installation scripting is not the only source of the problem. Perl modules have been prone to this. * Perl module A requires perl module B. * Perl module B requires perl module C. * One small script or macro in module C requires one small script from module A. It may not even be a critical component of C, and may be easily segregated, but suddenly there is a circular dependency. The vortex enters when the author of module B updates to a new dependency or build dependency that is not in the current version of C, and C introduces a new dependency on A but it's based on an older version of A, that has since discarded that macro due to a code cleanup. Hilarity ensues..... The underlying point is that it's sometimes very helpful to split upstream packages to smaller, individual components, precisely to segregate these dependencies. It's especially useful with Perl modules. I have.... old stories about the mod_perl updates back when HTTPD 2.x was first released and mod_perl compatibility became kind of nutty.
Or we can wait for F21, which will have weak dependencies in RPM. And I anticipate that weak dependencies will break a lot of circles.
-- Miroslav Suchy, RHCE, RHCDS Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct