Plone 4.1.4 (Feb 27, 2012)

Bugfix release for Plone 4.1

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

For installation instructions go to: developer.plone.org/getstarted/installation.html.

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

Available downloads

Change log

distribute: 0.6.21 → 0.6.24

z3c.ptcompat: 0.5.7 → 1.0

z3c.template: 1.2.1 → 1.4

Plone: 4.1.3 → 4.1.4

  • Release Plone 4.1.4 final. [esteele]

Products.ATContentTypes: 2.1.5 → 2.1.6

  • Fix the change/modify permission used for changing or managing Topic/Collection criteria. [rossp]
  • Calculate the localized datetime string based on UTC time. Refs https://dev.plone.org/ticket/12197. [malthe, ajung]
  • Replace getParentNode() with __parent__ / aq_parent as appropriate. [elro]

Products.Archetypes: 1.7.10 → 1.7.12

  • Animated GIF loses animation if Archetypes ImageField original_size property set see http://dev.plone.org/ticket/12488 [anthonygerrard]

  • Archetypes ImageField converts GIF to PNG when it scales see http://dev.plone.org/plone/ticket/12472 [anthonygerrard]

  • Delete image also when field mutator is given a None argument. Previously, an image would only be deleted if given the string "DELETE_IMAGE".

    Note that we still return immediately if provided an empty string. [malthe]

Products.CMFCore: 2.2.4 → 2.2.5

Products.CMFEditions: 2.1.6 → 2.1.7

  • Changed the get_macros python skin script into a browser view. This avoids an Unauthorized exception when viewing revisions when using five.pt (Chameleon). [maurits]
  • If an object has a component registry (AKA site manager), make sure the bases of that registry are not recursively copied when saving versions. [rossp]

Products.CMFPlone: 4.1.3 → 4.1.4

  • Catch KeyError on 'userid' that occurs when mail_password is accessed directly (without 'userid' in the request). Return mail_password_form. [brayt]
  • Notify ObjectModifiedEvent when a content title is modified through action > rename. Fixes http://dev.plone.org/ticket/12460 [thomasdesvenain]
  • Fixed some mail tests in combination with five.pt. [maurits]
  • Do not display the author contact form when the logged in user does not have an email address. Fixes http://dev.plone.org/ticket/12258 [maurits]

Products.DCWorkflow: 2.2.3 → 2.2.4

Products.GenericSetup: 1.6.4 → 1.6.5

Products.PloneLanguageTool: 3.2.3 → 3.2.4

  • Prevent UnboundLocalError for unassigned variable lang when switchLanguage is called without parameters. [weberlar]
  • Remove versions.txt. [esteele]

Products.PlonePAS: 4.0.9 → 4.0.11

  • Do some more checks when changing or deleting a member portrait. Fixes http://dev.plone.org/ticket/5432 [maurits]
  • Pass request along to getGroupsForPrincipal for caching purposes. [esteele]
  • Fixed typo in method name hasOpenIDExtractor, keeping the old name (hasOpenIDdExtractor) around for backwards compatibility. Fixes http://dev.plone.org/ticket/11040 [maurits]

Products.PluggableAuthService: 1.7.5 → 1.7.7

  • Explicitly encode/decode data for GS
  • Launchpad #795086: fixed creation of PropertiesUpdated event.

Products.PluginRegistry: 1.3b1 → 1.3

  • Change default encoding for importexport from None to utf-8.

Products.TinyMCE: 1.2.9 → 1.2.10

  • Fixed AttributeError: 'ATDocumentFieldsView' object has no attribute 'absolute_url' when using inline editing. Inline editing then still does not work though (checked on Plone 4.2 dev). [maurits]
  • Fixed a few test failures in combination with five.pt. [maurits]
  • Do not fail with an AttributeError when the member has no wysiwyg_editor property. Fixes http://dev.plone.org/ticket/12406 [maurits]
  • Initialize TinyMCE with "media_strict: false" to allow embed tags if they are removed from the list of nasty tags. Fixeѕ https://dev.plone.org/ticket/10681 [rochecompaan]
  • Updated Spanish translation [hvelarde]

Products.ZSQLMethods: 2.13.3 → 2.13.4

archetypes.referencebrowserwidget: 2.4.4 → 2.4.9

collective.z3cform.datetimewidget: 1.0 → 1.0.5

plone.app.caching: 1.0 → 1.0.1

  • Properly handle a changed configuration from with etags to no etags by forcing a page refresh [eleddy]
  • When not caching with etags, don't sent an etag header to stop caching [eleddy]
  • When there was an error like Unauthorized, 200 status and empty body would be cached in RAMCache instead of not caching anything. This is due to a bug with Zope 2.13 publication events : response.status is not set when IPubBeforeAbort is notified. Fixed by using error_status stored on request by plone.transformchain. [gotcha]
  • Added 12 translation strings for ruleset's title and description. Corresponding translation strings have been added in plone.app.caching-manual.pot in PloneTranslations [giacomos]
  • Added 6 translation strings for caching profiles' title and description. Corresponding translation strings have been added in plone.app.caching-manual.pot in PloneTranslations [giacomos]
  • Changed wrong i18n domain in the messagefactory. plone.caching -> plone.app.caching. [giacomos]

