ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xavier Hanin" <xavier.ha...@gmail.com>
Subject Re: eviction and conflict manager
Date Fri, 23 Feb 2007 15:36:39 GMT
On 2/23/07, Gilles Faucherand <gilles.faucherand@genostar.com> wrote:
>
> It's done.
>
> But, bug by comparing the ivy file of the module and the ivy file copied
> in the repository,
> the status attribute seems to be not correctly set ... (first line is
> the ivy file module)
>
> <   <info organisation="MyCompany" module="C" revision="1.0.1"
> status="release" />
> ---
> >   <info organisation="MyCompany" module="C" revision="1.0.1"
> status="integration" publication="20070223151439"/>
>
> Whereas if I use the status attribute of the publish task, it works...
> Another JIRA issue ?


No, according to the documentation of the publish task, the status
defaults to ${
ivy.status
}, and is thus always set during publish, no matter the one found in
your original ivy file.

Xavier

Gilles
>
> Gilles Faucherand wrote:
> > Xavier Hanin wrote:
> >> On 2/23/07, Gilles Faucherand <gilles.faucherand@genostar.com> wrote:
> >>>
> >>> Xavier Hanin wrote:
> >>> > On 2/23/07, Gilles Faucherand <gilles.faucherand@genostar.com>
> wrote:
> >>> >>
> >>> >> Hi,
> >>> >>
> >>> >> I have some problems with eviction strategy. I set a
> >>> >> defaultConflictManager="latest-time"
> >>> >> in my ivyconf meaning for me if a conflict appears to retrieve
> >>> all the
> >>> >> time the last in time published.
> >>> >>
> >>> >> Say for instance that I have 3 modules A, B and C.
> >>> >> 1) I publish C-1.0.0 and later C-1.0.1.
> >>> >> 2) B needs  C-1.0.0, I retrieve (ok) and I publish B-1.0.0
> >>> >> 3) A needs B-1.0.0 and C-1.0.1  (order is important: B before C
> >>> in ivy
> >>> >> file  ...)
> >>> >>
> >>> >> When I retrieve I get C-1.0.0 ???
> >>> >>   [resolve]     :: evicted modules:
> >>> >>   [resolve]     [ MyCompany | C | 1.0.1 ] by [[ MyCompany | C |
> >>> 1.0.0]]
> >>> >> in [all]
> >>> >>   [resolve]       in [ MyCompany | A | 1.0.0 ] with latest-time
> >>> >>
> >>> >> If I change the order in the ivy file i.e. C before B, I get what
I
> >>> want
> >>> >> C-1.0.1 ...
> >>> >>   [resolve]     :: evicted modules:
> >>> >>   [resolve]     [ MyCompany | C | 1.0.0 ] by [[ MyCompany | C |
> >>> 1.0.1]]
> >>> >> in [all]
> >>> >>   [resolve]       in [ MyCompany | B | 1.0.0 ] with latest-time
> >>> >>
> >>> >> Is it normal ?
> >>> >
> >>> >
> >>> > No, this is not normal. The only reason why this should happen is if
> >>> > the two
> >>> > revision are considered equal according to the latest revision
> >>> strategy
> >>> > used, in your case latest-time. So this should only happen if the
> two
> >>> > have
> >>> > the same time of publication. Note that Ivy uses the publication
> time
> >>> > in the
> >>> > Ivy file during conflict resolution, so make sure you have set the
> >>> > publication attribute in your ivy files in your repository.
> >>> You mean in the ivy file of the module C  <info
> >>> organisation="MyCompany"
> >>> module="C" ... publication="xxxxx"  >
> >>> No, or I should change this date each time I publish and I've got a
> >>> nightly builder ...
> >>>
> >>> After publication in the repository the ivy file created was
> >>> myrepos/MyCompany/C/ivy-1.0.0.xml (following my ivy artifact pattern)
> >>>
> >>> <?xml version="1.0" encoding="UTF-8"?>
> >>> <ivy-module version="1.0">
> >>>   <info organisation="MyCompany" module="C" revision="1.0.0"
> >>> status="integration" publication="20070223132315"/>
> >>> ...
> >>> </ivy-module>
> >>>
> >>> A publication date is set ... I thought this date was used ?
> >>
> >>
> >> Yes, this the one which should be used: the ivy file for C 1.0.0 and
> >> the one
> >> for C 1.0.1 in your repository. Compare the two publication dates and
> >> make
> >> sure they are different.
> > yes, they are:
> >
> > <   <info organisation="MyCompany" module="C" revision="1.0.0"
> > status="integration" publication="20070223142657"/>
> > ---
> > >   <info organisation="MyCompany" module="C" revision="1.0.1"
> > status="integration" publication="20070223142715"/>
> >
> > ok, I add an issue in JIRA.
> >
> > Thanks for your help.
> >
> > Gilles
> >
> >> But I realize that during conflict resolution, the
> >> ivy files are not downloaded, so it seems to be a bug in Ivy to try
> >> to rely
> >> on this publication date in the ivy file. It should better rely on
> >> the last
> >> modified timestamp of the file. Could you please add an issue in JIRA?
> >>
> >> - Xavier
> >>
> >>
> >>> If you still
> >>> > have the problem, you can open a JIRA issue describing your problem
> >>> > and your
> >>> > environment.
> >>> >
> >>> > Xavier
> >>> >
> >>> >
> >>> >
> >>> > Thanks in advance,
> >>> >> Gilles
> >>> >>
> >>> >>
> >>> >
> >>>
> >>>
> >>
> >
> >
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message