[maemo-developers] Autobuilder repository priority ?
From: Ed Bartosh bartosh at gmail.comDate: Sun Nov 1 00:35:08 EET 2009
- Next message: Autobuilder repository priority ?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
2009/10/31 Attila Csipa <maemo at csipa.in.rs>: > On Saturday 31 October 2009 14:49:24 Ed Bartosh wrote: >> > is IMHO that the repository priorities seem to be wrong. The autobuilder >> > should be using the highest version in the TOP PRIORITY repository that >> > satisfies a dependency to avoid breakage because of unstable stuff in >> > -devel and because otherwise a package can't be promoted without dragging >> > other folks' packages with them. Thoughts ? >> >> The reason of this is that apt designed so that it will always install >> higher possible version of package. It's actually rather good than >> bad. Imagine what would happen if it would work another way. No new >> python-dbus ever :) > > This is not entirely correct (and definitely not recommended in our case of the > autobuilder). Apt uses priorities (both repository and package level > priorities can be defined, 'pinned') to decide which package to use to satisfy > a dependency, and only if the priorities are equal does it base the choice on > version number. > > Why is the current (same-priority, version only) approach bad ? > > Say, my app depends on python-dbus. I test it with version A, currently in the > SDK and it works just fine. I upload and promote my app. All is well. However, > later, the pymaemo team uploads a newer, experimental B version into -devel. > From that point on I am NO LONGER ABLE to reliably update my application nor > promote it (this actually happened to me, my stuff compiles in SDK, but not in > the autobuilder for this very reason). > True. However there can be another situation: SDK version of python-dbus is buggy and you can't use it with your application. You would have to wait until new fixed version of python-dbus reaches high priority repo to be able to build your application with it. Not so good for application developer, either. I don't want to say that current uproach is the best, just want to show you another side of the problem. > But you can specify a fixed version dependency (the one in SDK and extras), you > say ? > But THEN I get to the problem of no updates. If bugs get squashed in the > -devel version of the library I'm using, the user will never be able to > upgrade to it, as my package is insisting on the old version (and the package > manager wisely rather skips updates than removing already installed packages). > > Ubuntu and Debian solve this problem by advising different repository > priorities. Stable has a highest priority, Testing is lower and Unstable is > lowest. If there is a package in Stable that satisfies my requirement, that's > the one that should be used. Are you sure it works this way? I thought that packages are built with dependencies from unstable in Debian, just like they're built against extras-devel in Maemo. > But then it will never get updated, you say ? > Wrong ! Remember what I said up there - if the priority is the same, the > version decides. So, the moment a new version of the dependency reaches > *Stable*, it will become the highest priority and will get updated. It's a > recommendation that dependencies should be REALISTICALLY listed. You should > not depend on a high version number just because it's new or even because it's > the one bundled on the system (!). You should depend on the minimal version > that provides the actual functionality you require. > > Hope my problem is a bit more clear now. > It was clear from your previous mail. Actually python-dbus is not very good example. It's not only SDK package. I might be wrong but I think it's included into PyMaemo releases and is delivered through Extras. Nokia included it into SDK, but this is a special case. SDK packages shouldn't be uploaded to extras-devel at all. There are plans to implement checks on autobuilder side to prevent this. -- BR, Ed
- Next message: Autobuilder repository priority ?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]