I'm just trying to follow whatever build/naming/versioning
conventions are the right ones for Eclipse - info seems to be
scattered across a lot of web pages.
The Export-Package is not versioned at the moment. There's a
plugin.xml in the bundle that I'm building. And yes I moved the
bundle version to 0.9.0 but that was because it seemed to make sense
to follow the release number.
Will probably make sense when I've put all this together ...
Ian
On 05/03/2014 12:29 AM, Scott Lewis
wrote:
Hi Ian,
On 5/2/2014 4:03 PM, Ian Craggs wrote:
Hi Scott,
I'm working on the packaging of the Java client for 0.9.0.
Creating an OSGi bundle, proper name, p2 repo etc. It's the
first time I've done this for a while (say 5 or 6 years) and
I've never created a p2 repo, so I'm learning it all as I go
(I'm following the Tycho tutorial/examples). I imagine that
it's going to take me a few days of next week (1.5 days so far,
and there is a public holiday for us on Monday).
1) Bundle-Version as I have it is 0.9.0.201405021602
That looks great to me.
You are moving the version from 0.4.1 to 0.9.0? I have no
objections if that numbering fits the needs of project...I just
wanted to make sure it was intentional. You generally *don't*
want to have the bundle level versioning track the
feature-or-release-level versioning (if you do, it can/will become
a maintenance burden in my experience...plus you want to have the
bundle-level versioning be based as much as possible on OSGi
semantic versioning [1]...for each of your bundle APIs
separately. But you are obviously all pre-version-1.0.0 right now
anyway...so it's not really that big a deal...until you reach
1.0.0.
BTW...one thing...as for the version attributes associated with
the Export-Package...I would recommend *not* including the
qualifier in those attributes, but rather just the
major.minor.micro...e.g:
Export-Package: org.eclipse.paho.client.mqttv3;version="0.4.1";
rather than
Export-Package:
org.eclipse.paho.client.mqttv3;version="0.4.1.SNAPSHOT";
2) singleton is currently still set to true because the Eclipse
IDE advised me to do so (I can't remember the reason offhand,
but if I remove it I'm sure it'll let me know)
Well, one reason it would have to be singleton is if you had a
plugin.xml in there...it was an eclipse plugin...and were using
the extension registry (in Eclipse). But I don't see any
plugin.xml in your bundle...there's no bundle activator...and I
don't obviously see any other code that requires it to be a
singleton...so you might be able to remove the singleton
attribute.
3) Bundle-SymbolicName as I have it is currently
org.eclipse.paho.client.mqttv3
4) yep, working on it. Got to the stage of working out how to
"create" a p2 repo, as the Maven build was complaining.
I have the Maven Grioup Id as org.eclipse.paho.client and the
Artifact id as mqttv3, as the Tycho tutorial says "Note: Tycho
requires that the artifactId in the POM is the same
as the Bundle-SymbolicName in the OSGi manifest, and
that the versions match (with .qualifier replaced by
-SNAPSHOT) "
Any advice to make this quicker for me is welcome :-)
Well, there are plenty of Maven/Tycho gurus around EF projects,
but I'm not one of them ;-). I would personally be inclined to
ask for assistance on cross-projects mailing list...and/or David
Williams directly (don't tell him I said that).
I'm also working on packaging the MQTT client Eclipse view (will
also be in the p2 repo)
That's great...thanks much.
and Swing sample GUI application (which may not be
as it is meant to be run standalone).
I'm also working on the builds of the C client and packaging of
the _javascript_ client for 0.9.0, so they'll be ready as soon as
I can complete them.
Sounds great! If I can help further, please let me know.
Scott
[1] http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf
_______________________________________________
paho-dev mailing list
paho-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/paho-dev
--
Ian Craggs
icraggs@xxxxxxxxxx IBM United Kingdom
Committer on Paho, Mosquitto
|