incubator-ivy-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xavier Hanin (JIRA)" <>
Subject [jira] Resolved: (IVY-383) LatestRevisionStrategy has split personality
Date Fri, 23 Feb 2007 09:02:07 GMT


Xavier Hanin resolved IVY-383.

    Resolution: Fixed

I finally find time to investigate on your issue, and I think I've fixed it. At least your
unit test is now passing.
The solution I've used is to delegate the comparison of dynamic revisions to VersionMatcher,
because it's the only way to be really compliant with pluggable VersionMatchers. So it should
fix the issue in a generic way.

What I dislike with my solution is that it introduces a circular dependency: LatestRevisionStrategy
depends on VersionMatcher, and the VersionRangeMatcher depends on LatestStrategy... but I
don't see how to avoid that.

If you find time to give it a try in real life to confirm it's working properly, then I'll
close the issue.

> LatestRevisionStrategy has split personality
> --------------------------------------------
>                 Key: IVY-383
>                 URL:
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.4.1
>         Environment: all
>            Reporter: John Williams
>         Assigned To: Xavier Hanin
>            Priority: Critical
>             Fix For: 1.5
>         Attachments: IVY-383-breadth-first-resolve.patch, IVY-383-LatestConflictManager.patch,
IVY-383-LatestRevisionStrategy-argcheck.patch, IVY-383-testcase.patch
> LatestRevisionStrategy seems to compare both revision numbers and revision number patterns,
but the implementation of patterns broken.  For instance, patterns like "1.0+" are treated
specially, but patterns like "[1.0,)" are treated like literal revision numbers!  I have a
case in which this causes conflict resolution to produce incorrect results.  I'll hopefully
be posting a patch soon to fix the particular resolution problem I've found, but I'm suspicious
that there are other cases in which patterns are erroneously passed to LatestRevisionStrategy.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message