Hi
Regards
Ed Willink
On 04/06/2014 12:20, Ed Willink wrote:
Hi David
On 04/06/2014 11:48, David M Williams
wrote:
> I think that someone with the power to influence the
platform needs to review how
> we support Guava and other shared
non-singletons
> so that we avoid repeating this mess in
Mars.
Hmmm, I think, Ed, I finally
found one thing to disagree with you about :)
Hopefully we're agreed about trying to avoid this mess in Mars. If
tooling rather than the platform is the solution, fine by me.
I think if you (or others)
carefully read Bug 427862 you'd find this issue less about "using one version"
and more about using correct versions, in correct ways: a)
projects should follow "best practices" for componentization
(such as, 1) do not "re-export" bundles simply for a
convenience, 2) don't make "third party" code part of your own
API (unless it's one that's mature, and one that can be well
trusted to follow OSGi principles), 3) use proper version
ranges when exporting or importing packages, 4) take advantage
of "uses clauses", etc.) and b) we need to influence those
third parties who are not using OSGi quite right, and
encourage them to do so (which has happened, in this case!)
Thanks for pointing back at this. I didn't understand "uses" and
got Marcel to give a better example.
I see that the Manifest editor has a "Calculate Uses" button that
makes my Manifests huge. I don't particularly want to maintain
this manually.
I noticed long ago that MANIFEST.MF as shipped by SimRel bears
little resemblance to my source text. There is a nasty
line-wrapping and every class has an SHA1-Digest added.
If something is rewriting all the Import-Package directives, then
surely it could/should rewrite all the Export-Package directives
to use "uses" too?
Regards
Ed Willink
|