Discussion:
[tycho-dev] Bug/limitation: in-reactor bundle hides other versions of bundle from target platform
Andreas Sewe
2017-05-04 10:07:30 UTC
Permalink
Hi tycho-dev,

I think I may have come across a bug/limitation in the way
eclipse-repository projects make use of the target platform.

For complicated legacy reasons I have the following multi-module build
for project "foo":

- An eclipse-target-definition
which references an update site containing bar.feature.group
which includes foo.plugin *1.0.0*

- An eclipse-plugin foo.plugin *2.0.0*

- An eclipse-feature foo.feature.group
which includes foo.plugin 2.0.0

- An eclipse-repository foo-updates
which includes foo.feature.group
and bar.feature.group

The multi-module build fails with the following error:

[ERROR] Cannot resolve project dependencies:
[ERROR] Software being installed: foo-updates
raw:2.0.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):2.0.0-SNAPSHOT
[ERROR] Missing requirement: bar.feature.group 1.0.0 requires
'foo.plugin [1.0.0] but it could not be found
[ERROR] Cannot satisfy dependency: foo-updates
raw:2.0.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):2.0.0-SNAPSHOT depends
on: bar.feature.group 0.0.0

Apparently, Tycho doesn't find foo.plugin 1.0.0, even though it is in my
target platform. I assume this is because the in-reactor foo.plugin
2.0.0 hides it somehow.

Is this a bug?

Best wishes,

Andreas
--
Codetrails GmbH
The knowledge transfer company

Robert-Bosch-Str. 7, 64293 Darmstadt
Phone: +49-6151-276-7092
Mobile: +49-170-811-3791
http://www.codetrails.com/

Managing Director: Dr. Marcel Bruch
Handelsregister: Darmstadt HRB 91940
Sievers, Jan
2017-05-05 07:41:51 UTC
Permalink
unless I am mistaken local reactor artifacts always win over remote target platform artifacts and this is intentional.

Regards
Jan

On 04.05.17, 12:07, "tycho-dev-***@eclipse.org on behalf of Andreas Sewe" <tycho-dev-***@eclipse.org on behalf of ***@codetrails.com> wrote:

Hi tycho-dev,

I think I may have come across a bug/limitation in the way
eclipse-repository projects make use of the target platform.

For complicated legacy reasons I have the following multi-module build
for project "foo":

- An eclipse-target-definition
which references an update site containing bar.feature.group
which includes foo.plugin *1.0.0*

- An eclipse-plugin foo.plugin *2.0.0*

- An eclipse-feature foo.feature.group
which includes foo.plugin 2.0.0

- An eclipse-repository foo-updates
which includes foo.feature.group
and bar.feature.group

The multi-module build fails with the following error:

[ERROR] Cannot resolve project dependencies:
[ERROR] Software being installed: foo-updates
raw:2.0.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):2.0.0-SNAPSHOT
[ERROR] Missing requirement: bar.feature.group 1.0.0 requires
'foo.plugin [1.0.0] but it could not be found
[ERROR] Cannot satisfy dependency: foo-updates
raw:2.0.0.'SNAPSHOT'/format(n[.n=0;[.n=0;[-S]]]):2.0.0-SNAPSHOT depends
on: bar.feature.group 0.0.0

Apparently, Tycho doesn't find foo.plugin 1.0.0, even though it is in my
target platform. I assume this is because the in-reactor foo.plugin
2.0.0 hides it somehow.

Is this a bug?

Best wishes,

Andreas
--
Codetrails GmbH
The knowledge transfer company

Robert-Bosch-Str. 7, 64293 Darmstadt
Phone: +49-6151-276-7092
Mobile: +49-170-811-3791
http://www.codetrails.com/

Managing Director: Dr. Marcel Bruch
Handelsregister: Darmstadt HRB 91940
Andreas Sewe
2017-05-05 07:50:41 UTC
Permalink
Hi Jan,
Post by Sievers, Jan
unless I am mistaken local reactor artifacts always win over remote target platform artifacts and this is intentional.
after posting here (BTW, should have gone to tycho-users; sorry) I came
across Bug 347177 [1], which seems to capture this situation. In it,
Tobias [1] argues that "Tycho should certainly issue a warning in this
case if there are older versions of locally built bundles in the target
platform, but it shouldn't prevent that they are there." I tend to
agree; at least, I have a real-world use case for it (hidden behind all
the foos and bars ;-).

Best wishes,

Andreas

[1] <https://bugs.eclipse.org/bugs/show_bug.cgi?id=347177>
[2] <https://bugs.eclipse.org/bugs/show_bug.cgi?id=347177#c6>
--
Codetrails GmbH
The knowledge transfer company

Robert-Bosch-Str. 7, 64293 Darmstadt
Phone: +49-6151-276-7092
Mobile: +49-170-811-3791
http://www.codetrails.com/

Managing Director: Dr. Marcel Bruch
Handelsregister: Darmstadt HRB 91940
Loading...