Never A Wrong
(Semantic) Version Again!
bndtools
About Me
●

Ferry Huberts M.Sc.

●

Open Source Entrepreneur (pelagic.nl)

●

Member of the bnd / bndtools team

●

Contri...
Meaning of Semantic
se·man·tic
adjective si-ˈman-tik
Origin of SEMANTIC
Greek sēmantikos significant, from sēmainein
to si...
Meaning of Version
ver·sion
noun ˈvər-zhən, -shən
Origin of VERSION
Middle French, from Medieval Latin version-,
versio ac...
Meaning of Semantic Version

A Semantic Version
is
A change with (strict) meaning
5/14
Semantic Versioning Schemes
●

OSGi
http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf

●

SemVer.org
http://se...
Semantic Versioning
●

OSGi
http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf

7/14
Premise

Semantic Versions
are all about
(Backward) Compatibility
8/14
Semantic Version

Major.Minor.Micro.Qualifier*
●

Major: incompatible change for providers
and consumers

●

Minor: incomp...
API

Coherent set
of
exported classes

10/14
Hands-On

bndtools
The easy, powerful and productive way to develop with OSGi.
Based on bnd and Eclipse.
11/14
Rocket Example
API

Provider
rocket.control

rocket.control.api

rocket.control.api.
RocketControlListener

rocket.blackbo...
Summary
●

Semantic Versions:
–

Theory:
●

–

Reality:
●
●

–

conceptually easy
not so easy
easy to forget to update the...
Contact
bndtools:

http://bndtools.org/
https://github.com/bndtools/bndtools
mailto:bndtools-users@googlegroups.com

bnd:
...
Upcoming SlideShare
Loading in …5
×

Never a Wrong (Semantic) Version Again! - Ferry Huberts

732
-1

Published on

OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)

ABSTRACT

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
732
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Never a Wrong (Semantic) Version Again! - Ferry Huberts

  1. 1. Never A Wrong (Semantic) Version Again! bndtools
  2. 2. About Me ● Ferry Huberts M.Sc. ● Open Source Entrepreneur (pelagic.nl) ● Member of the bnd / bndtools team ● Contributor in several other projects – Like olsrd, cgit 2/14
  3. 3. Meaning of Semantic se·man·tic adjective si-ˈman-tik Origin of SEMANTIC Greek sēmantikos significant, from sēmainein to signify, mean, from sēma sign, token * From http://www.merriam-webster.com/dictionary. 3/14
  4. 4. Meaning of Version ver·sion noun ˈvər-zhən, -shən Origin of VERSION Middle French, from Medieval Latin version-, versio act of turning, change, from Latin vertere to turn — more at worth * From http://www.merriam-webster.com/dictionary. 4/14
  5. 5. Meaning of Semantic Version A Semantic Version is A change with (strict) meaning 5/14
  6. 6. Semantic Versioning Schemes ● OSGi http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf ● SemVer.org http://semver.org/ ● Eclipse http://wiki.eclipse.org/Version_Numbering 6/14
  7. 7. Semantic Versioning ● OSGi http://www.osgi.org/wiki/uploads/Links/SemanticVersioning.pdf 7/14
  8. 8. Premise Semantic Versions are all about (Backward) Compatibility 8/14
  9. 9. Semantic Version Major.Minor.Micro.Qualifier* ● Major: incompatible change for providers and consumers ● Minor: incompatible change for providers ● Micro: compatible change ● Qualifier: anything (e.g. build identity) * Major, Minor and Micro are numbers, Qualifier is a string 9/14
  10. 10. API Coherent set of exported classes 10/14
  11. 11. Hands-On bndtools The easy, powerful and productive way to develop with OSGi. Based on bnd and Eclipse. 11/14
  12. 12. Rocket Example API Provider rocket.control rocket.control.api rocket.control.api. RocketControlListener rocket.blackbox Consumer bndtools 12/14
  13. 13. Summary ● Semantic Versions: – Theory: ● – Reality: ● ● – conceptually easy not so easy easy to forget to update the multiple places There are some subtleties ● bndtools can handle* it for you ● Never Stop Thinking 13/14 * except for semantic changes not detectable by a machine, like kph to mph renames
  14. 14. Contact bndtools: http://bndtools.org/ https://github.com/bndtools/bndtools mailto:bndtools-users@googlegroups.com bnd: http://www.aqute.biz/Bnd/Bnd https://github.com/bndtools/bnd mailto:bndtools-users@googlegroups.com Ferry Huberts <ferry.huberts@pelagic.nl> 14/14
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×