plone.app.contentmenu: 2.0.4 → 2.0.5

  • Restore the workflow menu on the folder contents page as it is the only way to change the state of the folder when it has a default page. Improves the fix to http://dev.plone.org/plone/ticket/8908. [rossp]

plone.app.contentrules: 2.1.3 → 2.1.4

  • Fix missing CMF Permissions declaration in ZCML declaration (Julien Stegle) [encolpe]
  • Fixed wrong error plone message after a failure on a delete content rule. [thomasdesvenain]

plone.app.discussion: 2.0.11 → 2.1.3

plone.app.form: 2.0.4 → 2.0.5

  • Fix the CheckBoxWidget to work properly with required fields and return an error that was previously squashed. Added missing unit tests for widget. This should also fix #11449. [rochecompaan]

plone.app.jquerytools: 1.3 → 1.3.1

plone.app.layout: 2.1.12 → 2.1.13

  • Slightly changed the whitespace in sitemap.xml.gz. [maurits]
  • Use the link_target attribute (e.g. _target) of user actions in the personal bar, if set. Fixes http://dev.plone.org/ticket/11609 [maurits]
  • Added a page as a not-js fallback for the user dropdown menu [giacomos]

plone.app.openid: 2.0.1 → 2.0.2

  • Use fixed spelling of method name hasOpenIDExtractor from PlonePAS. We depend on Products.PlonePAS 2.0.10dev or higher for this. Fixes http://dev.plone.org/ticket/11040 [maurits]
  • Add MANIFEST.in. [WouterVH]

plone.app.upgrade: 1.1.4 → 1.1.5

  • Fix adding Site Administrator roles for when custom workflows might not have the permission_roles for states set. [vangheem]

plone.app.users: 1.1.1 → 1.1.3

plone.app.vocabularies: 2.1.3 → 2.1.5

  • Ensure that the keywords vocabulary term titles are unicove values, as per zope.schema.interfaces.ITitledTokenizedTerm. [mj]
  • Ensure that the keywords vocabulary term tokens are 7-bit values, as per zope.schema.interfaces.ITokenizedTerm. [mj]

plone.app.z3cform: 0.5.6 → 0.5.7

  • Corrected formatting for errors on the FieldWidgets object (i.e. from invariants). This closes http://code.google.com/p/dexterity/issues/detail?id=238 [davisagli]
  • Added the i18n:domain attribute in the first div of widget.pt in order to make the "required" tooltip translatable. Fixes http://dev.plone.org/plone/ticket/12209 [rafaelbco]

plone.locking: 2.0.1 → 2.0.3

  • Check if context is not joined to zodb connection for transaction where lock is added. [fafhrd91]
  • Do not cleanup stale lock if database is in read-only mode. http://dev.plone.org/ticket/12239 [fafhrd91]

plone.stringinterp: 1.0.4 → 1.0.5

  • Recursive get members works in a non wrapped context (when getting PloneGroups instead of GroupData from GroupTool) [thomasdesvenain]
  • Add MANIFEST.in [WouterVH]

plone.testing: 4.0.2 → 4.0.3

  • Fixed class names in documentation to match code. [icemac]

plone.transformchain: 1.0 → 1.0.2

plone.uuid: 1.0.1 → 1.0.2

  • Generate UUID without dashes. [elro]

plonetheme.classic: 1.1.1 → 1.1.2

  • Fix the styling of the new content history views. [rossp]

plonetheme.sunburst: 1.1.5 → 1.1.6

  • Fix the styling of the standalone @@historyview view used when overlays are turned off. [rossp]
  • Updated column width values in base_properties, for third part products that uses it. [thomasdesvenain]

z3c.form: 2.4.3 → 2.5.1

  • Better compatibility with Chameleon 2.x.

  • Added *.mo files missing in version 2.5.0.

    System Message: WARNING/2 (<string>, line 315); backlink

    Inline emphasis start-string without end-string.

  • Pinned minimum version of test dependency z3c.template.

  • Fixed coverage report generator script buildout setup.

  • Note: z3c.pt and chameleon are not fully compatible right now with TAL. Traversing the repeat wrapper is not done the same way. ZPT uses the following pattern: <tal:block condition="not:repeat/value/end">, </tal:block>

    Chameleon only supports python style traversing: <tal:block condition="not:python:repeat['value'].end">, </tal:block>

  • Upgrade to chameleon 2.0 template engine and use the newest z3c.pt and z3c.ptcompat packages adjusted to work with chameleon 2.0.

    See the notes from the z3c.ptcompat package:

    Update z3c.ptcompat implementation to use component-based template engine configuration, plugging directly into the Zope Toolkit framework.

    The z3c.ptcompat package no longer provides template classes, or ZCML directives; you should import directly from the ZTK codebase.

    Also, note that the PREFER_Z3C_PT environment option has been rendered obsolete; instead, this is now managed via component configuration.

    Attention: You need to include the configure.zcml file from z3c.ptcompat for enable the z3c.pt template engine. The configure.zcml will plugin the template engine. Also remove any custom built hooks which will import z3c.ptcompat in your tests or other places.

    You can directly use the BoundPageTemplate and ViewPageTempalteFile from zope.browserpage.viewpagetemplatefile if needed. This templates will implicit use the z3c.pt template engine if the z3c.ptcompat configure.zcml is loaded.

  • Remove unneeded dependency on deprecated zope.app.security.

  • Fixed ButtonActions.update() to correctly remove actions when called again, after the button condition become false.