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

Bug 321453

Summary: Dependency on new plugin org.eclipse.ant.launching in Eclipse 3.6 causing API compatiibility issue for our datatools Eclipse 3.4 code
Product: [Eclipse Project] Platform Reporter: Rekha <nrekha>
Component: AntAssignee: Platform-Ant-Inbox <platform-ant-inbox>
Status: RESOLVED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: darin.eclipse, lj, lozanoj, Michael_Rennie, pwebster, remy.suen
Version: 3.6   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Rekha CLA 2010-08-01 05:37:32 EDT
Build Identifier: 3.6 - I20100507

We are trying to have API compatibility between our Eclipse 3.4 code and Eclipse 3.6 code
In Eclipse 3.6 there is a new plugin org.eclipse.ant.launching.  The SQLJ plugin manifest needs to be updated to include a dependency on this new plugin based on the delegation implemented 
in org.eclipse.ant.internal.ui.launchConfigurations.AntLaunchDelegate. This was not the case in Eclipse 3.4. Unfortunately, we cannot have this new dependency in Eclipse 3.4

Reproducible: Always
Comment 1 Darin Wright CLA 2010-08-03 09:16:57 EDT
Is this a source or a binary (runtime) compatibility issue? I've done a few experiments and found that, for example, if one were subclassing the AntLaunchDelegate that things still work in a 3.6 runtime, but there are source compatibility issues. The compilation problems go away if ant.ui re-exports the new launching bundle.
Comment 2 Loic JULIEN CLA 2010-08-03 12:32:44 EDT
(In reply to comment #1)
> Is this a source or a binary (runtime) compatibility issue? I've done a few
> experiments and found that, for example, if one were subclassing the
> AntLaunchDelegate that things still work in a 3.6 runtime, but there are source
> compatibility issues. The compilation problems go away if ant.ui re-exports the
> new launching bundle.

Thanks Darin. This would be great and would allow to compile and run. 

Could this be delivered to 361?

Thanks,
~Loic
Comment 3 Darin Wright CLA 2010-08-04 10:37:49 EDT
Loic, could you confirm if this is a source compatibility issue? i.e. is the problem that you can't compile 3.4 based code on the 3.6 code base, or that you cannot run 3.4 binaries on the 3.6 release? Generally, we guarentee binary compatibility (i.e. 3.4 binaries continue to run on 3.6), but we don't guarentee source compatibility.
Comment 4 Loic JULIEN CLA 2010-08-04 14:22:23 EDT
(In reply to comment #3)
> Loic, could you confirm if this is a source compatibility issue? i.e. is the
> problem that you can't compile 3.4 based code on the 3.6 code base, or that you
> cannot run 3.4 binaries on the 3.6 release? Generally, we guarentee binary
> compatibility (i.e. 3.4 binaries continue to run on 3.6), but we don't
> guarentee source compatibility.

Hi Darin,

I thank you for your question. We are bringing an environment dedicated to issues like this so that it will be easier to answer questions. Will get back to you shortly.

Thanks,
~Loic
Comment 5 Loic JULIEN CLA 2010-08-17 14:59:00 EDT
(In reply to comment #3)
> Loic, could you confirm if this is a source compatibility issue? i.e. is the
> problem that you can't compile 3.4 based code on the 3.6 code base, or that you
> cannot run 3.4 binaries on the 3.6 release? Generally, we guarentee binary
> compatibility (i.e. 3.4 binaries continue to run on 3.6), but we don't
> guarentee source compatibility.

Hi Darin,

We confirm this is a source compatibility issue. If you were to reexport the plugin, our compilation issue would go away (we also validated this). Is this something that could be delivered in 3.6.1?

Thank you,
~Loic
Comment 6 Darin Wright CLA 2010-08-18 10:23:26 EDT
Would it be possible to add an optional dependency on the new bundle for the code that compiles against 3.6? That way the code will compile against 3.6, and continue to run against 3.4:

Require-Bundle: 
org.eclipse.ant.launching;bundle-version="[1.0.0,2.0.0)";resolution:=optional
Comment 7 Rekha CLA 2010-08-19 15:56:18 EDT
(In reply to comment #6)
> Would it be possible to add an optional dependency on the new bundle for the
> code that compiles against 3.6? That way the code will compile against 3.6, and
> continue to run against 3.4:
> 
> Require-Bundle: 
> org.eclipse.ant.launching;bundle-version="[1.0.0,2.0.0)";resolution:=optional

Hello Darin,
Thanks for helping us!!

Apologize for not responding sooner.
We will try adding it and compile.Will update you with the status. 

Thanks,
Rekha
Comment 8 lozanoj CLA 2010-08-23 14:30:11 EDT
(In reply to comment #7)
> (In reply to comment #6)
> > Would it be possible to add an optional dependency on the new bundle for the
> > code that compiles against 3.6? That way the code will compile against 3.6, and
> > continue to run against 3.4:
> > 
> > Require-Bundle: 
> > org.eclipse.ant.launching;bundle-version="[1.0.0,2.0.0)";resolution:=optional
> 
> Hello Darin,
> Thanks for helping us!!
> 
> Apologize for not responding sooner.
> We will try adding it and compile.Will update you with the status. 
> 
> Thanks,
> Rekha


We added and compiled the suggestion. This helps out with compatibility issue. Thanks
Comment 9 Michael Rennie CLA 2010-08-24 13:57:00 EDT
Thanks for reporting back.

Marking as wontfix, since no changes were required by the platform to make this work.