Don Brown wrote:
On 2/22/08, Brian Pontarelli <[EMAIL PROTECTED]> wrote:
 Hehe. The changes from 2.0 to 2.1 are completely incompatible, so this
 change is minor in comparison.

I disagree with that statement.  For Struts 2 users, the changes are
only minor.  I think you feel them more because you are working on
plugins that dig deep into the Struts 2 and XWork 2 code, and yes, the
internals have changed quite a bit.  I'd say the biggest change, from
a user standpoint, was not allowing JSP EL expressions in JSP tags,
and that was first done in 2.0.10.
I'm pretty sure applications will break. Just look at the changes made to the names of interceptors, results, etc. Plus, I've got to argue this point because those APIs that I was using as a plugin developer or in other similar cases are public APIs. This is very different than internal APIs. If you are going to make something public, you need to ensure compatibility because if it is public, people will use it.

I have a good antidote about this. The folks over at Spring had an API that was public and returned the current proxy (for AOP). They documented it saying something like, "don't use this even though it is public." Well, sure enough, a number of people used it and the method changed a few times and broke a few times over the years. Each release they did there would be a bug submitted to fix that method and each time the Spring folks would say, "don't use that method," and after some moaning and groaning would eventually fix the method.

The moral of the story: if it is public, people will use it and if you break it, people will complain.

-bp

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to