Community
Participate
Working Groups
See also bug 231453. Remotecdt has only bundle dependencies, so when picking it with a P2 enabled Eclipse, it will install only required plugins (which are only from RSE core). It will not, however, install User docs or any connection type specific plugin such as Local, SSH or DStore. This makes the resulting installation unusable. It has been discussed to create a feature dependency from the remotecdt feature to, let's say the rse-core feature and rse-ssh feature. But if this is done, it is no longer possible to build a product which includes rse-core, remotecdt but not ssh. Since I need to weigh the requirements of commercial product builders higher than those of update site consumers, I need to avoid the feature dependencies. The bug is a direct result of a "specification update" in P2 compared to classic update manager, where P2 always computes dependencies late (without user feedback) and on bundle granularity, whereas classic update manager computed dependencies always on feature granularity and allowed the user to review the selection after "select required". Any ideas for solving this dilemma are most highly welcome, but it looks like we'll need to document this limitation in the README. -----------Enter bugs above this line----------- TM 3.0RC3a testing installation : eclipse-SDK-3.4RC3 (I20080530-1730), cdt-5.0RC2 (200805231539), DSF-1.0rc2 (20080527), emf-2.4.0rc2, Findbugs-1.3.3, Releng.Tools-3.4RC3, RSE-3.0RC2, RXTX-2.1-7r3b, Subversive-0.7.0.v20080517, FTP_WebDav-3.2.2 org.tigris.MemMonitor, WR-Retriever-3.0.v20070604, RSE install : RSE 3.0RC2 in workspace, TM-terminal, TM-discovery java.runtime : Sun 1.6.0_05-b13 -Xmx512m -XX:MaxPermSize=128m os.name: : Windows XP 5.1, Service Pack 2 ------------------------------------------------ systemtype : Windows-local, Dstore-win, Dstore-linux targetos : Red Hat Enterprise Linux WS release 4 (Nahant Update 3) targetuname : Linux parser 2.6.9-34.EL #1 i686 athlon i386 GNU/Linux targetvm : Sun Java HotSpot(TM) Client VM (build 1.4.2_12-b03, mixed mode) ------------------------------------------------
I have the feeling that we will have to solve this one over the phone, as I'm struggling to understand all the details as to why pde build can't build what you want.
Adding Requires to a feature does not affect PDE/Build at all and does not change the build, it would only change p2/update manager behaviour. If higher up product would have a different set of requirements, then the only way out I can see is to create a separate feature solely for grouping remotecdt's requirements for p2. Alternatively, it would not really be hard to handcraft a group IU for this, it is just that the automated tools are not that far along.
Thanks Andrew. The PDE Build issue was this: RemoteCDT feature consists of remotecdt plugin and remotecdt.source plugin (genereate@plugin). I noticed that as soon as I define feature "remotecdt.wrapper" which includes feature remotecdt, the remotecdt.souce plugin would no longer generate its src.zip file. I found an old bug indicating that this might be related to build order (trying to build hte source plugin before the actual remotecdt plugin was built), but I had no time to investigate this any further, unfortunately.
(In reply to comment #3) > Thanks Andrew. > > The PDE Build issue was this: RemoteCDT feature consists of remotecdt plugin > and remotecdt.source plugin (genereate@plugin). I noticed that as soon as I > define feature "remotecdt.wrapper" which includes feature remotecdt, the > remotecdt.souce plugin would no longer generate its src.zip file. > > I found an old bug indicating that this might be related to build order (trying > to build hte source plugin before the actual remotecdt plugin was built), but I > had no time to investigate this any further, unfortunately. > Hi Martin, If you have features to reproduce this can you please open a bug on PDE-Build. There was bug 179616 which was fixed, and we do have a unit test for this with generate.plugin. I tried this myself with features: feature.A -> feature.B -> plugin.A.source, plugin.A generate.plugin@A.source=feature.B -> plugin.B And everything built fine.
Due to moving remotecdt into CDT as per bug 267065, this is now a CDT problem. I'm not exactly sure what feature dependencies the new remotecdt has, but in case it only has bundle requirements (such as the org.eclipse.rse.core bundle only), it may still end up with an unusable installation. RSE requires at least one system type.