won't someone please think of the users!?
ricardo.salveti at linaro.org
Fri Apr 6 18:14:40 UTC 2012
On Thu, Apr 5, 2012 at 11:10 PM, Clark, Rob <rob at ti.com> wrote:
> just some random thoughts on our release model, etc.. I've been
> meaning to write up for a while but haven't had time
Thanks for bringing this up here.
> There has been some feedback, for example on #pandaboard, that the
> monthly release cycle is confusing and detrimental for folks looking
> for something working and stable, and not necessarily bleeding edge,
> the question is, "should I upgrade?", "what is fixed and what is now
> broken?". Linaro is doing some great upstream work, and enabling
> features on these boards, and it is good to showcase that, but I'm not
> really sure the best way to do this is rush that into the next monthly
> release and break things for all the new users of their shiny new
> I tend to think that part of the problem is that the cadence of
> monthly releases is too fast for any sort of stability. Perhaps we
> should think more along the lines of releases roughly every quarter
> (potentially with "beta"s in between). I don't think we should
> strictly adhere to a time based release cycle, but we should call it a
> final/stable release when it actually is so. There is a reason that
> the linux kernel uses an approx 3 month release cycle, but doesn't
> stick to that dogmatically when things aren't really at release
> quality yet.
I think the main problem here is the constant change of direction from
the platform group. Initially the Android/Ubuntu LEB (Linaro
Evaluation Builds) were meant to be somehow stable, always delivering
the best working components, even if they were not reflecting the
latest upstream. On example of that is that we were still releasing
the Pandaboard hwpacks based on the old tilt-linux-linaro-3.1, because
it was the only one that was stable enough and had multimedia working
out of the box.
With this model, we attracted quite a few users, we presented our
builds at numerous places (ELC, Connect, UDS, etc), got people at
Linaro just to deal with community and always pointed the users to use
them as reference, because it would always be somehow stable and
Then at previous Connect Linaro decided that we would not worry about
stabilising our LEBs any more, and start delivering just the latest
components available, even if they would not be working with any other
hw acceleration piece, which naturally made all of our users unhappy
about it, getting us to the current situation.
This is why I also thought we should go back and rethink how we would
be dealing with our releases. The email I sent last week about
stable/unstable LEBs is basically to cover the same issue. One thing
we should do, if we're planning on working with *users*, is to always
provide a working (stable) LEBs together with a unstable one, so if
they decide to help and contribute to Linaro, they would always have
the possibility to grab the latest stuff from the unstable PPA (on
Now about the monthly releases I don't really have a strong opinion. I
believe releasing the LEBs at every quarter might improve things, if
we decided to get working (stable) LEBs out of the door. Doing it
quarterly would give us have enough time to think about which
components we'd be working on, and prepare the enablement properly
(one thing we need to think about is that most of the builds require
some sort of binary blob, and a one month-time frame is almost
impossible for the Vendor to respin a newer version if needed).
> But, we do still need a place for latest-and-greatest bleeding edge
> for folks who want to check out what we are working on. One approach,
> for example for ubuntu releases, we could have a "release" and "trunk"
> PPA for bleeding-edge.. that way folks looking for bleeding-edge can
> get it, and folks looking for "it just works" are not screwed. I'm
> not quite sure what android equivalent would be, but I guess we could
> figure something out. This gives folks in board specific channels
> like #pandaboard who are trying to help new users something to
> reliably point them at without having to worry if they are giving bad
> advice to recommend a linaro filesystem. And updates do not have to
> be tied to a time-based schedule. If something is broken for feature
> x for board y in the release PPA, then as soon as it is fixed (and if
> it doesn't break board z), then push an update to the release PPA.
> But maybe big new features shouldn't immediately go to the release PPA
> without some soak time first in the trunk PPA. It is great to be
> enabling new features, but for someone new to the arm platform I don't
> want to just frustrate and scare them off.
This unstable/development place needs to be around, because that's
also our main baseline when we're developing and testing our
components. That's why for me the stable release would basically be a
snapshot of a working unstable one, in a way we could later protect
the users to avoid total breakage with a simple update.
Ricardo Salveti de Araujo
More information about the linaro-dev