On Wed, Feb 26, 2014 at 6:21 PM, tetsuo <ronald.tet...@gmail.com> wrote:

> Guillaume, you're right.
>
> Martin, sorry for the misunderstanding.
>
> Enums can't extend any classes besides Enum. But can implement interfaces.
>

Thanks! Now it is clear to me.


>
> I use Enums in lots of places, not as enums, but as singletons, because
> they won't be serialized, won't carry unintended references, and use
> virtually no memory in pages. Converters, Renderers, Validators, Models
> (less so of the former, since it almost always needs state). If IBehavior
> still existed, and didn't have so many methods, I'd use enums to implement
> some of them, too.
>
> But my main complaint is not specific to this issue, however. I'm more
> concerned about frequent breaking API changes with no practical advantage.
> Javascript/JavaScript, addComponent/add(Component) and the like. I'm at the
> point that I'm starting to feel unconfortable recommending Wicket to
> people, because I know an year from now they will complain that they
> upgraded a library and a thousand compiling errors appeared. 98% of them
> are very simple errors, but it's a daunting task neverthless.
>
>
Options:
1) Wicket devs stop developing Wicket so the API stays stable forever
2) application developers don't upgrade to next major version of Wicket
3) find the golden middle.

I think we all agree that 3) is the best for all and that we (Wicket devs)
try to follow it:

- we use SemVer to make it easier for application developers to know when
to expect API breaks and when to not expect such
- we discuss most of the API breaks for major versions here in dev@.
  If there are issues identified on time we react! Even this change has
been discussed before being made




>
>
>
>
> On Wed, Feb 26, 2014 at 12:44 PM, Martin Grigorov <mgrigo...@apache.org
> >wrote:
>
> > As Martijn explained all that is needed is:
> > - s/implements/extends/
> > - remove the leading 'I' from IChoiceRenderer
> >
> > If the interface is preserved then all custom impls will have to add
> > implementation of the new method introduced with WICKET-663. This IMO
> will
> > lead to more work for the application developers.
> >
> > As I said: I am not against restoring the interface, just don't see its
> > value.
> >
> > Martin Grigorov
> > Wicket Training and Consulting
> >
> >
> > On Wed, Feb 26, 2014 at 5:37 PM, Guillaume Smet <
> guillaume.s...@gmail.com
> > >wrote:
> >
> > > On Wed, Feb 26, 2014 at 4:33 PM, tetsuo <ronald.tet...@gmail.com>
> wrote:
> > > > Because... it's an unnecessary breaking change?
> > >
> > > From what I understand of your previous post, you implements some of
> > > your converters in Enums, which you can do because IChoiceRenderer is
> > > currently an interface. And you won't be able to do it if it's a
> > > class.
> > >
> > > Am I right?
> > >
> >
>

Reply via email to