The release numbers are not consecutive because not every beta release is voted for wider release. This one has.
Tapestry 5.4-beta-22 contains a significant number of bug fixes and minor improvements. Dependencies on third party libraries have been updated.
- It is now possible to unregister client-side DOM event listeners.
- The client persistence strategy now detects internal changes to mutable state objects.
- Page classes may now have the suffix "Page" (but this is not part of the page's canonical name, the one used in URLs).
- Selected pages may be loaded and initialized at server startup, rather than on the first request which references them.
- Tapestry does a better job of detecting when its naming rules would cause different pages, components, or mixins to share an alias.
- There were some issues with JDK 8 compatibility that have been addressed.
- Tapestry can now be configured to work in environments, such as Google App Engine, where file system access is prohibited.
- The Dashboard page now has a "Component Libraries" page that details information about all libraries in use by the application.
- The Import annotation on a base class would not operate correctly for a subclass; it now correctly searches relative to the base class.
- The PageActivationContext annotation now works for more than one field, allowing multi-part page activation contexts.
- Exception reports may now be written, in a plain-text format, to the file system.
Tapestry now requires at least JDK 1.6. It is no longer compatible with JDK 1.5.
While not an actual release candidate, beta previews like this one are high-quality builds that pass all of Tapestry's extensive automated tests and have been voted on by the Tapestry team.