CPS 3.4.0 released!

Last modified: 03/14/2006 10:35 AM
After 1 year and 1/2 of hard work (more than 11000 commits by 32 developers), Nuxeo is pleased to announce, on behalf of the CPS developers community, the release of CPS 3.4.0, the new stable version of CPS, the open source ECM platform.

Source code is available here:


And soon here:


Binary installers for several platforms will also be provided soon.

Please read the following for more information on CPS and CPS 3.4.

What is CPS?

CPS is an Open Source Enterprise Content Management (ECM) platform that provides developers with a rich toolkit to create applications in the fields of: Web Content Management (WCM), Document Management (DM), Collaboration (CSCW), Workflow and Business Process Management (BPM) and corporate portals.

CPS may be compared to proprietary solutions like Documentum by EMC, LiveLink by OpenText, SharePoint by Microsoft.

What's new?

A lot of things have changed since the previous major stable release, CPS 3.2, in september 2004. Here are the most important ones.

User-visible changes

  1. A new default UI, that feature both usability improvement as well as a better-looking default skin. This makes working with CPS a more enjoyable experience for end-users.
  2. Switch from HTML 4.01 Transitional to XHTML 1.0 Strict, with work on accessibility (A-level by default, AA and AAA-level possible at the expense of some features).
  3. AJAXification: use of AJAX techniques for a more responsive and more powerful UI (asynchronous form updates).
  4. CPSSkins, which is a very powerful web-based WYSIWYG theme editor for CMF-based applications, has been integrated. It makes easy for graphic designers or webmasters to modify the look of CPS without writing CSS or template code.
  5. CPSPortlets, a web-based WYSIWYG portlet editor that makes it easy for content administrators to modify the presentation of information on a CPS site.
  6. New applicative products have been added to the CPS default application: CPSBlog (for blogs), CPSWiki (for wikis), CPSOOo (to manage OpenOffice.org documents).
  7. The webmail and shared calendar components have been completely rewritten. They are available as separate packages.
  8. CPSGeo, a GIS product for CPS that allow geolocation of documents in a CPS application. It is available as a separate package.

Architecture changes

  1. We have switched to recent versions of Zope (2.9) and CMF (1.6).
  2. We have switched most new developments to the Zope 3 component architecture, thanks to Five, the bridge between Zope 2 and Zope 3.
  3. We now use of GenericSetup, the new "default", XML-based, configuration tool, instead of CPSInstaller. Using declarative configuration makes it now much easier to manage upgrades between versions
  4. We have switched the unit and functional test harnesses to the Zope 2.9 layer-based test runner. This eases the creation and speed the execution for the 2543 tests included in the CPS source code so far.
  5. We now use CPSUserFolder as a powerful replacement to UserFolder. CPSUserFolder makes it possible to use a user directory managed by CPSDirectory as a source of users in CPS.
  6. DCWorkflow has been extended as CPSWorkflow to provide a document-based workflow engine with dynamic schemas support (inspired by the activity-based workflow model) that can handle any document-based business process. This hybrid model gives all the power and flexibility needed to define dynamic validation / review / delegation states to model any paper process you have in the real world, while keeping workflow modeling simple enough to be easily understood by users.
  7. CPSRemoteController provides a Web Service interface to remotely control CPS portals (both from another CPS portal or from totally different applications) in a language-independent manner through XML-RPC. CPSRemoteController is also very handy for task automation.
  8. CPSRelation provides a tool that manages RDF relations between content objects.
  9. Many, speed optimisations, at both a low-level (including work on ZODB transactions and CPSCore internal optimizations) and high-level (rendering of CPSDocument and CPSPortlets caches) to make it possible to manage applications with hundreds of thousands of documents (soon: millions of documents) and tens of gigabytes of data (soon: terabytes of data).

Packaging changes

CPS is now distributed as several packages.

  • "CPS Platform": all the infrastructure components that are needed to develop ECM applications. The primary audience for CPS Platform is developers.

  • "CPS": a default content management application based on CPS Platform, that features a rich set of default content types, a blog, a wiki and a forum. The primary audience for CPS Platform is people that want to try out CPS, as well as internet or intranet sites administrators with minimal customisation needs.

    CPS is available both as source code packages, and binary installers for several popular platforms.

  • "CPS Legacy": a set of old component which are either deprecated or currently unmaintained. These components are needed to upgrade older versions of CPS. The primary audience for CPS Legacy: internet or intranet sites administrators which need to upgrade old instances of CPS.

More information

An updated document "What's new in CPS 3.4", as well as more information like tutorials and screencasts, will be published on http://cps-project.org/ in the upcoming days.

Prerequisites to installation

Zope 2.9 is mandatory for installation from the source code.

Some third-party Python librairies may also be needed, depending on the components you will want to activate on instanciation.

For more information, check:

http://svn.nuxeo.org/trac/pub/file/CPS3/trunk/INSTALL.txt and http://svn.nuxeo.org/trac/pub/file/CPS3/trunk/README.txt


In any case, DON'T DO THIS ON A PRODUCTION SITE. Make backups first, or run the procedure on a copy.

If you are running a recent version of CPS, go to portal_setup at the root of your CPS (from the ZMI) and see, from the "Upgrades" tab, if some upgrades need to be run.

If you are running an older version (no portal_setup), start by adding a "CPS Setup Tool" (not a "Generic Setup Tool") from the "CPS Tools" ZMI menu item, before running the upgrades.

Upgrades have not been tested from every possible version, and some work, that is planned for CPS 3.4.1, is needed to cover all the major cases.

For more information on upgrades, please join one of the CPS users mailing lists (see below) or wait for further information that will be published on www.cps-project.org.

About CPS

CPS is the most advanced Open Source Enterprise Content Management (ECM) platform.

It is based on the Zope application server, the CMF content management framework, is the result of important CMS, ECM and workflow projects carried out in the public administration and the private sector, and of the collaboration of dozens of open source developers.

For more information:

http://www.cps-project.org/ http://svn.nuxeo.org/

For technical information about this release, see:


Getting involved

Please join the CPS users, developers or translators mailing list on http://lists.nuxeo.com/

Please report issues or requests for enhancements ont the CPS trac at: http://svn.nuxeo.org/

If you'd like to add a translation to your native language, besides the current 11 ones (en, fr, de, it, es, pt_br, es, ro, mg, eu, ml), or to improve an existing one, we welcome your contribution.

The future roadmap for CPS will be discussed on the cps-devel mailing list.


On behalf of the CPS core development team, I'd like to express our gratitude to all the people that have been involved in this process (core and casual developers, testers, documentation authors, translators, etc.), and to the Python / Zope / CMF developers communities that make our work possible.

Special thanks to all the CPS customers, because CPS development is driven by the projects that are actually using it.

This site is powered by CPS, which includes CPSSkins. CPS and its design are Copyright © 2002-2006 Nuxeo SAS.
CPSSkins is Copyright © 2003-2006 Jean-Marc Orliaguet.