*******************************************
** CPSCore V3.26.0 [R1 build 2005/05/16-13:33 by anahide]
** SVN URL: https://svn.nuxeo.org/pub/CPSCore/trunk Revision: 21594
Requires:
~~~~~~~~~
- CPSCompat > 0.2.0
- CPSWorkflow > 0.4.2
New features:
~~~~~~~~~~~~~
- Add the possibility to enabled / disabled a subscriber.
- Add the possibility to control the order in which events are distributed to
  subscribers.
Bug fixes:
~~~~~~~~~~
- fix #600 for ProxyTool: session ids generated without apparent reason
- fix: ViewZip may return content with invalid mime type
- fix: don't reindex an object twice while reindexing all the indexes
and the security
- fix : IndexationManager wasn't reindexing cut and pasted objects

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Added utils.resetRequestLanguageSelection for unit tests.
- tests for #607 : Deleting an event suscriber in ZMI is inefficient
- reindexObjectSecurity() patch moved to CPSCompat

*******************************************
** CPSCore V3.24.2 [R1 build 2005/04/15-07:52 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- #594: Information leaks between tree caches.
- #598: Bad indexation of workspaces and sections roots.
- Made LanguageViewer and reindexObjectSecurity compatible with
  Zope 2.7.6's brain.getObject.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- proxy.proxyChanged now always reindexes.

*******************************************
** CPSCore V3.24.1 [R1 build 2005/04/13-17:49 by fguillaume]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- #591: Fixed interactions between renames and indexation manager that
  provoked spurious indexing of deleted objects
- #251: Incorrect tree upgrade in some cases.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- #571: Use standard ordered folder support.

*******************************************
** CPSCore V3.24.0 [R1 build 2005/04/13-08:32 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- 
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- #555 : Use standardized return value for invokeFactory and constructContent

*******************************************
** CPSCore V3.23.0 [R1 build 2005/04/11-08:41 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Indexation optimization done using beforeCommitHook.


*******************************************
** CPSCore V3.22.0 [R1 build 2005/04/08-16:11 by ben]

Requires:
~~~~~~~~~
- TranslationService > 0.7.0
- CPSCompat >= 0.1.0
New features:
~~~~~~~~~~~~~
- Added (optional) l10n support to TreesTool getList() method
- Added intermediate object viewZip to proxybase to access zipped content
  stored in a file object has document attribute, path is
  http://.../proxy/viewZip/attachedFile/file.zip/path/to/file/in/zip
- Indexation optimization: modified objects are reindexed only once
  at the end of a transaction.
Bug fixes:
~~~~~~~~~~
- In resetPassword method used more generic CMF method acl_users._doChangeUser
  instead of member.setSecurityProfile. This has the effect that resetPassword
  now works with LDAPUserGroupsFolder too.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Made the product rely on CPSUtil factorized methods
- CPS < 3.3 backward compatibility for TreesTool.
- ProxyBase and ProxyTool use translation_service instead of Localizer
- Moved CPSCore.utils.manageCPSLanguage into CPSDefault.utils
- Factorized code from CPSCore.utils to the method CPSUtil.id.generateId.
- Don't index repository objects anymore
- Use CPSCompat for Zope/CMF forward-compatibility monkey-patching.
- Removed deprecated _isinstance, now use normal python isinstance.
- new proxybase method isDefaultLanguage used by catalog index
- Before transaction commit subscribers on ZODB.Transaction
- Moved some code from CPSMembershipTool to CPSDefault.MembershipTool. This code
  was too high-level for CPSCore.

*******************************************
** CPSCore V3.21.2 [R1 build 2005/03/07-15:56 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- #466: Ensured that EventService delivers notifications robustly.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.21.1 [R1 build 2005/02/09-16:10 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Added support for user password resetting.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.21.0 [R1 build 2005/01/28-14:59 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Improved TreesTool with much better speed and memory behavior.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Use CMFCore.permissions instead of CMFCore.CMFCorePermissions
- LOG patches at a lower level.

*******************************************
** CPSCore V3.20.0 [R1 build 2005/01/20-11:27 by ben]

Requires:
~~~~~~~~~
- WARNING: renaming API proxy.Languages -> proxy.getProxyLanguages
- CPSWorkflow
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- #451: Make getProxyLanguages (formerly known as Languages) acquisition-safe
- fix malformed action URI on portal registration
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- More unit tests.
- Workflows moved to CPSWorkflow. Still keeping the compatiblity for a while
- Added BTreeFolder2 based proxy types for folder and folderish document
- Use new CPSWorkflow naming

*******************************************
** CPSCore V3.19.0 [R1 build 2004/12/13-08:21 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- merging ben-i18n-branch:
  - new PatchCatalogTool: IndexableObjectWrapper and catalog_object rewrite
  - refactoring ProxyTool.getBestRevision()
  - new ProxyBase intermediate objects: LanguageViewer and LanguageSwitcher
  - new ProxyBase methods: getL10nTitles, getL10nDescriptions
  - see doc/i18n-changes-from-CPSCore-3_18_0.txt for more info
- merging ja-stack-workflows:
 - refactoring CPSWorflow
   -> CPSWorkflowTransitions
   -> CPSWorkflowStates
   -> CPSWorkflowExpression
 - CPSWorkflowStacks + interfaces
 - CPSWorkflowStackDefinition + interfaces
 - CPSWorkflowTool (API for stack workflows)
 - CPSWorkflowTransitions (more transitions flags for stack workflows)
 - CPSWorkflowStates (extends DCWorkflow states with behaviors)
 - Lots more tests !
 - see doc/StackWorkflows
 - see DAF products for a full integration.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- WorkflowException from CMFCore.WorkflowCore is available from restricted code
- moving constants like switchLanguage or downloadFile into utils and make
  them available from restricted code
- DateTimeError from DateTime.DateTime available from restricted code
- Synced utils.makeId() with CPSDefault computeId.py.

*******************************************
** CPSCore V3.18.0 [R1 build 2004/10/21-15:43 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Local role blocking works for 'group:role:Anonymous': '-'.
Bug fixes:
~~~~~~~~~~
- Fixed local group roles deletion by MembershipTool.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Refactored utils and moved stuff to PatchCatalogTool.py.

*******************************************
** CPSCore V3.17.0 [R1 build 2004/10/13-08:14 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- patched CMF's CatalogTool.searchResults to fix the bug 
  that prevents a user without ViewInactivePortalContent
  permission from being able to search by effective date
  (http://collector.zope.org/CMF/120)
- deleteLocalGroupRoles(). Fix bug. role argument wasn't taken into consideration.
- fix: NotAProxy.getRevision() return 'en' instead of 0
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Cleanup of details.
- In FileDownloader added ".exe" as a problematic file suffix too.
- deleteLocalRoles() supports a new argument: member_role. 
  If specified *only* member_role will be removed from the member_id local roles. 
- getLanguage for non proxy return the portal default language (if Localizer present)
  instead of hard coded 'en' locale

*******************************************
** CPSCore V3.16.8 [R1 build 2004/09/21-11:24 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Return files with problematic file suffix as ZIP files (this is only triggered
  for MSIE browsers and ".sxw", ".sxc" suffixes).
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.16.7 [R1 build 2004/09/15-15:12 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Made it possible for MSIE to download OpenOffice.org files in restricted
  access areas.
Bug fixes:
~~~~~~~~~~
- Fixed the naming problem that was causing in the log file the alert 
  "Init Ambiguous name for method != 'manage_main'".
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Using PNG files instead of GIF files.
- optimization: docid generation should be faster


*******************************************
** CPSCore V3.16.6 [R1 build 2004/09/06-07:50 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- fix: indexing broken object raise AttributeError on relative_path()
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.16.5 [R1 build 2004/08/23-05:48 by fermigier]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- When copying/pasting an object, workflow history was not pasted
  on the new object.
- Use the object when checking allowed behaviours, not its rpath. (Besides, the
  code goes through CMFCore/WorkflowTool, which doesn't understand rpaths.)
- Fix relative path calculation for LanguageSwitchers.
- Use more semantical HTML markup
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.16.4 [R1 build 2004/08/12-14:09 by regebro]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Modify utils.py in order to cope with Zope 2.7.1+ handling of None objects and TextIndexNG2's direct access to the meta_type of a catalog aware object.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Add the Language method (mainly for indexing) computing another language
  revision.
- new wrapper method relative_path and relative_path_depth for indexing
  and catalog metadata purpose

*******************************************
** CPSCore V3.16.3 [R1 build 2004/07/30-15:02 by dwyart]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.16.2 [R1 build 2004/07/30-09:53 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- OrderedFolderSupportPatch and the way the patch is done was a problem with the latest version of Zope.2.7 and the refresh facility
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.16.1 [R1 build 2004/07/28-09:32 by anguenot]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- fix P1 #368: Republishing a folderishdocument does not update subdocuments.
- fix P2 #288: Incorrect signature for CPSMembershipTool.searchMembers.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Cleanups in section_content_wf.
- In WebDAV PUT, try to use the edit() method if the document recognizes
  _has_generic_edit_method.
- CPSBase : _checkId from PortalFolder redefined for being able to defined .cps_xxx at the root of the portal too. (actually .whatever stuffs).

*******************************************
** CPSCore V3.16.0 [R1 build 2004/07/07-17:06 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Added missing coding in python file

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- New API proxy.delArchivedRevisions(revs) to delete some archived revisions.
- proxy.getArchivedInfos also returns is_archived info.

*******************************************
** CPSCore V3.15.3 [R1 build 2004/07/07-12:04 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Adding missing import in utils
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.15.2 [R1 build 2004/07/07-09:12 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- In FileDownloader, using the edit() if the considered document is a
  CPSDocument. We must method since this method does important things such as
  setting dirty flags on modified fields.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Small details changed in zmi/repo_repoInfo.dtml.

*******************************************
** CPSCore V3.15.1 [R1 build 2004/06/30-09:39 by anahide]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Fixed case where an id with '..' in it couldn't be used by the workflow.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.15.0 [R1 build 2004/06/28-13:17 by anahide]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- In ProxyTool management tab Proxies can now do a search on docid.
- The repository has a better purge granularity in the ZMI.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- pxtool.getArchivedInfosForDocid() cannot be called directly by user code
  anymore, instead call proxy.getArchivedInfos()
- You can use several initial transition create in a workflow (one by state)

*******************************************
** CPSCore V3.14.1 [R1 build 2004/06/24-09:55 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- In CPSMembershipTool, the fact that the 'homeless' attribute of a member is
  taken into account through a direct query to the members directory (since the
  last release) made the creation of users'home folders bug, so it is now taken,
  as it was before, through the member passed to the method isHomeless().
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.14.0 [R1 build 2004/06/14-09:02 by ben]

Requires:
~~~~~~~~~
- The index localUsersWithRoles (type KeywordIndex) would be added by
  CPSDefault's cpsupdate if not done manually.
New features:
~~~~~~~~~~~~~
- You can delete local roles for given member ids at the bottom of the
  Configuration tab in portal_membership. Use with care, remember the Undo tab
  ;-)
Bug fixes:
~~~~~~~~~~
- Now the 'homeless' attribute of a member is taken into account through a
  direct query to the members directory.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- add a new method to IndexableObjectWrapper: localUsersWithRoles, 
  which returns users having a role on the object _but_ without any merge.
- add a new index/method container_path to IndexableObjectWrapper,
  this enable searching for children
- deleting an account will not delete local roles assigned to this user 
  in the datafs, for now this is too costly and not done by default,
  a zmi management screen to prune invalid local roles is planned.
- More complete makeId and use it instead of redefining one.

*******************************************
** CPSCore V3.13.0 [R1 build 2004/05/27-15:19 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Added a property in ProxyTool so that the portal default language is used
  prior to the proxy default language if the latter doesn't have the current
  language in its revisions; commented and redesigned around.
Bug fixes:
~~~~~~~~~~
- Event notification is now done after all the transition scripts are executed
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.12.1 [R1 build 2004/05/26-15:05 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Use traversal to access lastest revision in a given language. This uses a
  virtual proxy; you still need to change the language using Localizer if you
  want to edit/checkout/submit the document in a given language.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.12.0 [R1 build 2004/05/18-16:00 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- #119: IndexableObjectWrapper add the proxy id to SearchableText
  to enable full text search on proxy id
Bug fixes:
~~~~~~~~~~
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.11.0 [R1 build 2004/05/14-16:10 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- new patch to make IndexableObjectWrapper works this way:
  proxy try to get the repository document attributes,
  document in the repository hide some attributes to save some space.
  this enable a normal usage of the catalog to find proxy
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Raise an error when creating a revision if the given language is already used.
- When creating a revision, a source language can be given to copy content from
  it.
- patching DublinCore expires time to enable use of DateIndex
- patching TopicIndex clear method to keep filterset

*******************************************
** CPSCore V3.10.1 [R1 build 2004/05/05-15:37 by madarche]

Requires:
~~~~~~~~~
- update your custom tree tool info_method script 
  the method should handle a doc parameter
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Implement recursive deletion of local roles, especially when deleting a
  member (Closes #319: Roles locally assigned not deleted with the user
  account). Needs feedback.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- in MembershipTools/deleteMembers adding default arg check_permission
- TreesTool pass doc object to the info_method

*******************************************
** CPSCore V3.10.0 [R1 build 2004/04/29-11:09 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Patching the RegistrationTool to help not creating user accounts which would
  have the same homeFolders as already existing user accounts, which is a
  security concern.
- RegistrationTool is now a CPS subclass where allowed id pattern is a property
  you can easily change.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- optimizing search by adding a prefix for proxy in getProxiesFromObjectId

*******************************************
** CPSCore V3.9.0 [R1 build 2004/04/22-15:46 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Adding a new getLanguageRevisions() method on the StateChangeInfo workflow
  objects from DCWorkflow through patching.
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.8.3 [R1 build 2004/04/09-15:54 by madarche]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Admin can choose to create a calendar or not during user home folder creation
Bug fixes:
~~~~~~~~~~
- getHomeFolderId() does lower case the id it computes

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Better variable names for event notification : 'kw' -> 'kwargs'

*******************************************
** CPSCore V3.8.2 [R1 build 2004/04/01-15:19 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- member area is created for homeless user.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.8.1 [R1 build 2004/03/26-09:58 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- getHomeFolderId truncate home path to 20 chars
  making people with long uid homeless
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.8.0 [R1 build 2004/03/25-11:35 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Now the member area id can possibly be different than the member id and can
  be obtained through the function getHomeFolderId.
- getHomeFolder check if member have property homeless and 
  return no home if true
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- allow skins to access mx.Tidy


*******************************************
** CPSCore V3.7.0 [R1 build 2004/03/08-13:55 by ben]
** CPS 3.0 RELEASE **

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Added methods to delete member and its member area.

*******************************************
** CPSCore V3.6.0 [R1 build 2004/02/19-15:53 by ben]

Requires:
~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Proxies now parse two kinds of special URLs:
  - mydoc/downloadFile/attrname/mydocname.pdf to download a file
    This makes it possible to have URLs ending with the file name
  - mydoc/archivedRevision/n/... to access archived revisions
    An archived revision is a non-persistent proxy child of the active
    proxy. It doesn't have any workflow state.
Bug fixes:
~~~~~~~~~~
- Make sure the home folder is never acquired.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Centralized declaration of roles allowed to manage local roles

*******************************************
** CPSCore V3.5.1 [R1 build 2004/02/11-14:25 by ben]

Requires:
~~~~~~~~~
- Call portal_membership.createMemberArea() in the logged_in script to
  create the member area if needed.
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Creating calendar during member area creation needs Manager privileges.
- Make getCPSCandidateLocalRoles always return a list.
- MemberArea creation is now CMF 1.5 compatible, and not done automatically
  during wrapUser.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.5.0 [R1 build 2004/02/07-23:19 by fermigier]

ZODB Requires:
~~~~~~~~~~~~~~
- You need to remove the OrderedFolderSupportPatch Product as its
  functionnality is now done inside CPSCore.
New features:
~~~~~~~~~~~~~
- getContent now has an optional rev parameter to access another
  revision than the default.
- Archived revisions are viewable by anyone that has permission
  "View archived revisions" on a proxy.
Bug fixes:
~~~~~~~~~~
- Security synthesis could give too much permissions to some revisions
  in complex multilingual settings.
- Correctly deal with user folder's special features (groups) when computing
  access rights in portal_trees.
- Fixed CMF bug by not swallowing ConflictError in wrapUser.
- Correctly index the security of a user's home folder at creation.
- Tightened security of the repository.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Move files related to permissions around.
- Cleanup the API for role-related utility functions in utils.
- Removed unused variable.
- CPSCore now implements OrderedFolderSupportPatch by itself.
- Added addLanguageToProxy and delLanguageFromProxy method to proxies to
  be able to add/remove languages to existing proxies.


*******************************************
** CPSCore V3.4.0 [R1 build 2004-01/06-15:12 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
-

Bug fixes:
~~~~~~~~~~
-

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Refactoring : split mergedLocalRoles / mergedLocalRolesWithPath
- 'getAllowedContentTypes' to gather allowed portal types by the workflow
  (obsoletes allowed_content_types from a portal type).
-
*******************************************
** CPSCore V3.3.1 [R1 build 2003/12/23-11:03 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Fix random id collision problem in manage_addSubscriber.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Protect CPSBaseDocument's setTitle by "Modify portal content" and not
  PortalFolder's "Manage properties".

*******************************************
** CPSCore V3.3.0 [R1 build 2003/12/10-17:22 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Remove dependency on FlexibleTypeInformation by using a standardized
  API _constructInstance() to create a new instance of a TypeInformation.
- zLOG INFO is now allowed in restricted code

*******************************************
** CPSCore V3.2.3 [R1 build 2003/11/27-22:36 by fermigier]

Bug fixes:
~~~~~~~~~~
- Fix dictionary sharing bug.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Remove import of ElementsTool.

*******************************************
** CPSCore V3.2.2 [R1 build 2003/11/17-14:46 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- getCPSCandidateLocal roles now works correctly when Anonymous.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.2.1 [R1 build 2003/11/06-11:52 by guillaum]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
- Allow 'from cgi import escape' from restricted code.

Bug fixes:
~~~~~~~~~~
- Fix portal_trees refresh on security changes.
- Fix a Zope problem, where ConflictErrors are swallowed by
  manage_beforeDelete.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-

*******************************************
** CPSCore V3.2.0 [R1 build 2003-10/31-17:35 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Fix CMF security problem on searchMembers.
- Fixed a bug where event notification at creation was done too early, before
  the workflow insertion (thus no review_state was available).
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- README updated
- TreesTool: minor spelling mistake that has been hanging around for too
  long...
- Better ProxyTool Management tab to debug and fix the proxies.
- New methods to query the proxy tool about archived revisions of a
  docid and to revert a proxy to older revisions.
- getCPSCustomCSS method within the ProxyFolder class for the custom CSS
  feature
- Added portal_type to the info returned by the Trees Tool.
- Removing the restriction on folderish objects in the Trees Tool. It can
  now cache info about non-folderish ones.

*******************************************
** CPSCore V3.1.1 [R1 build 2003-10/18-10:27 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-

New features:
~~~~~~~~~~~~~
-

Bug fixes:
~~~~~~~~~~
- P2 #202 Join broken, cannot register any longer.

New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Cosmetic cleanup.
- Small changes to README.
*******************************************
** CPSCore V3.1.0 [R1 build 2003-10/03-15:17 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- Workflow unknown stuff like checkout/checkin cf fg
Bug fixes:
~~~~~~~~~~
-
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
-
*******************************************
** CPSCore V3.0.4 [R1 build 2003-09/22-16:05 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- Correctly reindex the language after setting it on a newly created object.
- Bug fix on the local roles mannagement (CPSMemberShipTool.py) deleteLocalGroupsRoles
 was missing an argument "role". 
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- The group support API has been generalized to accomodate multiple group
  support implementations. mergedLocalRoles() should now be imported from
  Products.CMFCore.utils and _getAllowedRolesAndUsers() and
  _allowedRolesAndUsers() should now be imported from Products.CPSCore.utils.
*******************************************
** CPSCore V3.0.3 [R1 build 2003-09/15-15:05 by ben]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- P1 #131 Local roles management wasn't working for non manager roles.
- P1 #156 Anonymous can view private document via portal_repository.
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- add CPS Proxy Folderish Document by default in TreeTool
*******************************************
** CPSCore V3.0.2 [R1 build 2003-09/09-16:01 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
-
Bug fixes:
~~~~~~~~~~
- P2 #71: basebox_menu should display authorized workspaces
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- sf code cleaning
- ed code cleaning debuging
*******************************************
** CPSCore V3.0.1 [R1 build 2003-08/18-08:39 by anguenot]

ZODB Requires:
~~~~~~~~~~~~~~
-
New features:
~~~~~~~~~~~~~
- 
Bug fixes:
~~~~~~~~~~
- P3 #75: remove undo in portal undo (Patch on UndoTool)
New internal features:
~~~~~~~~~~~~~~~~~~~~~~
- Code re-indent sf
- Action isproxytype become cps_proxytype property
- Adding within CPSMembershipTool the method getCPSCandidateLocalRoles
  returning the local roles you're able to assign according to the context
  and your rights.

*******************************************
** CPSCore V3.0.0 [R6 build 2003-08/07-16:00 by ben]

- first RC

*******************************************
** CPSCore V3.0.0 [R1 build 2003-04/28-17:59 by ben]

- first dev package
