Plone 3.3 (Aug 19, 2009)


This is an historical page intended for people who can't upgrade. Current versions of Plone can be found on the overview page

After Plone 3.2 (which focused on packaging/installer improvements), this is a minor release that adds some new features. It does not include any major changes: all products that work with Plone 3.0, 3.1 & 3.2 should also work in Plone 3.3. The upgrade from Plone 3.x is simple and non-invasive, ensuring a smooth upgrade experience.

For additional information about this project, please visit the overview page .

For installation instructions go to:

There may be hotfixes applicable to this release. Always check the Plone Hotfix Page before production deployment.

Available downloads

Release Notes

State Final release
License GPL
Release Manager Wichert Akkerman


Upgrading from Plone 3.2 should require no special procedures beyond updating your buildout configuration and running the standard migration. See the Plone Upgrade Guide if you are unfamiliar with these steps. If you are upgrading from versions prior to 3.2, you should definitely consult the Upgrade Guide's specific instructions and incorporate the steps to earlier versions into your update procedure.

Known upgrade problems

My buildout no longer works

This is a possible side effect of the upgrade to a newer version of zc.buildout. The most obvious symptom of this is that Zope will complain about unknown modules on startup. To fix this you need to follow these steps:

  1. remove the develop-eggs directory
  2. remove the fake-eggs directory
  3. rerun buildout

TextIndexnG3 no longer works

Plone 3.3 includes a number of enhancements to the catalog infrastructure. These break some assumptions TextIndexNG3 made. These is fixed in version X.Y of TextIndexNG3. If you can not upgrade to this version you can also work around the problem by adding a file called to your product with this contents:

from zope.component import adapts
from zope.interface import implements
from plone.indexer.wrapper import IndexableObjectWrapper
from textindexng.interfaces import IObjectWrapper

class ExtensibleObjectWrapperAdapter:

    def __init__(self, context):
        self.context = context

    def getWrappedObject(self):
        return self.context._IndexableObjectWrapper__object

and register that by adding two lines to your configure.zcml file:

<!-- Hack to get TextIndexNG3 working with Plone 3.3 -->
<adapter factory=".txngfix.ExtensibleObjectWrapperAdapter" />


Feature enhancements in this release

The following features are associated with this release:

Link type should automatically redirect when accessed directly
Links should be capable of doing automatic redirection.
Resource Registries Improvements
Allow Resource Registries to use conditional comments for CSS to bring the IEFixes.css into the registry and allow external references to resources for all registries.
Standardizing our use of INavigationRoot
Plone has the INavigationRoot marker interface which supports rooting your tabs, navigation, breadcrumbs, sitemaps and searches to a specific container inside of a portal which itself is a INavigationRoot. Some areas of this need to be cleaned up and standardized to follow a consistent convention.
Minor i18n upgrades
Include PloneLanguageTool 3.0 and PTS 1.5.
Disable inline editing by default
The current inline editing behaviour as introduced in Plone 3 was a mistake: it is a cool technology to show off, but in practice accidental clicks very frequently lead to unwanted edit-screens.
Adapterise the Extensible Indexable Object Wrapper
Make it easier to register ExtensibleIndexableObjectWrapper attributes with adapters
Improve locking configurability
This PLIP proposes to a) make it harder to accidentally leave content items in a locked state, and b) make it easier to adjust the lock timeout or disable locking entirely.
Clean up auto-sort, auto-order code
Clean up, i.e. remove all code related to auto-sorting / auto-ordering folder contents as this feature was implemented for Plone 2.1, but never got enabled. Basically this proposes to revert
Replace workflow history viewlet with content history viewlet
Plone stores both workflow history and versioning history for objects. Only workflow history is shown in a viewlet in current Plone versions. I propose to show all history data.
View for rendering events as an iCalendar file
Make it possible to subscribe to Plone events in the standard iCalendar format.
Automate ZCML Loading for Plone Plug-ins
Enable automatic plugins for Plone with z3c.autoinclude