One of the headaches we cause our users, include the AS5 clustering
team, is breaking API compatibility on every major release. This is
probably the biggest reason why getting JBC3 into an AS5 release is a
non-option.
See users complaining:
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4171065#...
I propose that we make 3.0 100% backwards compatible with JBC 2.x. This
will improve adoption, and means we stand a chance at becoming a part of
an AS5 release. IMO, there is little justification for API changes since
our biggest feature / release goal doesn't require it. Also, since we
have some API impacting features (partitioning, etc) scheduled for the
next major release, it is very possible that we would end up breaking
the API twice.
The biggest API change is the Fqn changes, which while the overloaded
constructors where broken, we don't have to remove them. We can just
mark them as deprecated. Also, while the generics usage doesn't fit the
type, it doesn't really hurt anything, so I think we can just live with
that past design decision.
The other API change I noticed was XmlConfigurationParser. The old one
was renamed to XmlConfigurationParser2x and moved to another package.
The new one was named XmlConfigurationParser. Is this considered a
public API?. If it is then we should make XmlConfigurationParser choose
the appropriate implementation based off of the file format.
--
Jason T. Greene
JBoss, a division of Red Hat