>>>>> Jean-Baptiste Onofre <[email protected]>:

> Even if the code don’t change, changing the maven plugin can change the 
> generated MANIFEST.

Yes, but that's the maven-bundle-plugin...?
Because that doesn't change between work and not work.

Or does the karaf-bundle-plugin also touch the manifest?
I thought I used it only for feature generation?

> For instance, "old" maven plugin version didn’t generate requirement header.

Right.  I have been using various versions of the maven-bundle-plugin in
the projects (basically, the newest version when I started the project).

I bumped them all to 5.1.1 a little while back, as part of a cleanup
prior to moving to karaf 4.3.x (bumped maven plugin versions, and junit
jupiter versions, mockito, assertj, etc. ie. anything related to tests),
and cleaned up and removed all unneccessary dependencies I could find (a
lot of cut and past in maven config when creating new projects...).

But I have tested each step, i.e. tested that the feature still loads
after the change.  And all features now have a pax exam feature load
test (because they are now simple).

And those tests all started failing when moving from 4.3.0 to 4.3.1 for
all bundles that somehow referenced LogService.

Of course moving from 4.3.0 to 4.3.1 also affected the karaf runtime
used in the pax exam tests, so maybe what I saw wasn't a change in what
was built, but instead a change of running what I have on karaf 4.3.1...?

> Another possible change is about the feature namespace you use. If you use 
> feature xmlns 1.3 or 1.4, services requirement are checked. It’s not the case 
> with previous namespace version.

Hm... some feature repos have templates, and some of them have
namespaces, I think...?  Some of the templates do not have namespaces, I
think...?

What does the karaf-maven-plugin do with namespace on the template? Keep
it? Replace it?

Some feature repos are completely generated by the karaf-maven-plugin
and they will get whatever namespace the plugin decide to use.

Many of my multimodule projects also have a handwritten aggregate
feature repo.  If the aggregate feature repos a have namspace it's
probably an old one that have been copy/pasted to newer projects.

> It’s control by the serviceRequirements property in 
> etc/org.apache.karaf.features.cfg. We use "default" by default ( ;) ), 
> meaning that service requirements are ignored for old features namespace.

Hm... are you saying that if my feature repos use an old features
namespace, karaf 4.3.1 doesn't see that the feature needs the
LogService?

Reply via email to