Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 348933 - Wrong cyclic reference detected with Tycho 0.13.0-SNAPSHOT
Summary: Wrong cyclic reference detected with Tycho 0.13.0-SNAPSHOT
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Tycho (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Tobias Oberlies CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 351765 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-06-09 13:20 EDT by Sebastien Arod CLA
Modified: 2021-04-28 16:55 EDT (History)
5 users (show)

See Also:


Attachments
Small project allowing to reproduce the issue (1.30 MB, application/x-zip-compressed)
2011-06-09 13:22 EDT, Sebastien Arod CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastien Arod CLA 2011-06-09 13:20:15 EDT
Build Identifier: 

Tycho 0.13.0-SNAPSHOT detect a wrong cyclic reference for no apparent reason.
This looks like a regression because it works fine in tycho 0.12.0

Reproducible: Always

Steps to Reproduce:
I will attach a small project allowing to reproduce the issue
1. Unzip the attached file.

2. Modify in the target definition the path to the place where you unzipped the file:
Open org.eclipse.tychobug.target/rap-target.target file 
Modify 
<repository location="file:/C:/dev/tmp/tychobug/site/org.eclipse.tycho.tychobug.site/"/>
and replace C:/dev/tmp/tychobug by the path where you extracted the zip file.

3. run mvn in the directorty where the zip was extracted:
mvn clean install -Dtycho.version=0.13.0-SNAPSHOT

When tycho 0.13.0-SNAPSHOT is used it fails with:
[ERROR] The projects in the reactor contain a cyclic reference: Edge between 'Vertex{label='tychobug:org.eclipse.equinox
.util:1.0.200-SNAPSHOT'}' and 'Vertex{label='tychobug:org.eclipse.equinox.ds:1.2.1-SNAPSHOT'}' introduces to cycle in th
e graph tychobug:org.eclipse.equinox.ds:1.2.1-SNAPSHOT --> tychobug:org.eclipse.equinox.util:1.0.200-SNAPSHOT --> tychob
ug:org.eclipse.equinox.ds:1.2.1-SNAPSHOT -> [Help 1]

This works fine with tycho 0.12.0
mvn clean install -Dtycho.version=0.12.0
Comment 1 Sebastien Arod CLA 2011-06-09 13:22:28 EDT
Created attachment 197709 [details]
Small project allowing to reproduce the issue
Comment 2 Tobias Oberlies CLA 2011-06-29 10:28:36 EDT
Thanks for the good bug report. This is in fact a regression, but it won't be hard to fix.
Comment 3 Tobias Oberlies CLA 2011-07-13 03:29:55 EDT
Actually the fix that I had in mind (i.e. not using the target platform IUs as extra-IUs in the Tycho p2 resolver) has some side-effects (i.e. the non-explicit dependency management possible today won't work any more), so we need to discuss this first.

The reason why you are seeing this issue is because you have things in your target platform that have (at least run-time) dependencies on the bundles you are building, i.e. org.eclipse.equinox.util. Is this necessary or a conincidence? Could you try to cut down the target platform to the things that you really need?

Note: You can also put bundles into the target definition, if you edit the .target file with a text editor.
Note: Tycho unfortunately only has limited support for target files, i.e. the includeMode=slicer is currently not supported (see bug 342808).
Comment 4 Igor Fedorenko CLA 2011-07-13 08:40:56 EDT
*** Bug 351765 has been marked as a duplicate of this bug. ***
Comment 5 Tobias Oberlies CLA 2011-07-20 10:12:28 EDT
Fixed with 8b8a6f6. 

As a side-effect of the fix, Tycho doesn't have any dependency management capabilities any more -- currently, target files are interpreted simply as a list of repositories. It used to be limited (cf. bug 342808), but with the current state, it is high time to implement bug 342808.
Comment 6 Kai Kreuzer CLA 2011-07-21 09:31:53 EDT
Hi Tobias,

does that mean that with the commit of this fix the target file support is broken?
Wouldn't it then be a better idea to synchronize this commit with the fix for bug 342808?

I am relying on 0.13.0-SNAPSHOT for my build (because of some other fixed bugs), which now does not work anymore (and it did with 0.12.0)...
Comment 7 Tobias Oberlies CLA 2011-07-22 05:38:11 EDT
This is a tricky problem - some people may have been blocked by this issue, some are by bug 342808. The obvious solution is to also fix bug 342808 - and it will be fixed in 0.13.0.

Until then, the only workaround for you that I can think of is to build a version of 0.13.0-SNAPSHOT locally which is working for you, and prevent that the CI build SNAPSHOTs are pulled in. Sorry for the inconvenience.