On Sat, 21 Oct 2006 08:31:31 -0700 Brian Harring <[EMAIL PROTECTED]> wrote:
> On Sat, Oct 21, 2006 at 02:27:19PM +0000, Philip Walls wrote: > > On Sat, Oct 21, 2006 at 02:34:08PM +0100, Ciaran McCreesh wrote: > > > On Sat, 21 Oct 2006 12:51:19 +0000 Philip Walls <[EMAIL PROTECTED]> > > > wrote: > > > | This argument here can also be applied to the -r#.# solution you > > > | mentioned, so I think the decision between -r#.# and -local# is really > > > | just a matter of aesthetics. I'm on the fence as to which is best. > > > > > > The -r#.#.#.# solution is cleaner IMO. With -local# you'd still need to > > > handle -local#.# or -local#-reallylocal-# to allow users to override > > > overlays that override the main repository. > > > > > > > I have a feeling the above is a solution waiting for problem, but from > > a flexibility standpoint I actually really like it :) > > > > Adding this kind of revision number will convolute the version > > comparison a bit, and the dep calculation will have to be patched to > > allow this (currently it only allows for real floating point numbers). > > > > I think we'll want to refactor the vercmp() so that there is a > > separate function for comparing version numbers (eg. 1.5 vs. 1.100 vs. > > 1.02) which the revision comparison can use as well. > > Be aware that if you reuse the vercmp logic, you're getting the > special case float comparison rules, meaning 1.02 is less then 1.1 in > comparison... > > Wouldn't introduce that for rx.y personally unless you've got a good > reason for it. Do you have a good reason to a) limit -r to X.Y instead of a full version specifier (i.e. -r1.2.3a)? b) use different semantics for these parts? Still have the issue with the = operator though, not sure which way to go there: - do nothing and let users handle the problems - change semantics of = to only check the first part of a revision specifier (IMO intransparent, also means that users loose the ability to specify an exact version+revision in atoms) - add a new operator that acts like = except that it only checks the first component of a revision specifier - tell devs to write deps in a way to account for this feature (might be quite complicated in some cases) Marius -- gentoo-dev@gentoo.org mailing list