[maemo-developers] Autobuilder: building svn tags from garage

From: David Greaves david at dgreaves.com
Date: Wed Aug 26 21:33:29 EEST 2009
Ed Bartosh wrote:
> 2009/8/26 Graham Cobb <g+770 at cobb.uk.net>:
>> Will it handle build dependencies?  I.e. if I create an autobuild tag for
>> libaaa and also for application-aaa (with a build dependency on libaaa), will
>> it submit the library build first?  Will it wait for it to finish before
>> submitting the application build?
>>
> This is another story and much more complicated to implement.
> However if community wants this we can start to discuss possible ways
> to implement it.

Like the Open Build Service that Mer uses.

If we change a library and cause a regeneration of the -dev then any project (in
Extras:Devel) that build-depends on it is rebuilt.

Our Extras packages also build against the current version of the OS, the last
released version, any testing version and the experimental releases too. This
means that you get early notification of upcoming build issues.

Of course this happens on multiple architectures too.

>> Personally, I would much rather the autobuilder dependency problem was fixed
>> (with some method for submiting multiple packages with build dependencies and
>> having them build in the right order, with the dependencies being satisfied)
>> instead of this particular feature.
>>
> Submitting is the main problem. As far as I know dput can't upload
> several packages at the same time. Any ideas how to do this?
Yes, we do it all the time :)

But having working dependencies simply means they stay 'blocked' until the
required package is ready.

>> But I realise others may disagree!
> True. Most of developers developing one application and don't care
> about this feature.
> Main supporters for it is your project, pymaemo, efl and a few others,
> who has a lot of packages. And most of them have their own workarounds
> implemented.

Again true.

However we also handle community contributed shared libraries. What happens if
someone uploads (and so owns) eg libsqlite3
Now other people build against it.
Then the uploader upgrades it to an API-incompatible version...
Without dependency tracking no-one even notices. So whilst they may not clamour
for it, they probably do need it.

Oh, and OBS is looking at exactly the same tag->build too. Seems a shame that
there are so many partially finished wheels around...

David

-- 
"Don't worry, you'll be fine; I saw it work in a cartoon once..."
More information about the maemo-developers mailing list