servicemix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Schneider <>
Subject [Discuss] Create one karaf feature repo per spring version in servicemix bundles
Date Mon, 30 Jan 2017 11:09:18 GMT
Hi all,

we are currently trying to make Apache Karaf slimmer for the version 4.1.0.

In previous karaf versions we had different spring versions in the karaf 
spring feature repo. This posed two problems:
1. The karaf resolver always has to work on all provided spring versions 
which increased the chance a wrong one is picked
2. Karaf can not provide all bugfix versions of spring. So each karaf 
version comes with a different set. So for a user the upgrade means the 
spring version
changes and he can not upgrade the bugfix version while keeping the 
karaf version.

So starting with karaf 4.1.0 we split the spring feature repos into the 
most current version (currently 4.3.5) which is installed by default and 
a spring-legacy feature repo with the older versions. This fixes problem 
1 but also causes problems for some existing features like the activemq 
5.14.3 one that requires spring 3.

So a better fix would be to provide one feature repo per spring version 
and let the 3rd party feature add this to its feature using the 
repository tag. So only the needed spring version is provided and the 
maintainer of the 3rd party repo can freely decide which to use.

The problem with this is that karaf is not a good place to provide the 
feature repos as we release all of karaf together in one version.

So I think servicemix bundles would be a good place to put these feature 
repos into. The source repo already provides the spring bundles for each 
version and I think the feature repo would fit nicely into this structure.

If the activemq community likes the idea I will provide pull requests 
for the spring versions we currently use in karaf.


Christian Schneider

Open Source Architect

View raw message