Plone 4.1 (Aug 08, 2011)
The second feature release in the 4.x series.
For additional information about this project, please visit the overview page .
There may be hotfixes applicable to this release. Always check the Plone Hotfix Page before production deployment.
Available downloads
Unified Installer for Linux/BSD/Solaris/OS-X. Full-source kit, builds Python, Zope, Plone.
For Linux/BSD/Unix (48.9 MB)
Release Notes
| State | Final release |
|---|---|
| License | GPL |
| Release Manager | Eric Steele |
Feature enhancements in this release
The following features are associated with this release:
- Update to Zope 2.13
- Zope 2.13 is the next stable release of Zope 2. It comes with a new and faster version of the ZODB, built-in WSGI support, updated Zope Toolkit packages and a much faster ZCatalog.
- Add "SiteAdmin" role
- Provide class of user who should have full access to manage content and configuration in a Plone site, but who should be protected from access to places where they are more likely to cause harm than good (such as the ZMI).
- Tags MultiSelectionWidget w/scrollbar & checkboxes
- Implement a new content tagging widget, improving usability and accessibility.
- Improved commenting infrastructure
- Include plone.app.discussion, which adds support for moderation, notifications, and greater extensibility.
- Ship with plone.app.caching
- Simplify and sanitise the setting of caching response headers.
- Include plone.app.registry
- Provides a debconf-like (or about:config-like) settings registry for Plone add-ons.
- Include z3c.form
- Utilize the z3c.form library.
- Standalone UUID implementation
- A lightweight, simple UUID mechanism that is independent of any content implementation.
- Table sort internationalization
- Provide a solution for making data sortable by dates in any format (such as "Monday 1st, June, 2010") without any javascript customization, and through a standard way.
- Include plone.testing and plone.app.testing
- Reduce the complexity involved in creating tests with a clean, well-documented framework based on layers.
- Separate Products.CMFPlone from the Plone egg and its optional dependencies
- The Plone package currently lists a number of dependencies which are not installed by default. We should make it possible for advanced integrators to avoid including that code at all.
- Factor custom output transformations out of the editors
- Refactor image captioning and UID resolution functionality, to make it independent of TinyMCE and kupu packages.
- Set and enforce base coding standards for our own JavaScript
- Clean existing JavaScript code. Define standards for future submissions.
Change log
plone.recipe.zope2instance: 4.1.6 → 4.1.7
- Renamed the optional 998-resources.zcml (introduced in 4.1.6) to 998-resources-configure.zcml, otherwise it does not get loaded in the standard site.zcml. [maurits]
distribute: 0.6.16 → 0.6.19
Products.ZCatalog: 2.13.14 → 2.13.15
feedparser: 4.1 → 5.0.1
Products.ATContentTypes: 2.1.2 → 2.1.3
Products.PloneLanguageTool: 3.2.2 → 3.2.3
- Avoid UnboundLocalError on langsCookie. Fixes http://dev.plone.org/plone/ticket/11976 [WouterVH]
Products.PlonePAS: 4.0.7 → 4.0.8
- Fire IPrincipalDeleted when a user is deleted. [stefan, ggozad]
Products.PortalTransforms: 2.0.6 → 2.0.7
- In the safe_html transform, abort parsing if a broken declaration is found. [evilbungle, davisagli]
- In the safe_html transform, remove data URIs. [davisagli]
- In the safe_html transform, ignore null bytes when checking for unsafe attributes with scripts. [davisagli]
Products.TinyMCE: 1.2.6 → 1.2.7
archetypes.referencebrowserwidget: 2.4.2 → 2.4.3
- Use label tags for selectable items. [esteele]
- Fix: text search searches from navigation root. [thomasdesvenain]
- moved checkPermission from widget template to helper [tom_gross]
- Fix referencebrowser.js error when using allow_sorting = 1 [toutpt]
archetypes.schemaextender: 2.1 → 2.1.1
plone.app.content: 2.0.6 → 2.0.7
- Replace links to .../@@folder_contents by links to .../folder_contents so that 'Content' tab remains selected after a folder action. This fixes http://dev.plone.org/plone/ticket/10122. [thomasdesvenain]
plone.app.discussion: 2.0.4 → 2.0.7
plone.app.form: 2.0.2 → 2.0.3
- Made (more) compatible with chameleon by using a simpler way to get the wysiwyg editor. [maurits]
- Add MANIFEST.in. [WouterVH]
plone.app.i18n: 2.0 → 2.0.1
- Use template parameter in language selector's viewlet zcml declaration. Make it easier to customize in add-ons. [toutpt]
plone.app.iterate: 2.1.1 → 2.1.2
- Include Products.CMFCore for Plone 4.1 compatibility. [thomasdesvenain, WouterVH]
plone.app.jquerytools: 1.2 → 1.3
- Add events triggering so you can hook into it more. [vangheem]
- Don't break if a formselector was specified but the overlay has no form. [davisagli]
- Refactor setup of AJAX-loaded content so it's easier to call from custom code. [davisagli]
- It's now possible to repeatedly apply prepOverlay to the same element and have the last-applied case win. Previously, once prepOverlay had been used on an element, all subsequent uses on that element were ignored. [smcmahon]
- Add documentation in README for using jQuery Tools event handlers. [smcmahon]
plone.app.layout: 2.1.6 → 2.1.8
plone.app.linkintegrity: 1.4.1 → 1.4.2
plone.app.locales: 4.0.7 → 4.0.8
- Updated translations. [Plone translators]
plone.app.redirector: 1.1.1 → 1.1.2
- Don't break in the objectMoved handler if the request has no ACTUAL_URL, to facilitate testing. [davisagli]
- Add MANIFEST.in. [WouterVH]
plone.app.vocabularies: 2.1.2 → 2.1.3
plone.app.workflow: 2.0.3 → 2.0.4
- If user has inherited local roles on a folder and removes inheritance on sharing page, locally set roles that were inherited before to avoid definitive loss of access. This refs http://dev.plone.org/plone/ticket/11945. [thomasdesvenain]
- In sharing view, return empty list immediately if search_term is the translated "Search for user or group" message. [vincentfretin]
- In sharing view, the search for users and groups was done twice, once in macro_wrapper template and another one in the user-group-sharing macro in sharing template because of duplicate variable definitions. [vincentfretin]
plone.app.z3cform: 0.5.4 → 0.5.6
plone.portlet.collection: 2.0.2 → 2.0.3
- Change the target_collection query to use a portal_type instead of an object_provides restriction. The data for the former is much more likely in the ZODB cache as many catalog queries use it. [hannosch]
- Fix 'Show more...' handling so it doesn't cause portletFooter to disappear. Fixes http://dev.plone.org/plone/ticket/9415. [msmith64]
plone.reload: 2.0b1 → 2.0
- Update test assertions to avoid deprecation warnings under Python 2.7. [hannosch]
- Relicensed to BSD. [hannosch]
- Minor PEP8 cleanup. [hannosch]
- Exclude tests from the shipped source distribution. [hannosch, iElectric]
plone.z3cform: 0.7.6 → 0.7.7
plonetheme.classic: 1.1 → 1.1.1
- Deprecated iefixes.js after we have introduced Modernizr and removed the script's GS registration. References https://dev.plone.org/plone/ticket/11300 [spliter]
- Add MANIFEST.in. [WouterVH]
plonetheme.sunburst: 1.1.4 → 1.1.5
- Fixed IE8 issue where a ghost top-margin would appear above the headline in the folder summary listing. [malthe]
- Add shadow and border for iframe overlays to match images and ajax overlays. [smcmahon]
- Fixed: portal footer is in a 'row' div. [thomasdesvenain]
- Clean up HTML comments in main_template. [davisagli]
- Add ids on content core viewlet managers. [thomasdesvenain]
- Fixed: siteactions background-color was applied to whole page. Add a clear: left. [thomasdesvenain]
- Add IEFixes.css to CSS registry in case plonetheme.classic is not installed. [elro]
- Removed comment in IEFixes.css concerning the now removed IE8.js. [elro]
- Fixed: spinner is back in main_template. [thomasdesvenain]



