Re: [cross-project-issues-dev] Yet another nag note ... and, I mean it this time!
I thought we had been through all that discussion on bugzilla already (I can't find the ref right now since bugzilla is down).
In a nutshell,
- Optional greedy is bad since it can cause side-effects :
When I install A and optional greedy B,C happen to be available they get installed even when I don't ask for them, causing unexpected side-effects.
- Yes Optional non-greedy has no effect on the installer;
But, the p2 metadata also serves as documenting the OSGi/runtime dependencies from all MANIFEST.MF in a repo so having it in there is extra information that may help some and doesn't hurt.
From: cross-project-issues-dev-bounces@xxxxxxxxxxx [mailto:cross-project-issues-dev-bounces@xxxxxxxxxxx] On Behalf Of Thomas Hallgren
Sent: Thursday, May 24, 2012 3:37 PM
To: Cross project issues
Subject: Re: [cross-project-issues-dev] Yet another nag note ... and, I mean it this time!
On 05/24/2012 03:13 PM, Gunnar Wagenknecht wrote:
> Am 24.05.2012 14:57, schrieb Thomas Hallgren:
>> One could very well argue that an optional non-greedy dependency is
>> completely useless and doesn't fulfill any other purpose but documentation.
> We have a bunch of bundles in place that have optional non-greedy
> dependencies to allow flexibility at runtime. For example, Logback can
> be configured via API, XML or Groovy. Groovy as well as XML
> configuration require additional dependencies. Imaging all those
> dependencies were greedy.
Then they would be installed of course. Now they are not installed and the dependencies have no purpose aside from what I mentioned earlier, documentation.
> BTW, they need to be optional for the bundles to properly resolve if
> the dependencies aren't there. They need to be declared to allow the
> bundle class loader to load them if they are available.
To my knowledge, the bundle class loader is using the MANIFEST.MF, not the p2 meta-data. So my argument still stands.
cross-project-issues-dev mailing list