[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14079078#comment-14079078 ] Jonathan DELAIRE commented on FELIX-4512: - done https://issues.apache.org/jira/browse/FELIX-4591 > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.5.0 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14079069#comment-14079069 ] Carsten Ziegeler commented on FELIX-4512: - [~jdelaire] Could you please open a new issue for the feature request? > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.5.0 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14079065#comment-14079065 ] Jonathan DELAIRE commented on FELIX-4512: - The feature is nice, unfortunately it compare to a specific version without the option to compare specific classifier, if we don't generate an OSGi bundle by default it doesn't work, For example I'm working on a project that is generating NetBeans modules and OSGi bundle for the same artifact, but the OSGi bundle is generated as bundle so the baseline feature only compare the jar generated by the project packaging which in this case is a jar without the packageinfo and with a netbeans module manifest. Adding the ability to specify the classifier would be nice. > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.5.0 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14049951#comment-14049951 ] David Bosschaert commented on FELIX-4512: - Now that maven-bundle-plugin 2.5.0 has been released, it would be nice to add the documentation for this feature to http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.5.0 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14005899#comment-14005899 ] Guillaume Nodet commented on FELIX-4512: Awesome plugin, thx ! Fwiw, I've added a supportedProjectTypes to the baseline plugin (defaulting to jar + bundle). > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14002821#comment-14002821 ] Carsten Ziegeler commented on FELIX-4512: - This is actually not caused by this issue but by FELIX-4517 > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14001750#comment-14001750 ] Simone Tripodi commented on FELIX-4512: --- I stumbled in a Bnd [issue|https://github.com/bndtools/bnd/issues/413] where it is stated that {{Require-Capability}} should be automatically generated only for _osgi.ee_... WDYT? > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14001733#comment-14001733 ] Carsten Ziegeler commented on FELIX-4512: - Yes, right - it's related to the bundle plugin > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14001704#comment-14001704 ] Simone Tripodi commented on FELIX-4512: --- Is it related to the {{bundle}} plugin, or the {{baseline}} one? The first, I guess... :( > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14001695#comment-14001695 ] Carsten Ziegeler commented on FELIX-4512: - It seems that the update of bnd is causing new headers to be created automatically: Provide-Capability and Require-Capability and in one project I get now the error " osgi.service osgi.service must have the objectClass attribute set" > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997379#comment-13997379 ] Michael Dürig commented on FELIX-4512: -- Works great now with the new patch. Thanks Simo! > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.patch, Screen Shot > 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997420#comment-13997420 ] Carsten Ziegeler commented on FELIX-4512: - Many thanks, Simone. I've applied your latest patch in rev 1594524 > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13996197#comment-13996197 ] Michael Dürig commented on FELIX-4512: -- This is just what we are looking for in OAK-1536. I tried this out and it works very well. An issue I encountered is that it doesn't fail when there are warnings and {{failOnWarning=true}}. I think this is an important feature so one could fail the build when package versions are outdated. Also the detailed analysis is a bit off: {noformat} PACKAGE_NAME DELTA CUR_VER BASE_VER REC_VERWARNINGS = == == == == == == * org.apache.jackrabbit.oak.spi.blob MAJOR 1.0.0 1.0.0 2.0.0 Version increase required ... Baseline analisys complete, 0 errors, 0 warnings {noformat} Even though there was a warning, the final line doesn't report it. > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997491#comment-13997491 ] Simone Tripodi commented on FELIX-4512: --- WOW thanks a lot Carsten, much more than appreciated! :) Thanks a lot for the hints Julian! bq. With regard to reporting, I think it would be useful to indicate the severity (major, minor, micro) for each delta. This is to cater for the use-case, where I want to avoid a major version change and need to identify the changes that force such an increment. I'll inspect your codebase and try to migrate your addition to this new one bq. {{failOnError}} proved insufficient to describe the desired behaviour for failing the build, instead the following seemed useful there is another flag available which is called {{failOnWarning}}, setting both to {{false}} doesn't make the build fail. > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997425#comment-13997425 ] Julian Sedding commented on FELIX-4512: --- Thanks for pushing to get this functionality into the bundle plugin. I authored a similar plugin (https://github.com/code-distillery/baselining-maven-plugin) and would like to share some of the learnings: * With regard to reporting, I think it would be useful to indicate the severity (major, minor, micro) for each delta. This is to cater for the use-case, where I want to avoid a major version change and need to identify the changes that force such an increment. * {{failOnError}} proved insufficient to describe the desired behaviour for failing the build, instead the following seemed useful: {code} enforcement The enforcement allows controlling when the build should fail. Valid values are: - lowerAndUpperBound (default): Enforce that export versions are incremented as required but are not set to a higher value. Fails the build otherwise. - lowerBound: Enforce that export versions are incremented as required, but allows increments that are higher than necessary. Fails the build otherwise. - none: The output is purely informational. Never fails the build. {code} > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi >Assignee: Carsten Ziegeler > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13997385#comment-13997385 ] Simone Tripodi commented on FELIX-4512: --- Thanks for reporting Michael, very appreciated :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.1.patch, FELIX-4512.2.patch, > FELIX-4512.patch, Screen Shot 2014-05-13 at 11.49.44 PM.pdf > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13996897#comment-13996897 ] Simone Tripodi commented on FELIX-4512: --- Thanks a lot [~mduerig] for reporting - I am going to submit a new patch that fixes that problem and adds a new feature :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994971#comment-13994971 ] Simone Tripodi commented on FELIX-4512: --- Thanks a lot [~mcculls], much more than appreciated! :) I am trying to provide another patch today in order to generate also the report page :) [~cziegeler] please apologise but the wiki didn't render properly what I reported in David's reply: if {{comparisonVersion}} is not set, default value is {{(,$project.version)}} which means using the latest released version :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994972#comment-13994972 ] Carsten Ziegeler commented on FELIX-4512: - [~simone.tripodi] Thanks, perfect > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994646#comment-13994646 ] Stuart McCulloch commented on FELIX-4512: - Nice work Simone, I'm triaging fixes and features for v2.4.1 over the next few weeks so this is very timely :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994669#comment-13994669 ] Carsten Ziegeler commented on FELIX-4512: - Great work, [~simone.tripodi]! Is there any chance to get the latest version to compare against from Maven if the comparisonVersion is not set? > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994644#comment-13994644 ] Simone Tripodi commented on FELIX-4512: --- Thanks a lot [~bosschaert]! Please, read my replies inline: bq. Do you know whether it can also distinguish between @ConsumerType and @ProviderType? uhm I honestly don't know, I need to do an investigation - thanks for the links! :) bq I guess the comparisonVersion version also needs to be documented apologise, I just edited the original comment and added it there :) Thanks :P bq What happens when it isn't there? the plugin just takes the default value which is {{(,${project.version})}} bq does the baselining only get executed when the baseline goal is specified? Or are the other cases where it also gets executed? I think you could explicitly invoke it, but I need to test it... Thanks for reviewing, very appreciated!!! :) > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994640#comment-13994640 ] David Bosschaert commented on FELIX-4512: - Wow, this is fantastic, Simone! Do you know whether it can also distinguish between @ConsumerType and @ProviderType? See [here|http://blog.bjhargrave.com/2013/10/api-design-practices-that-work-well.html] and [here|https://github.com/osgi/design/raw/master/rfcs/rfc0197/rfc-0197-OSGiPackageTypeAnnotations.pdf] I believe bnd already supports this distinction and it would be great to know whether this works here too. I guess the comparisonVersion version also needs to be documented. What happens when it isn't there? Another question: does the baselining only get executed when the baseline goal is specified? Or are the other cases where it also gets executed? > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994600#comment-13994600 ] Chetan Mehrotra commented on FELIX-4512: [~jsedding] has dome something similar with the baselining-maven-plugin [1] which I came across with OAK-1536. Might be helpful in this context [1] https://github.com/code-distillery/baselining-maven-plugin > Add a new Mojo to invoke the BND Baseline tool > -- > > Key: FELIX-4512 > URL: https://issues.apache.org/jira/browse/FELIX-4512 > Project: Felix > Issue Type: New Feature > Components: Maven Bundle Plugin >Affects Versions: maven-bundle-plugin-2.4.0 >Reporter: Simone Tripodi > Fix For: maven-bundle-plugin-2.4.1 > > Attachments: FELIX-4512.patch > > > The BND 2.2.0 library contains an extraordinary tool called > [Baseline|http://www.aqute.biz/Bnd/Versioning] (see Baselining paragraph) > that compares the public API of a bundle with the public API of another > bundle. > It would be really useful to have this tool in the {{maven-bundle-plugin}} in > order to keep track of APIs modifications during development time. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (FELIX-4512) Add a new Mojo to invoke the BND Baseline tool
[ https://issues.apache.org/jira/browse/FELIX-4512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994567#comment-13994567 ] Simone Tripodi commented on FELIX-4512: --- The proposal contained in {{FELIX-4512.patch}} provides an implementation of {{org.apache.felix:maven-bundle-plugin:2.4.1-SNAPSHOT:baseline}} MOJO that has the following configuration parameters: ||Name||Type||Since||Description|| |failOnError|boolean|2.4.1|Whether to fail on errors. Default value is: true. User property is: failOnError.| |failOnWarning|boolean|2.4.1|Whether to fail on warnings. Default value is: false. User property is: failOnWarning.| |filters|String[]|2.4.1|A list of packages filter, if empty the whole bundle will be traversed. Values are specified in OSGi package instructions notation, e.g. {{!org.apache.felix.bundleplugin.}}| |logResults|boolean|2.4.1|Whether to log the results to the console or not, true by default. Default value is: true. User property is: logResults.| |skip|boolean|2.4.1|Flag to easily skip execution.Default value is: false.User property is: baseline.skip.| |textOutputFile|File|2.4.1|A text output file to render to ${project.build.directory}/baseline.txt.| |xmlOutputFile|File|2.4.1|An XML output file to render to ${project.build.directory}/baseline.xml.| It is invoked during {{validate}} phase in order to make sure the current bundle is produced and contains valid OSGi metadata. Plugging it in existing projects is quiet easy, i.e.: {code} http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd";> 4.0.0 org.apache.felix org.apache.felix.http.parent 3-SNAPSHOT ../parent/pom.xml Apache Felix Http Api org.apache.felix.http.api 2.3.0-SNAPSHOT ... org.apache.felix maven-bundle-plugin 2.4.1-SNAPSHOT bundle bundle org.osgi.dto;version=${osgi.dto.version}, org.osgi.service.http;version=${http.service.version}, org.osgi.service.http.runtime;version=${http.service.version}, org.apache.felix.http.api;version=${http.api.version} org.osgi.dto, org.osgi.service.http, org.osgi.service.http.runtime, javax.servlet.*;version="[2.3,4)", * baseline baseline 2.2.2 true ... ... {code} it produces two output files by default, a txt one: {noformat} # Baseline Report - Generated by Apache Felix Maven Bundle Plugin at Sun May 11 16:06:20 CEST 2014 Analising current bundle org.apache.felix.http.api-2.3.0-SNAPSHOT against previous released org.apache.felix.http.api-2.2.2 attrs for org.apache.felix.http.api version="2.0.4";uses:="javax.servlet,org.osgi.service.http,org.osgi.service.http.runtime" attrs for org.osgi.dto version="1.0.0" attrs for org.osgi.service.http version="1.3.0";uses:="javax.servlet,javax.servlet.http" attrs for org.osgi.service.http.runtime version="1.3.0" PACKAGE_NAME DELTA CUR_VER BASE_VER REC_VERWARNINGS = == == == == == == * org.apache.felix.http.api MAJOR 2.0.4 2.0.4 3.0.0 Version increase required > interface org.apache.felix.http.api.ExtHttpService + method createDefaultHttpContext() + access abstract + return org.osgi.service.http.HttpContext + method doSomething() + access abstract + method registerResources(java.lang.String,java.lang.String,org.osgi.service.http.HttpContext) + access abstract + method registerServlet(java.lang.String,javax