[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-dev] build failures with latest snapshot

I think I have said this elsewhere as well [1], but just to make this clear:

This discussion is about dependency resolution, which currently doesn't pick up optional runtime dependencies. I agree that the dependency resolution should treat optional runtime dependencies as optional greedy p2 dependencies.

To fix this problem, no change to the target platform logic is required. The dependency resolution only runs against the target platform, and so if the target platform is stable, the dependency resolution result is also stable. 

Stable target platforms can be defined if
- only immutable p2 repositories are referenced - or -
- p2 repositories which only allow additions (like the Indigo release train repository) are referenced via a .target file with includeMode="slicer"

Regards
Tobias


[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=351842

> -----Original Message-----
> From: tycho-dev-bounces@xxxxxxxxxxx [mailto:tycho-dev-bounces@xxxxxxxxxxx]
> On Behalf Of Igor Fedorenko
> Sent: 26 August 2011 17:34
> To: tycho-dev@xxxxxxxxxxx
> Subject: Re: [tycho-dev] build failures with latest snapshot
> 
> Optional/greedy makes target platform (and thus build result) unstable.
> I think Tycho should either always ignore optional dependencies or
> require them.
> 
> --
> Regards,
> Igor
> 
> On 11-08-26 11:30 AM, Steffen Pingel wrote:
> > I would at least want the resolver to always be greedy and add
> > optional dependencies to the target if they are available. I guess it
> > would be too harsh to fail by default if an optional dependency can't
> > be resolved and not all optional dependencies are required at
> > compile-time anyways.
> >
> > Steffen
> >
> > On Fri, Aug 26, 2011 at 5:19 PM, Igor Fedorenko<ifedorenko@xxxxxxxxxxxx>
> wrote:
> >> Do you mean treat all optional dependencies as required during during
> >> the build?
> >>
> >> --
> >> Regards,
> >> Igor
> >>
> >> On 11-08-26 11:13 AM, Steffen Pingel wrote:
> >>>
> >>> Thanks for the responses. I'll update our build accordingly.
> >>>
> >>> For the record, here is the bug for handling optional dependencies
> >>> during compile-time:
> >>>
> >>>   351842: builds fails when implicit target is used and optional
> >>> dependency is specified as non greedy in p2.inf
> >>>   https://bugs.eclipse.org/bugs/show_bug.cgi?id=351842
> >>>
> >>> I would prefer if optional dependencies were resolved by default and
> >>> didn't need to be specified in the build.properties.
> >>>
> >>> Steffen
> >>>
> >>>
> >>> On Fri, Aug 26, 2011 at 4:20 PM, Igor Fedorenko<igor@xxxxxxxxxxxxxx>
> >>>   wrote:
> >>>>
> >>>> For optional dependencies, I think it is common to have optional
> runtime
> >>>> dependencies that are required for compilation, so I think we need a
> way
> >>>> to decouple compile- and run- time dependencies. Currently,
> >>>> jars.extra.classpath can be used to express compile-only
> dependencies,
> >>>> but I am not sure if this is the best solution going forward.
> >>>>
> >>>> For feature id matching bundle ID... just don't do it. I realize this
> >>>> will cause migration problems, but this never worked reliably
> >>>> before and there are no plans to support artifactId != bundle/feature
> ID
> >>>> in Tycho going forward (see [1]).
> >>>>
> >>>> [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=353384
> >>>>
> >>>> --
> >>>> Regards,
> >>>> Igor
> >>>>
> >>>> On 11-08-26 9:42 AM, Steffen Pingel wrote:
> >>>>>
> >>>>> Since the latest Tycho snapshot release Mylyn builds are starting to
> >>>>> fail. From a quick glance, there are two changes: Optional
> >>>>> dependencies are no longer resolved (we use implicit targets in
> >>>>> nightly builds) and Maven artifact ids are now expected to match
> >>>>> feature and plug-in ids.
> >>>>>
> >>>>> Concerning the optional dependencies, is the Tycho behavior going to
> >>>>> change again or do these now need to be marked as greedy in all
> >>>>> manifests (assuming that's the cause of the problem)?
> >>>>>
> >>>>> Changing artifact ids is easy but what is the recommended strategy
> in
> >>>>> case a plug-in and feature use the same id?
> >>>>>
> >>>>> Thanks,
> >>>>>
> >>>>> Steffen
> >>>>>
> >>>> _______________________________________________
> >>>> tycho-dev mailing list
> >>>> tycho-dev@xxxxxxxxxxx
> >>>> https://dev.eclipse.org/mailman/listinfo/tycho-dev
> >>>>
> >>>
> >>>
> >>>
> >> _______________________________________________
> >> tycho-dev mailing list
> >> tycho-dev@xxxxxxxxxxx
> >> https://dev.eclipse.org/mailman/listinfo/tycho-dev
> >>
> >
> >
> >
> _______________________________________________
> tycho-dev mailing list
> tycho-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-dev