Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 340016

Summary: conflicting dependencies between jdt.ui and eclipse.platform due to wrong tag
Product: [Eclipse Project] Platform Reporter: Bouchet Stéphane <sbouchet>
Component: RelengAssignee: Kim Moir <kim.moir>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: P3 CC: daniel_megert, david_williams, dennis.huebner, kim.moir, pwebster
Version: 3.7   
Target Milestone: 3.7 M7   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on:    
Bug Blocks: 340462    
Attachments:
Description Flags
jdt.ui MANIFEST.MF none

Description Bouchet Stéphane CLA 2011-03-15 09:18:06 EDT
Created attachment 191209 [details]
jdt.ui MANIFEST.MF

Hi,

using 3.7milestones repository for my build, i ran into a conflicting dependency between jdt.ui and eclipse platform.

the feature.xml of eclipse platform is requiring eclipse.search 3.6.100 :
https://hudson.eclipse.org/hudson/user/sbouchet/my-views/view/Obeo/job/m2t-acceleo-3.1/ws/buildroot/target.platform/features/org.eclipse.platform_3.7.0.v20110121-9fF7OHGyFsAlpuWVeMel4CcNBmNslp8D-B/feature.xml/*view*/

and the jdt.ui plugin is requiring the range [3.7.0,4.0.0) :
https://hudson.eclipse.org/hudson/user/sbouchet/my-views/view/Obeo/job/m2t-acceleo-3.1/ws/buildroot/target.platform/plugins/org.eclipse.jdt.ui_3.7.0.v20110309-1800.jar

when i tried to build using buckminster, i got an error because of the 2 versions available in the targetplatform.
Comment 1 Dani Megert CLA 2011-03-15 09:34:52 EDT
Looks like a bug in the builder or the repository you're using. The official 3.7 M7 (http://download.eclipse.org/eclipse/downloads/drops/S-3.7M6-201103101119/index.php) platform feature has the following entry:

 <plugin id="org.eclipse.search" download-size="0" install-size="0" version="3.7.0.v20110208-0800" unpack="false" /> 

Nothing JDT UI can do here. Can you provide more data about the repository and builder that you're using?
Comment 2 Bouchet Stéphane CLA 2011-03-15 10:09:31 EDT
(In reply to comment #1)
> Looks like a bug in the builder or the repository you're using. The official
> 3.7 M7
> (http://download.eclipse.org/eclipse/downloads/drops/S-3.7M6-201103101119/index.php)
> platform feature has the following entry:
> 
>  <plugin id="org.eclipse.search" download-size="0" install-size="0"
> version="3.7.0.v20110208-0800" unpack="false" /> 
> 
> Nothing JDT UI can do here. Can you provide more data about the repository and
> builder that you're using?

i am using buckminster build [1] and pointing to an update site[2] ( no drops ) 

i'll try with http://download.eclipse.org/eclipse/updates/3.7milestones/S-3.7M6-201103101119 update site instead [2]

[1] https://hudson.eclipse.org/hudson/job/m2t-acceleo-3.1
[2] http://download.eclipse.org/eclipse/updates/3.7milestones
Comment 3 Bouchet Stéphane CLA 2011-03-15 10:29:10 EDT
Maybe i found the problem. 

using
http://download.eclipse.org/eclipse/updates/3.7milestones/S-3.7M6-201103101119

made my build work.
so i looked into the http://download.eclipse.org/eclipse/updates/3.7milestones
update site to know why it odes not get the correct version ( apprarently the
M5 version ) and i found that the composite repo provides 5 versions of
org.eclipse.platform : 

Version    3.7.0.v20100923-9fF7MHDqFsAkplGz0n61z-yU57WHoz0JdMfaI
Version    3.7.0.v20100923-9fF7JHAiFsAuq4Goz-NCfThFOyVEwz0z0Pmu4
Version    3.7.0.v20100729-9gF7GHFPFt6trrIGbNdrAdypdOBawUc9M
Version    3.7.0.v20100729-9gF7FHAjFt6troI8QvbrOg-qClDbTWNDM4
Version    3.7.0.r20110302-9gF7SHCIFt6ms-lIjrC6vK_XO-IabJMKu

notice the 2 last versions : 
3.7.0.v20100729
3.7.0.r20110302

could p2 or buckminster can pick up 3.7.0.v2010 in place of 3.7.0.r2011 just
because of '3.7.0.v' > '3.7.0.r' ?
Comment 4 Dani Megert CLA 2011-03-15 10:43:16 EDT
> could p2 or buckminster can pick up 3.7.0.v2010 in place of 3.7.0.r2011 just
> because of '3.7.0.v' > '3.7.0.r' ?
I think so. It was definitely a wrong tag that was used.

Same problem for the org.eclipse.equinox.core.sdk  feature.
Comment 5 Kim Moir CLA 2011-03-15 11:13:07 EDT
I've fixed the tag for the next I-build.  If you could temporarily point to the child repository instead of the composite milestone repository, this will avoid the problem until the next milestone is released.
Comment 6 Bouchet Stéphane CLA 2011-03-15 11:19:39 EDT
(In reply to comment #5)
> I've fixed the tag for the next I-build.  If you could temporarily point to the
> child repository instead of the composite milestone repository, this will avoid
> the problem until the next milestone is released.
kim,

i've done that for now, and blogged about this situation if somebody encounter the same problem.
Comment 7 Kim Moir CLA 2011-03-15 11:29:04 EDT
closing.
Comment 8 Kim Moir CLA 2011-03-15 11:37:21 EDT
Thanks for blogging about that Stephane, this is helpful for other teams.

http://sbouchet-eef.blogspot.com/2011/03/eclipse-37m6-and-releng-stories.html
Comment 9 David Williams CLA 2011-03-15 11:44:42 EDT
Looks like you use the "high" level one in one spot in your b3 aggregator contribution file, for the "rcp sdk product", but the specific M6 child one elsewhere. Not sure it matters (pretty sure it doesn't) but thought I'd point that out, just in case it does: 

<repositories location="http://download.eclipse.org/eclipse/updates/3.7milestones" description="Eclipse and Equinox 3.7 release">
    <products name="org.eclipse.rcp.sdk.id" versionRange="3.7.0.I20110310-1119"/>
</repositories>

Thanks,
Comment 10 David Williams CLA 2011-03-20 16:15:34 EDT
To cross reference, see bug 340462 for follow on problems this solved. 
I think in general, if there is a "bad repository", in this case 
http://download.eclipse.org/eclipse/updates/3.7milestones
this the repository needs to be fixed ... not just "fixed next milestone, by fixing the versioning" ... for example, in the worst case, the high level repo in this case could have been changed to point to only the M6 child, so at least it would be valid. 

Now, from another angle, 

The common repo for M6 at 
releases/indigo/201103180900/

still contains the "highlevel" milestone URL in addition to the M6 specific one. 
I'm thinking the high level one should be removed, since it is, basically, in composite, an invalid repository. 

<child location='http://download.eclipse.org/eclipse/updates/3.7milestones/S-3.7M6-201103101119'/>
<child location='http://download.eclipse.org/eclipse/updates/3.7milestones'/>
<child location='aggregate'/>


Any objections? Any reason this would cause more problems that it could solve?
Comment 11 David Williams CLA 2011-03-20 20:10:23 EDT
I have fixed "by hand", the compositeArtifacts.jar file at 
/releases/indigo/201103180900

Let me know if issues.