Status |
Proposal under development |
Target Release |
4.0 |
Original Authors |
Dave Johnson |
Abstract
This is a proposal to make a Roller 4.0 release, a major new release to introduce some infrastructure improvements and upgrades that we've been wanting to make for a long time. This includes a new data-mappper back-end with a JPA implementation, Struts 2 support and a requirement for Java SE 5.
Requirements
Upgrade dependencies, switch to new back-end, improve blog customization and introduce other new features.
- Introduce new ASF-license-compatible persistence framework. Replace our existing Hibernate based Roller back-end with one based on Apache OpenJPA. Drop Hibernate from the Roller distribution (but keep it in SVN until everybody has transitioned away from it).
- Upgrade to Struts 2. The Roller UI needs significant improvement and modernization and by upgrading to Struts 2 if will be easier for us to meet the higher standards that are expected of "Web 2.0" web applications.
- Introduce requirement for Java SE 5. We've been stuck on Java 1.4.2 for a long time now, there are significant improvements in Java SE 5 and the libraries that we depend on are starting to take advantage of those improvements (i.e. Struts annotations and ROME)
Issues
Issues to be considered
- Which JPA implementation should we ship with Roller 4.0? We looked at Toplink Essentials and Apache OpenJPA. Apache OpenJPA looks best and it currently the default in the Roller trunk.
Design
- New JPA based backend follows same design as old Hibernate backend
- New Struts 2 UI architecture is summarize in Allen's Struts2 Migration guide
- See individual proposals for design information.
Proposals
Implemented
- Proposal Individual Templates By Action Support a way to define individual or separate template files for various weblog page actions
- Proposal_TemplateEditorEnhancements - Improvements to usability and functionality of Preferences->Templates pages
- Proposal_ThemeEncapsulation - Better encapsulation and modularization for themes.
- Proposal_FeedHistory - Add Atom-friendly feed-history (paging) support to our feeds.
- Proposal_SearchFeeds - Add support to generate feeds from search results.
- Proposal Account Activation via Email - Add support for registration via email (patch from Sedat Çiftçi)
Accepted and under development
- Proposal Easy Install - Make the Roller installation process simple by requiring only a single simple property file for configuration and by automating creation and update of database tables required for Roller.
Under consideration
- Proposal Stylesheet Overrides for Weblogs - a way to allow weblogs to do stylesheet customizations without having to customize their theme and hack the templates
Change list from JIRA
Completed
- ROL-1371 Bad links in site-wide comment links
- ROL-1365 Filter by Search String on the Entries page
- ROL-1360 Notify email value $cform.notify is always false
- ROL-1120 email.comment.commentApproved not found in ApplicationResources.properties
- ROL-1053 Missing resource for email.comment.commentApproved
- ROL-1359 a small bug about bookmarks
- ROL-940 Minor typos in ApplicationResources
- ROL-1380 Rename Atom Admin Publishing Protocol
Incomplete
- ROL-1367 Ease of weblog customization: Ability to add widgets via the UI
- ROL-1368 Ease of weblog customization: Style selection by theme(s)
- ROL-1366 Ease of weblog customization: custom bio blurp & thumbnail entry
- ROL-1369 Improve comment messages that render to users
- ROL-1222 Improve theme support
- ROL-1310 Individual templates by action (feeds, tags, archive, etc.)
- ROL-1323 Remove 'Referrers' tab for sites that don't use this functionality
- ROL-1378 Upgrade to Apache Velocity 1.5
- ROL-1379 Upgrade to Apache XMLRPC 3.0
- ROL-1350 Refine trackback message...
- ROL-548 Bookmark display macro not obeying sort order
Comments
Please comment on the Roller-dev mailing list.