The problem comes with changing dependencies and classnames.  For example the
SessionStateSelectorFactory has been renamed the SessionAttributeSelector.
While the second is arguably a better name, please use deprecation so that
users can be warned before the class is eliminated!

Avalon Excalibur has a few classes which follow the following approach:

/**
  * @deprecated Use ExcaliburComponentManager instead!
  */
class DefaultComponentManager extends ExcaliburComponentManager{}

This way the functionality is the same, but the user is pointed to the
correct version gracefully.

It is a number of issues like this, the constant rearranging of the core
components, etc. that make moving between Cocoon versions a headache.

I honestly think we have a few too many different types of core components,
and it would be better if they were rearranged a bit.

This is especially true since people have portions of the cocoon.xconf
file that are specialized to their site!

DANGER, WILL ROBINSON!
*Any* time you add a new abstract method to an abstract class, or change
an abstract method on an abstract class--that change is NOT BACKWARDS
COMPATIBLE!

I have some specialized actions that extend AbstractComplimentaryConfigurableAction
that are now broken because of this very thing.  Now I have to figure out
what changed!

-- 

"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin


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

Reply via email to