You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by Carsten Ziegeler <cz...@apache.org> on 2014/10/01 09:17:50 UTC

Baselining enabled in trunk

Hi,

I just updated trunk to our latest parent pom which enables baselining. I
fixed the problems in the main error and trunk now builds for me again. I
haven't checked contrib yet.

>From now on we get build errors if the api changes don't match the exported
versioning changes.

Regards
Carsten
-- 
Carsten Ziegeler
Adobe Research Switzerland
cziegeler@apache.org

Re: Baselining enabled in trunk

Posted by Carsten Ziegeler <cz...@apache.org>.
Hi,

it's maven magic.... afaik, the plugin searches for the previous release in
maven and does the comparison.
The plugin uses bnd, and compares exported packages based on semantic
versioning - depending on the api change and the type of the interface
(provider type or consumer type) it can easily find out what the new
package version should be. It compares this with the declared version and
reports an error if they don't match.

Works pretty good and easily detects if people mess up the api or forget to
increase the version.

Carsten

2014-10-01 10:24 GMT+02:00 Bertrand Delacretaz <bd...@apache.org>:

> Hi Carsten,
>
> On Wed, Oct 1, 2014 at 9:17 AM, Carsten Ziegeler <cz...@apache.org>
> wrote:
> > ...I just updated trunk to our latest parent pom which enables
> baselining...
>
> Am I correct that this works as per the "Baselining" section of
> http://www.aqute.biz/Bnd/Versioning ?
>
> How does BND find the "old" classes that it is used to compare the APIs?
>
> And how does it decide which packages to verify for backwards
> compatibility?
>
> RTFM links welcome  ;-)
>
> -Bertrand
>



-- 
Carsten Ziegeler
Adobe Research Switzerland
cziegeler@apache.org

Re: Baselining enabled in trunk

Posted by Bertrand Delacretaz <bd...@apache.org>.
Hi Carsten,

On Wed, Oct 1, 2014 at 9:17 AM, Carsten Ziegeler <cz...@apache.org> wrote:
> ...I just updated trunk to our latest parent pom which enables baselining...

Am I correct that this works as per the "Baselining" section of
http://www.aqute.biz/Bnd/Versioning ?

How does BND find the "old" classes that it is used to compare the APIs?

And how does it decide which packages to verify for backwards compatibility?

RTFM links welcome  ;-)

-Bertrand

Re: Baselining enabled in trunk

Posted by Bertrand Delacretaz <bd...@apache.org>.
On Wed, Oct 1, 2014 at 4:49 PM, Oliver Lietz <ap...@oliverlietz.de> wrote:
> ...@Bertrand: https://issues.apache.org/jira/browse/FELIX-4512

Thanks! Looks like this has all the relevant info and links.
-Bertrand

Re: Baselining enabled in trunk

Posted by Oliver Lietz <ap...@oliverlietz.de>.
On Wednesday 01 October 2014 09:17:50 Carsten Ziegeler wrote:
> Hi,
> 
> I just updated trunk to our latest parent pom which enables baselining. I
> fixed the problems in the main error and trunk now builds for me again. I
> haven't checked contrib yet.
> 
> From now on we get build errors if the api changes don't match the exported
> versioning changes.

contrib builds also with baselining and I provoked a build failure by an API 
change - works great, thanks!

@Bertrand: https://issues.apache.org/jira/browse/FELIX-4512

O.

> Regards
> Carsten