Hi,
there are currently two Maven pom files in Infinispan where dependency versions are defined - infinispan-bom and infinispan-parent. For instance, version.protostream is defined in the BOM while version.commons.pool is defined in infinispan-parent.

This causes me troubles when I want to do filtering with maven-resources-plugin and substitute versions of dependencies in certain configuration file because properties defined in the BOM are not visible to other modules (I'm currently trying to generate "features" file for HotRod to be easily deployable into Karaf - https://issues.jboss.org/browse/ISPN-3967, and I can't really access versions of some dependencies)

We include the BOM file in infinispan-parent as a dependency with scope "import" which causes the properties defined in the BOM to be lost.

Questions:
Is there a reason why we include it as a dependency and do not have it as a parent of infinispan-parent? (as suggested in [1])
Can someone explain the reason why we have version declarations in two separate files?
If you possibly know how to access properties in the BOM, please advise. To me it seems impossible without some nasty hacks.

Thanks,
Martin


[1] http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html