-
Enhancement
-
Resolution: Done
-
Major
-
3.0.0.Beta1
-
None
We're in a pickle regarding the Infinispan and JGroups versions we're using, because our AS7 kit limits us to specific versions. Now, we understand that not everyone is using the AS7 integration, and for those that aren't they'd likely want the latest versions of Infinispan and JGroups. But we still need to provide a way for the non-AS7 users to use a newer release of Infinispan (and JGroups).
There are several approaches to dealing with this conflict, but we can only accept approaches that result in consistent and well-tested artifacts.
The selected approach is that our codebase will continue to default to using Infinispan 5.1.2.Final and JGroups 3.0.6.Final, because those are the same versions that are in AS 7.1.1.Final. This means that our normal builds will produce a consistent set of artifacts for both AS7 and non-AS7 environments.
However, we can add a Maven profile that changes to Infinispan 5.1.5.Final and JGroups 3.1.0.Final. (These happen to be the latest released versions of each community, plus they are the versions that the AS 7.2 codebase is currently using, meaning that when we switch from AS 7.1 to 7.2 we'll hopefully get back to building artifacts with a single set of dependencies.)
We can then set up an additional Jenkins job that runs the build with this profile and that skips all AS7 modules. (I don't expect us to run into any issues, since these are just minor or patch-level upgrades that should be API-backward compatible.) Essentially, we'll "certify" ModeShape to work on 5.1.2 and 3.0.6 (with and without AS7.1.1) and on 5.1.5 and 3.1.0 (without AS7)
Finally, we should document how users can specify in their POM files a dependency on ModeShape and override the Infinispan and JGroups versions to 5.1.5. and 3.1.0.