This brings up a couple issues.
1) How we resolve the conflict
2) How we continue with ejb3-ext-api-impl (if at all)
Resolving the conflict with ClusteredImpl may be a bit more involved than it seems because AS5 Beta3 shipped with @Clustered within the ha-client version 1.0.0.BETA1. Beta4 is currently gunning to use the same version, but if Brian's got changes he needs to get into the release, @Clustered will disappear (as it's been moved to ejb3-ext-api).
So we've got three projects tied together (for the time being), ejb3-ext-api, ejb3-ext-api-impl, and ha-client. If we bump up any of these releases for Beta4, we must bump up all. This binding was intended for structural changes to code in ext-api and ext-api-impl.
So resolution depends, then, on what version of ha-client will be used in Beta4. If we stay on 1.0.0.BETA1 then we'd have to backport the annotation impls, unless...
Moving forward, we'll go with the conventions we've set forth for versioning: 0.2.x should be the next series, not 0.1.4. This way we won't have to increment betas (Beta2 in the case you'd shown isn't really Beta2, its got new featuresets).
However, I thought the point of moving these annotation impls into their own package was for the following benefits:
* Discourage interdependencies within projects
* Allow for separate, frozen lifecycle
* Logically divide code and keep components small
For instance, if both Core and Interceptors need ExcludeClassInterceptorsImpl, wouldn't it be better for them both to depend on an ejb3-ext-api-impl than Core > Interceptors or vise-versa?
I suppose point 2) is a matter of preference.
Re: ha-client and AS 5 Beta4, I would certainly prefer to move off 1.0.0.BETA1. The only reason I haven't is if I do, the AS will no longer build because @Clustered doesn't exist in the AS ejb3 module and doesn't exist in ha-client BETA2. I was going to propose moving the old @Clustered (i.e. the one in ha-client BETA1) into the AS ejb3 module so it could build. Assumption was your installer would replace the ejb3 module with whatever you've got.
I'd like to add new releases of ejb3-ext-api and ejb-ext-api-impl to the scope of AS5 Beta4.
* The missing annotation impls were found and moved out of core post-Beta3
* We won't have to move @Clustered, yet again. :)
* The newer versions of these projects more accurately represent what will be present in the CR release.
ejb3-ext-api-impl should slowly disappear as we put annotation implementations within their respective components. So ClusteredImpl should be in with the code that instantiates it.
@Clustered is part of ejb3-ext-api.
And I'll be cutting new releases of ejb3-ext-api, ejb3-ext-api-impl, and ha-client for Beta4.
No need for a new ha-client release; the one you want is already there (1.0.0.BETA2), just needs build/build-thirdparty.xml to specify it once ejb3 can properly use it.
Andrew, please use just-released 1.0.0.GA for jboss-ha-client. (No code difference vs. BETA2).