maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Derricutt <>
Subject Re: Release Management with Many, Independent Projects...
Date Tue, 19 Jun 2012 04:11:48 GMT
Step 1) Separate your API interfaces into their own bundles, with their 
own release cadence.
Step 2) Code solely against APIs, and against version ranges ( we use 
[1.0.0,2.0.0) style.

Given things in OSGi land are service/interface orientated this works well.

We try to follow the semver style of version number, changing the major 
(1.0.0->2.0.0) for backwards incompatible changes, and a minor 
(1.0.0->1.1.0) for backward compatible, but forward-incompatible 
changes.  Any downstream bundle that requires the new API changes and 
simply change their lower-bound in the range: [1.1.0,2.0.0)

On 19/06/12 1:19 PM, James Carman wrote:
> We are an OSGi shop.  Thus, we have a lot of "bundle" projects that
> have their own independent release cycles.  We have a hierarchy of
> parent POMs and many utility libraries.  When we change one of the
> upper-level POMs (like the "base" for all of our OSGi bundles), it is
> very time-consuming to point all of the downstream projects at the new
> version.  How do folks typically handle this?  There has to be an
> easier way.  I found the versions plugin [1], but that can only get
> you so far.  You still have to cut each of the releases and re-point
> everyone at them.  Yuck!
> [1]
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message