On Friday, 17 April 2009 11:40:04 Michael Schroeder wrote:
On Thu, Apr 16, 2009 at 11:59:42PM +0200, Andreas Gruenbacher wrote:
* When checking out a link, always expand it against the revision of the target package that the link was created against. That way, links cannot break (unless the target package is deleted).
Just to make sure I understand you: This is just about the checkout? The build service still builds packages with the link applied to the latest revision?
Yes, *exactly*. This is about what osc checks out, and it is about recording which revision of the target a link was generated against in the first place in order to even allow that. It has nothing to do with the existing <link rev=...> mechanism aka osc linkpac --revision aka osc linkpac --current.
So your checked out sources don't match the sources used for building?
When links are involved, the version that a checkout produces by definition cannot be the same as the version used for building the link package at different points in time: the very idea of source links is to have changes propagate automatically without requiring a manual merge. I absolutely want to be able to reproduce the original version of a link package as it was originally created. The easiest way to get there is to simply make this the default checkout behavior (but to indicate to the user that more recent revisions of the target package are available and that a merge is required). If you really, really insist on performing an automatic merge upon checkout, feel free to go ahead and implement that, but please do give users a choice to check out the original version if they want to, and use three-way merges instead of just apply a basically random diff which may misapply in the most obscure ways without without the user even noticing.
Freezing the sources used for building is easy (just specify a revision when creating the link), but automatic building against the latest sources is a very much wanted feature.
Yes, no disagreement here at all. Thanks, Andreas -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org