CHANGES.txt
CMF 2.1.1-beta (2007/12/29)
Bug Fixes
- CMFActionIcons profiles: Fixed dependency in import_steps.xml.
- CMFDefault profiles: Fixed some dependencies in import_steps.xml.
- DCWorkflow.exportimport: Scripts with invalid types imported after scripts with valid types will no longer place the valid script twice. Scripts can also now be specified with meta_types other than the hard-coded meta_types.
- CMFDefault.utils: The email validation would reject addresses where the domain part started with a single letter element. (http://www.zope.org/Collectors/CMF/495)
- CMFDefault skins: Prevented the getMainGlobals script to fail if not content-type header is set.
- AfterTransitionEvent now passes along the new status of the object, just as StateChangeInfo passes on the new status to after-transition scripts. (http://www.zope.org/Collectors/CMF/490)
Other
- Updated to the 0.3 release of five.localsitemanager.
- Testing: Derive test layers from ZopeLite layer if available.
See also CMFCore/CHANGES.txt.
CMF 2.1.0 (2007/08/08)
New Features
- PortalFolder: Enabled
Components
ZMI tab. This GenericSetup tab allows to inspect and edit component registrations.
Bug Fixes
- Fixed all componentregistry.xml files to use plain object paths and strip and slashes. GenericSetup does only support registering objects which are in the site root.
- Allow email addresses with all-numeric domain names. The RFCs do not support them but they do exist. (http://dev.plone.org/plone/ticket/6773)
CMF 2.1.0-beta2 (2007/07/12)
New Features
- CMFCore.exportimport.skins: Added the ability to remove whole skin selections using a GS profile. (http://www.zope.org/Collectors/CMF/479)
- Workflow definition instances now have a description field (http://www.zope.org/Collectors/CMF/480)
Bug Fixes
- UndoTool: Fixed
listUndoableTransactionsFor
. The requiredobject
argument is now respected. This doesn't change the behavior as long asobject
is the site root object. - CMFCore.TypesTool: Corrected method signature of all_meta_types to have an interface keyword argument, as per the underlying OFS.ObjectManager interface declaration.
- SkinnableObjectManager: Changed the way skins are set up.
Acquisition wrapping no longer triggers
setupCurrentSkin
. This is now done on publishing traversal after the BeforeTraverseEvent triggerssetSite
. This fix replaces a temporary hack introduced in 2.1.0-beta, making sure ISkinsTool is looked up after setting the site. - CMFCore.CMFBTreeFolder: CMFBTreeFolders could not be used as the toplevel /Members container. (http://www.zope.org/Collectors/CMF/441)
- Pass
object
through to TypeInformation objects'listActions
. (http://www.zope.org/Collectors/CMF/482) - Removed extraneous "Cache" tab from FS-based skin objects. (http://www.zope.org/Collectors/CMF/343)
- CMFCore.WorkflowTool: Using the
(Default)
keyword for a type's workflow chain will now reset any custom workflow chains for the type. (http://www.zope.org/Collectors/CMF/475) - Use the property API to get the member specific skin, because direct attribute access won't work with PAS based membership. (http://dev.plone.org/plone/ticket/5904)
- Add POST-only protections to security critical methods. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-0240)
- Allow customization from DirectoryViews to be redirected into alternate folders, and use manually-built clones. (http://www.zope.org/Collectors/CMF/382)
- Use a utility, registered for
Products.CMFDefault.interfaces.IHTMLScrubber
, to perform scrubbing of HTML; fall back to the old, hard-wired behavior. (http://www.zope.org/Collectors/CMF/452) - Remove antique usage of marker attributes in favor of interfaces, leaving BBB behind for places potentially affecting third-party code. (http://www.zope.org/Collectors/CMF/440)
- Fixed DST-driven test breakage in CMFCalendar by adding an optional
zone
argument to the DublineCore methods which return string rednitions of date metadata. (http://www.zope.org/Collectors/CMF/476) - Favorite: Fixed UID handling broken in 2.1.0-beta.
- CMFDefault: Removed CMFUid dependency inadvertently added in 2.1.0-beta.
- CMFActionIcons: Fixed interface declarations added in 2.1.0-beta.
Other
- The CMF now depends on Zope 2.10.4 or higher.
- CMFDefault: Adjusted factory.py to new GenericSetup version.
- CMFUid.UniqueIdAnnotationTool: Annotation handling has been switched from triggering it through old-style manage_*-methods to using events. UID assigning behavior has been made more flexible. Please review CMFUid/README.txt for information about the current behavior and the new features. (http://www.zope.org/Collectors/CMF/474)
CMF 2.1.0-beta (2007/03/09)
IMPORTANT NOTE:
If you upgrade an existing CMF instance to CMF 2.1, please see INSTALL.txt for instructions on how to run a separate upgrade script.
New Features
- CMFCalendar: Zope3 style browser views are now used by default. An additional setup profile allows you to hook up the oldstyle skins and to make customizations TTW.
- DirectoryView: Added
registerDirectory
ZCML directive. Using the old registerDirectory method in __init__.py is now deprecated. See zcml.IRegisterDirectoryDirective for details. - DirectoryView: Added support for non-product packages. This introduces new registry keys. Old registry keys stored in persistent DirectoryView objects are updated on the fly. (http://www.zope.org/Collectors/CMF/467)
- Document: Added two new methods for safety belt handling.
- setup handlers: Improved properties handler. It now works with properties using a default_charset other than UTF-8.
- Merged patches from Martin Aspeli to enable generating events before
and after DCWorkflow transitions, and in the
notify
methods of the workflow tool (http://www.zope.org/Collectors/CMF/461).
Bug Fixes
- CMFUid.UniqueIdHandlerTool: Touching the internal UID value on a content item will not cause reindexing all indices anymore, only the specific UID index will be touched. (http://www.zope.org/Collectors/CMF/469)
- CMFCore.MembershipTool: Fixed inconsistent behavior where member lookup would take all user folders up to the Zope root into account whereas member area creation would not.
- CMFCore.MembershipTool/CMFDefault.MembershipTool: when using an object without a __nonzero__ but with a __len__ (ala CMFBTreeFolder) as a member folder, the createMemberArea method would believe there was no members folder if the folder was empty, and so would fail (change "not membersfolder" to "membersfolder is not None") .
- CMFDefault.File and CMFDefault.Image: Restored ZMI Cache tab which was lost in CMF 1.6.
- CMFCore.DynamicType: Fixed behaviour regarding default view. DynamicType was making it impossible to use a Zope3-style default view for CMF content types. (http://www.zope.org/Collectors/CMF/459)
Others
- Tool lookup and registration is now done "the Zope 3 way" as utilities. Please see docs/ToolsAreUtilities.txt for some developer notes.
- CMFCore utils: Marked
minimalpath
andexpandpath
as deprecated. - The CMF now depends on Zope 2.10.2 or higher.
CMF 2.1.0-alpha2 (2006/11/23)
New Features
- WorkflowTool: Added the IConfigurableWorkflowTool interface.
This change includes the new
getDefaultChain
andlistChainOverrides
methods and an improvedsetChainForPortalTypes
method. The import handler now supports theremove
attribute for removing overrides. (http://www.zope.org/Collectors/CMF/457) - CMFCore.CachingPolicyManager: Implemented the old OFS.Cache.CacheManager API. Now objects other than CMF content or CMF templates can have their caching headers set by the caching policy manager with the same fine-grained control. (http://www.zope.org/Collectors/CMF/408)
- testing: Added test layers for setting up ZCML.
- CMFDefault formlib: Added zope.formlib support.
This includes some CMF specific base classes and an
EmailLine
field. - browser views: Added some zope.formlib based forms.
- CMFDefault utils: Added
checkEmailAddress
function. - Added CMFCore.FSRestMethod: ReST equivalent of FSSTXMethod.
- CMFCore.FSSTXMethod: Modernized, added tests, made customization
possible (now renders via ZPT by default, using
main_template
). - Portal: Added
email_charset
property. - CMFDefault utils: Added
makeEmail
function. - CMFDefault.Image and CMFDefault.File: Overridden index_html methods add Cache Policy Manager-awareness and thus bring these implementations in line with CMFCore.FSFile and CMFCore.FSImage (http://www.zope.org/Collectors/CMF/454)
Bug Fixes
- CMFCore.CachingPolicyManager: Prevent firing of caching policies for templates (DTML or ZPT) that are rendered in-line (without a separate request) while rendering the requested content item's view. (http://www.zope.org/Collectors/CMF/456)
- CMFDefault RegistrationTool: Fixed too restrictive email checking.
The new
checkEmailAddress
function is now used. - Fixed test breakage induced by use of Z3 pagetemplates in Zope 2.10+.
- CMFDefault skins: Fixed encoding issues in welcome and reminder emails.
password_email
andregistered_email
now encode their return value correctly, usingemail_charset
and the newmakeEmail
function.
Others
- The CMF now depends on Zope 2.10.1
CMF 2.1.0-alpha (2006/10/09)
New Features
- CMFDefault utils: Added getBrowserCharset function. Returns the charset preferred by the browser. Strings encoded with this charset are decoded correctly by Five.browser.decode.processInputs.
- Content: Added IFactory utilities for all content classes. They are now used by default instead of the old constructor methods.
- FactoryTypeInformation: Added support for Zope3 style factories.
If the
product
property of a type info instance is empty thefactory
property is interpreted as an IFactory name.
Bug Fixes
- CMFCore.ActionInformation: don't use a fixed set of properties for ActionInformation. (http://www.zope.org/Collectors/CMF/232/)
- CMFCore.CatalogTool: Use current executable's proxy roles, if any,
in place of user's roles when computing
allowedRolesAndUsers
for a query. (http://www.zope.org/Collectors/CMF/380)
Others
- skins: Changed encoding of translated portal_status_messages. Now getBrowserCharset is used to play nice with Five forms. Customized setRedirect and getMainGlobals scripts have to be updated.
- FSFile: Added registration for
txt
extension. - Profiles: All profiles are now registered by ZCML.
- ZClasses: Removed unmaintained support for ZClasses.
Marked the
initializeBases*
methods as deprecated. - Content: All content classes are now registered by ZCML. ContentInit is still used to register oldstyle constructors.
- Favorite: Added
handleFavoriteAddedEvent
subscriber. This replaces themanage_afterAdd
hook and some code inaddFavorite
. - CMFCatalogAware: Added
handleObjectEvent
subscriber. This replaces the deprecatedmanage_afterAdd
,manage_afterClone
andmanage_beforeDelete
hooks. - setup handlers: Removed support for CMF 1.5 CMFSetup profiles.
CMF 2.0.x and earlier
For a complete list of changes see HISTORY.txt.