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

Bug 340559

Summary: Conflicting dependency error message during install when using version ranges
Product: [Eclipse Project] Equinox Reporter: DK Mising name <desmond.kirrane>
Component: p2Assignee: Pascal Rapicault <pascal>
Status: CLOSED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: irbull, pascal
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard: stalebug
Attachments:
Description Flags
The issue occurs when you install plugin.c (1.0.0) then try install plugin.b (2.0.0)
none
No issue: The issue does not occur when you install plugin.c (1.0.0) then try install plugin.b (2.0.0) when exact version numbers are used for dependecies none

Description DK Mising name CLA 2011-03-21 06:54:33 EDT
Build Identifier: I20100608-0911

A conflicting dependency error message occurs when installing plugin dependencies use version ranges. The same error does not occur when exact version numbers are used.



Reproducible: Always

Steps to Reproduce:
1. Create the following plugins with a feature to wrap each:
 - plugin.a (1.0.0) requires no other plugin	
 - plugin.b (1.0.0) requires plugin.a [1.0.0,2.0.0) 
 - plugin.c (1.0.0) requires plugin.b [1.0.0,2.0.0) 
2. Create an update site and install install plugin.c
3. Create a new plugin that is a update to plugin.b:
- plugin.b (2.0.0) requires plugin.a [1.0.0,2.0.0) 
4. Add plugin.b (2.0.0) to the update site
5. Try install plugin.b and the following error occurs:

Cannot complete the install because of a conflicting dependency.
  Software being installed: plugin.b 2.0.0 (plugin.b.feature.group 2.0.0)
  Software currently installed: plugin.c 1.0.0 (plugin.c.feature.group 1.0.0)
  Only one of the following can be installed at once: 
    plugin.b 2.0.0 (plugin.b 2.0.0)
    plugin.b 1.0.0 (plugin.b 1.0.0)
  Cannot satisfy dependency:
    From: plugin.b 2.0.0 (plugin.b.feature.group 2.0.0)
    To: plugin.b [2.0.0]
  Cannot satisfy dependency:
    From: plugin.c 1.0.0 (plugin.c 1.0.0)
    To: bundle plugin.b [1.0.0,2.0.0)
  Cannot satisfy dependency:
    From: plugin.c 1.0.0 (plugin.c.feature.group 1.0.0)
    To: plugin.c [1.0.0]


NOTE: this same issue does not occur when using exact version numbers like below:
 - plugin.a (1.0.0) requires no other plugin
 - plugin.b (1.0.0) requires plugin.a [1.0.0]
 - plugin.c (1.0.0) requires plugin.b [1.0.0]

 - plugin.b (2.0.0) requires plugin.a [1.0.0]

In this case the after installing plugin.b the plugins directory will contain both plugin.b (1.0.0) and plugin.b (2.0.0) with version (1.0.0) being inactive.
Comment 1 DK Mising name CLA 2011-03-21 08:20:21 EDT
Created attachment 191606 [details]
The issue occurs when you install plugin.c (1.0.0) then try install plugin.b (2.0.0)

Reproduce:
1. Using the update site attached.
2. Install plugin.c (1.0.0) 
3. Try install plugin.b (2.0.0)
4. Dependency error occurs.
Comment 2 DK Mising name CLA 2011-03-21 08:22:48 EDT
Created attachment 191607 [details]
No issue: The issue does not occur when you install plugin.c (1.0.0) then try install plugin.b (2.0.0) when exact version numbers are used for dependecies

Issue foes NOT occur in the case:
1. Using the update site attached
2. Install plugin.c (1.0.0)
3. Install plugin.b (2.0.0)
4. Install performs successfully with no dependency error.
Comment 3 Pascal Rapicault CLA 2011-06-11 17:52:10 EDT
The behaviour of the first scenario is normal. The range form C to B excludes 2.0 therefore when you try to install B 2.0 there is a conflict.

I need to look at the second one in more details.
Comment 4 Eclipse Genie CLA 2019-08-30 13:00:57 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.