Community
Participate
Working Groups
+++ This bug was initially created as a clone of Bug #247099 +++ My product on top of Eclipse 3.7 (Indigo) includes some unresolved optional runtime dependencies (eg we include o.e.pde.runtime to get the errorlog view, but we do not want to include the optional JDT). This leads to the JDT getting installed as a side-effect of installing something completely unrelated. We need to fix this behavior in our product. As discussed on bug 247099, the problem is that repository metadata has been published incorrectly for optional runtime dependencies. We won't be able to change the incorrect metadata on any repository that exists in the wild, but we need to get our product fixed. This raises the following questions: 1.) How can we change our product to use correct metadata for bundles discovered via the dropins mechanism? I assume that we could patch our product to include the change from bug 247099, but that change has not been published as a patch so I don't know what to change and where. 2.) How can we enable the publishers of Indigo SR1 bundles (such as o.e.pde.runtime) to produce SR1 bundles with correct metadata? I assume that this involves providing a publisher with the new capability to publish correct metadata, along with instructions how to use it. Part 2 where the producer of a bundle is asked to fix its metadata might be satisfiable with p2.inf (see bug 306279 comment 2), though we haven't validated this. Part 1 is a new requirement, and also different from bug 342704 (which is about tweaking behavior for optional dependencies at provisioning time, not at publishing time).
I have validated that adding a p2.inf file to a bundle with optional runtime dependencies actually works, in order to convert those dependencies into being non-greedy. I filed 2 bugs for fixing this in the Eclipse Platform in Indigo SR1: - bug 351830 (org.eclipse.pde.runtime --> JDT) - bug 351833 (org.apache.lucene --> Lucene optional add-ons) I feel that if original bundle maintainers can make a clear decision on their own bundle to mark dependencies as either greedy or not, and explicitly mark them up properly, it's a good step towards clear, reproducable installs in the Indigo timeframe already. It also adresses the "educate people" concern from bug 247099 comment 62, since any bundle that explicitly marks up their optional dependencies through a p2.inf will not have their metadata changed when the publisher's behavior changes. I'd still like to see part 1 of my concern adressed: > How can we change our product to use correct metadata for bundles > discovered via the dropins mechanism?
Since this bug mentions "indigo" by name, I think it should be closed as "won't fix" to be clearer. I don't really understand the remaining "part 1" question, but if it is a "how to question", probably doesn't belong in a bug report at all :) and from a VERY quick read, doesn't seem related to the title. Thanks,
Too late for Indigo. See bug 247099 for resolution in Juno.