------------------------
- DynamicType: Modified 'icon' method.
The specified icon might be registered for a ZTK layer that is not available
in the ZMI. If the icon can't be found, an empty string is returned.
- exportimport.tests.test_mailhost: Accomodate 'smtp_queue' and
'smtp_queue_directory' exports (newly added in GenericSetup).
- tools: Converted all tools into local utilities.
The registration is not done here, see CMFDefault_ as an example of a
registration via GenericSetup.
- MemberDataTool: Changed property modes to 'w' and added 'fullname' property.
- setup handlers: Improved content type registry handler.
The 'insert-before' and 'insert-after' directives are now supported.
- Optimize `SkinnableObjectManager.__getattr__` to short circuit view (``) and
traverser (`+`) lookup in addition to `_` and `aq_`.
- Avoid a shallow dependency on `Products.ZReST`.
- Fixed types tool test to only test creation for type infos.
- utils: Fixed '_OldCacheHeaders' and '_FSCacheHeaders' methods.
DateTimeErrors caused by invalid HTTP headers were not caught.
- setup handlers: Added export/import support for member data tool settings.
- MemberDataTool: Fixed tool initialization.
The default boolean and date property values were not set correctly.
- MemberDataTool: Modified 'setProperties' method.
It now can be used by user managers as well.
- MembershipTool: Added 'isMemberAccessAllowed' method.
If you don't have the 'Manage users' permission for the membership tool, you
shouldn't have write access to other members.
- MemberDataTool: Removed obsolete MemberData factory lookup.
This feature was added in CMF 2.2, but now the MemberAdapter should be
overridden instead.
- MemberDataTool: Split up MemberData class.
The old MemberData API is now provided by the new MemberAdapter. The
persistent MemberData objects are just used for storing member data.
- interfaces: Added 'IMember' interface.
- permissions: Marked 'setDefaultRoles' as deprecated.
- DirectoryView: Added 'bobobase_modification_time' method to FSObject.
The "Contents" tab in the ZMI now shows useful 'Last Modified' values.
- DirectoryView: Changed debug mode behavior.
No additional subdirs are registered in debug mode. If you add new subdirs,
you have to restart your instance.
(https://bugs.launchpad.net/zope-cmf/+bug/271027)
- DirectoryView: Improved debug mode speed on NTFS partitions.
The much faster non-Windows implementation is now used on Windows as well if
non-FAT32 time stamps are detected. In rare cases that heuristic approach
might fail to detected NTFS partitions.
- DirectoryView: Modernized debug mode lookup.
Now getConfiguration().debug_mode is used instead of Globals.DevelopmentMode.
- Fix content exportimport when Title or Description are unicode (merge from
2.2 branch).
- tests base: Tightened security for anonymous test user.
- Load permissions.zcml from Products.Five in the test to fix tests
with Zope 2.12.
- notifyWorkflowCreated only to IWorkflowAware, possibly following adaption on
IObjectAddedEvent.
- Adapterize workflow storage lookups.
- utils: Added FakeExecutableObject.
It can be used to set proxy roles in trusted code.
- tests base: Removed obsolete test utils.
- testing: Removed broken run function.
Unit test modules are no longer directly executable.
- CookieCrumbler: Removed redirect support.
The Unauthorized handling and redirects are now part of CMFDefault.
- Added a permissions.zcml file defining our own permissions. This was
formerly done in Zope 2's Products.Five.
- Removed zope.app.testing dependency.
- Import BeforeTraverseEvent from new location if available.
- Skinnable and MembershipTool: Removed support for missing REQUEST argument.
'changeSkin', 'setupCurrentSkin' and 'credentialsChanged' will no longer
try to acquire the request if it is not passed in explicitly.
- Tools and PortalFolder: Removed support for deprecated marker attributes.
'_isDirectoryView', '_isPortalRoot', '_isTypeInformation' and '_isAWorkflow'
are no longer supported.
- utils: Removed deprecated functions.
'getToolByInterfaceName', 'initializeBasesPhase1', 'initializeBasesPhase2',
'expandpath' and 'minimalpath' are no longer available.
- DirectoryView: Removed support for deprecated old API.
- Require at least Zope 2.13.12.
.. _CMFDefault : https://github.com/zopefoundation/Products.CMFDefault/blob/master/Products/CMFDefault/profiles/default/componentregistry.xml