So, as you’ve likely noticed, we spent a lot time of talking about Plone 5 during the recent Plone Symposium Midwest. I think we’ve reached the point where can really start prioritizing concepts for a major release. Obviously, any changes need to go through the Framework Team for final approval, but I’ve got a bully pulpit and I’m not afraid to use it.
Here’s how I’d like to see development focused over the near term:
Plone 5 ships with Dexterity as its default content type story.
- Dexterity versions of plone.app.event and plone.app.collection
- A better set of widgets (plone.app.widgets)
- Products.Archetypes, Products.ATContentTypes, archetypes.schemaextender remain available as add-ons for older content
- Full multilingual story available (plone.app.multilingual)
Plone 5’s UI gets an extensive overhaul.
- Diazo becomes the default theming story
- Fewer CSS files makes finding and overriding easier
- No more !important in its CSS
- Editing interface is separated from content for easier styling (plone.app.toolbar)
- Accessible: WCAG- and ATAG-compliant
- Deco.gs is replaced with a more commonly-used grid system, responsive
- New folder contents UI with filtering and batch operations
- Improved, tested widgets
- TinyMCE gets upgraded to version 4.0, with a simplified integration making it easier for us to stay up-to-date
Plone 5 ships with an empty portal_skins.
- Exists for add-ons
- Most content moved to browser views, z3c.form
- Login rewritten to use views, events. Simple, but pluggable for more complex use cases
- Pay attention to proper XSRF protection for our most common functionality
Plone 5 has amazing test coverage.
- Migrating scripts from portal_skins to browser views allows more unit testing
Plone 5 is faster.
- Chameleon reduces rendering times by 30%
- Date formatting is handled on the client side
Plone 5 is easier to learn.
- plone.api covers most common development tasks.
- Plone 5 eats its own dog food and sets an example for:
- Views over skins
- Theming requires less knowledge of Plone, less fighting with the default setup
And most importantly…
Plone 5 is achievable within the next 12 months.
There are, I’m sure, 30 other features that are in some stage of not-doneness, and while I’d like to see us do everything, we need to find some kind of scope. I think the above featureset gives us a nice range of features, a not-too-painful upgrade, and gives everyone plenty to do over the next year.
We’ve already begun approaching Plone companies to get buy in to the effort, asking for time, money or organizational support. Six Feet Up has pledged 5 hours per week of their QA team’s time to test our work. Netsight is organizing a sprint to rework the login. AMP is pledging 5 hours a week toward deprecating portal_skins. Wildcard is taking on the folder contents revamp. If your group has a particular need, now is the time to make it happen.
In addition, we have plans to use the general community excitement that comes along with a major release to build some momentum in our non-code teams. If we can move this forward, I think Plone 5 will be a big step up for both Plone the software and Plone the community.