These are only ideas. Some of them may not be implemented though. There will be a separate Roadmap page that will have only the ideas on which we agreed.
To be approved an idea has to be discussed first in dev@ mailing list. A patch and/or Pull Request increases the chance to get your idea in.
Igor has already started something about this at his GitHub
Perhaps this is a better library than simple history: https://github.com/rails/turbolinks
In Wicket 6, any behavior implementing IBehaviorListener becomes stateful. This includes all subclasses of AbstractAjaxBehavior. Overriding this behavior by making getStatelessHint() return true for an ajax behavior with a listener interface is tricky. The listener's url cannot be assumed to be stable unless the number and order of behaviors added to components does not change between the page creation and the ajax request.
Crazy, but why not ...
Auto components caused some problems due to their special lifecycle - they appear only during the rendering process. This will simplify component queueing, resolvers+auto components, problems with enclosures, ...
The idea is to rework the auto-components to be first class citizens, i.e. once the markup is parsed they should be in the runtime component tree as manually added components are. And should be reachable in the action phase.
Java 7 has nice support for generics, better annotations, and Java 6 is reaching its end of life pretty soon.
While we opted to not require servlet 3 for wicket 6, it has bitten us a couple of times solving issues in wicket 6. Servlet 3 has been out for ages, so we should move with the times.
Using attribute modifiers it is difficult to modify tags in proper ways such that existing classes on a 'class' attribute remain, while adding/removing other tags. A DSL for manipulating the class value of a component would be really great.
Currently we replace the markup of components, which works for updating the components, but it doesn't provide an easy way to animate the outgoing and incoming markup using CSS transitions. For example if you add a 'hidden' class to the class attribute of a component, and update it using Ajax, the markup gets replaced instead of updated.
See http://wicketinaction.com/2013/02/replace-components-with-animation/
The issue of fragile property expressions has not been given much love ever since. Bindgen-wicket solves this in a clean and elegant way. Moreover, annotation processing is no longer cumbersome (as it has become part of javac compilation process since java 6).
Discussion in dev@ mailing list: http://markmail.org/thread/z2ngjxxtpqqwsea6
... and integrate wicket-webjars