August 6th, 2009

Putting words in the mouth of upstream projects... recently Shuttleworth has been pushing the idea again of trying to get cross-distro alignment as to what version of core packages they ship.  In his salespitch to the Debian community he's made reference to the idea that upstream projects would benefit if distros all shipped the same preferred version of a project codebase. For example if all distros shipped the same kernel and maintained the kernel long term..the kernel developers would benefit by having more people using the same kernel version instead of having people using a continuum of versions.   While its never stated, the implication is this preferred version is something other than the latest available version at any given time.

Which core upstream projects like this idea?  Do the kernel developers want this? Does the GNOME project want this? Does KDE want this? Does Xorg want this? Does Firefox want this? Does gcc want this?  Which upstream projects want to see what Shuttleworth is describing? Which projects want a future distribution landscape where all major distributions are shipping and trying to maintain the same codebase version of your projects for 2 or more years regardless of what your current development focus is?

Now maybe I've missed it because I'm not deep into the day-to-day developer communication of any of core components but I haven't noticed any upstream developer opinions bubbling up recently concerning any particular project getting behind the idea of a preferred version.

The cynic in me sees this as a strategy by Canonical to lower their own manpower expenditure to meet their LTS  garuntees by encouraging upstream projects to change their focus from development and instead take on the burdening of helping with maintainence of long lived versions.. without actually injecting additional manpower into those upstream projects.   There's an interesting discussion there about the ethics, responsbility and accountability associated with code release and consumption.  If end-users want codebases that are maintained for long periods of time..who's responsibility is it to provide that? Do upstream project feel its theirs? Are upstream projects equipped with the resources necessary to meet that sort of responsbility?  I think this are questions that need to be answered before the current discussion of cross-distro version syncing makes any sense at all.

But I'm willing to give Shuttleworth the benefit of the doubt here.  In order to do that, developers from major upstream projects need to say something coherent over whether those projects want to state a preferred version for long term maintainence. My fear is that the views of individual upstream projects are being inapporporiately generalized to serve as a talking point. What I do not want to see is a group of distributors deciding among themselves what is best for upstream projects.  If there are linux plumbing level projects whose developers like the idea of "preferred for distribution" releases like Shuttleworth describes I'd like to see them go on record saying that.  Which projects would commit to designating a "preferred for distribution" release which was meant and expected to be maintained with the help of upstream manpower for multiple year deployments?