As I was working on openjpa-2172, it became apparent that our dependency on bean validation could use some cleaning up.
o Currently, OpenJPA has a dependency on Apache BVal 0.3-incubating. BVal has since graduated out of incubation. We should move to their non-incubating release of 0.5 (current as of this writing).
o BVal 0.5 removes the runtime dependency on slf4j runtime. You can still configure to use slf4j, but the runtime is no longer required unless you explicitly configure for it's use (similar to OpenJPA's dependency on slf4j). So, moving to BVal 0.5 would remove the dependency altogether on the slf4j runtime (still needed this for the TCK, reference openjpa-2172).
o But, this brings up the question of why we package BVal in the openjpa-all jar file in the first place. OpenJPA doesn't have a hard dependency on BVal. Bean Validation is an optional dependency. It's not a requirement. So, why do we package BVal in openjpa-all? It should probably be removed.
o If we do remove BVal from openjpa-all, then we'll need to document how to use BVal with OpenJPA. And, we'll need to adjust our TCK run so that the TCK can find a BVal implementation for some of the tests.