Inter-WG coordination: Stable application runtimes

Adam Williamson awilliam at redhat.com
Fri Jan 10 04:04:54 UTC 2014


On Thu, 2014-01-09 at 19:58 -0800, Adam Williamson wrote:

> I'm coming to the conclusion that at some point distros have to give up
> swimming against the tide and just say, look, if this is the way this
> ecosystem wants to go, then it's your problem. Fedora's job for such
> ecosystems would simply be to make sure their distribution mechanism
> works on top of Fedora - if it's one we care about - and then butt out.
> I'm not sure we're achieving anything practical for anyone by bending
> PHP / Java / nodejs / Ruby packages 120 degrees out of shape to conform
> to Fedora's packaging guidelines (often at the cost that we have to turn
> stuff off, or break stuff, or be months or years behind upstream, or be
> massively incomplete), and I say this as someone who's spent the last
> couple of weeks whacking on a PHPland stack (Owncloud) with a wrench to
> achieve precisely that.

A further point on this: I think distros can probably provide value to
these stacks if they're clever and take a strategic approach. To take
the example of PHPland, which is the one I've been dealing with the most
lately, there are some libraries and frameworks which are required by a
*lot* of PHP project, and which do have a _reasonable_ approach to
stability. It's probably the case that Fedora can provide value by, for
instance, providing packaged versions of Zend and Doctrine and Symfony -
major stacks/libs/frameworks which don't break their APIs every
Wednesday, have reasonable distribution mechanisms, and which quite a
lot of popular projects depend on.

But when I'm sitting here building a package for some garbage PHP
'library' which doesn't have a release mechanism or a versioning policy
or any concept of API stability - where all you have is a git repo with
one or two branches into which they regularly stuff anything from a bug
fix to a major refactoring - I wonder exactly who I'm helping. Probably
there are three projects in the world which use that library and each
one uses a different random git checkout from the others which is in no
way compatible. When you're working in that kind of context, trying to
apply distribution packaging rules is like showing up to a UFC fight
with a copy of the Queensberry rules and attempting to convince everyone
they're doing it wrong: you're not really doing anything of any use to
anyone involved.
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net



More information about the devel mailing list