[Zope-CMF] [dev] CMF 1.5 Roadmap, redux
Tres Seaver
tseaver at zope.com
Mon Mar 1 10:32:18 EST 2004
I am summarizing last week's roadmap discussion here. Please correct
any errors / misunderstandings. If this summary is substantially
correct, I will propse a triaged list by Wednesday, with an expected
release date near the end of March.
========
Overview
========
The CMF list saw a surprirsing amount of fruitful discussion this week,
provoked by Yvo Schubbe's reminder that I owed a roadmap for the next
release of the CMF_. He wrote:
The latest Zope releases look quite good, Zope HEAD seems to become
stable again, Plone 2.0 and CPS 3.0 are in release candidate stage
and even the sun is shining today. But something is missing: CMF 1.5.
The current version, `CMF-1.4.2`_, is a relatively small pair of bugfix
releases following last May's 1.4 release. Yvo ("yuppie") himself has done
lots of great cleanup and consolidation work on the HEAD of CVS; it is
past time that we think about the scope of work remaining to complete
another major release.
This article summarizes my take on the ensuing `roadmap list discussion`_,
with some attempt to prioritize and triage the suggestions which
emerged.
+++++++++
Proposals
+++++++++
------------------------
Move Archetypes into CMF
------------------------
Chris McDonough resurfaced a long-standing suggestion that the
Archetypes_ framework move "down" into the main CMF distribution.
Discussion of this notion accounted for a large majority of the
list traffic this week.
Some of the issues raised were:
- Archetypes is *big*, enough to make for a weigty testing / integration /
documentation burden.
- Archetypes competes with Zope3_ schemas. In general, the sense was that
Zope3 is still a ways out, and that the Archetypes folks are already
planning to move the product toward easy (maybe even seamles) migration
to Zope3.
- Archetypes competes with the CPSSchemas_ product; those who know the two
products better than I note that Archetypes tends to produce "static"
schema definitions (per class), while CPSSchemas are more "dynamic"
(bound to ``portal_type``). One fortunate outcome of the discussion
has been
that the two teams can begin to see ways in which their overlapping
products might merge!
- Archetypes is currently licensed undre the GPL, and must be relicensed to
the ZPL before importing it into cvs.zope.org. The authors have
expressed willingness to relicense in the past, so this should not be a
blocker.
- Archetypes depends on Plone's CMFFormController_ tool. Opinions differed
wildly on whether to migrate that tool down. I don't know enough
about it to judge, yet.
- Archetypes also depends on Plone's PortalTransforms_ tool; consensus
seemed much broader for moving it into CMF (for instance, CPS uses it as
well). Likewise the UID generator tool and the references machinery. I
need to look at all of these more closely: for one thing, we likely have
parallel implementations in client software, and I would prefer to be
consolidating.
--------------------------------------------
Migrate the ``portal_setup`` tool out to CMF
--------------------------------------------
There are a number of efforts to ease the process of exporting
"through-the-web" site configuration (tool settings, for instance); such an
export would make putting those policy choices under version control
easier, as well as easing the process of migrating them between sites.
Alternate solutions include:
- DCWorkflowDump_
- ZSyncer_
-------------------
Land CMFActionIcons
-------------------
As with the ``portal_setup`` tool, the ``portal_actionicons`` tool is a
result
of my long-term project with Boston.com. In this case, the code is already
over the wall, added to the public CVS repository in preparation for
last spring's OSCOM sprint:
http://cvs.zope.org/Products/CMFActionIcons/
At the request of the Plone team, I released CMFActionItems-0.9 in
October.
http://zope.org/Members/tseaver/CMFActionIcons/CMFActionIcons-0.9
-------------------------------
Add Epoz-friendly editing skins
-------------------------------
Epoz_ is a Zope add-on for exploiting the "in-place" editing facility of
recent IE and Mozilla. Allowing content owners to edit their content with
WYSIAG tools seems a worthwhile goal (structured text is less than popular
with non-technical CMs).
Alex Limi pointed out that there are two versions of Epoz, and that the
older (but more stable) version was hard to extend; I replied that I
wasn't planning to do anything complicated with it.
----------------------------------------------
Make "classic" DCWorkflow the default workflow
----------------------------------------------
Yuppie has already `checked this in`_. "Death to DefaultWorkflow!"
--------------------------------
Add OrderSupport to PortalFolder
--------------------------------
OrderSupport_ was added to the OFS package for Zope 2.7, defining a mix-in
class, OrderSupport, used to declare containers which allow specifying the
order of their items explicitly. The proposal is to extend
CMFCore.PortalFolder (and therefore, CMFDefault.SkinnedFolder) to include
this support.
Which brings up the "meta" question: which version(s) of Zope will CMF 1.5
support / require? If we require 2.7, then this is a trivial exercise
(skinning what is already wired into the underlying Folder class). If not,
then we need to backport OrderSupport, at least for older Zopes.
----------------------------------
Support for Enforcing Vocabularies
----------------------------------
The ``portal_metadata`` tool allows the site manager to express a
constraint on
a metadata field's value by defining a "vocabulary", a set of allowed
values. Because when and how to enforce such restrictions is a policy
decision (in some cases, the policy mighter only be enforced at particular
times, e.g. at workflow transitions), the "stock" CMFDefault skins don't
actually ever check the constraint.
The proposal here is to change that default, so that the metadata
editing form *always* enforces the constraint, and to fix an underlying
bug in the tool:
http://zope.org/Collectors/CMF/217
.. _CMF: http://cmf.zope.org
.. _`CMF-1.4.2`: http://cmf.zope.org/download/CMF-1.4.2
.. _`roadmap list discussion`:
http://mail.zope.org/pipermail/zope-cmf/2004-February/thread.html#20259
.. _Archetypes: http://sourceforge.net/projects/archetypes
.. _Zope3: http://dev.zope.org/Zope3
.. _CPSSchemas: http://zope.org/Members/nuxeo/Products/CPSSchemas
.. _CMFFormController:
http://cvs.sourceforge.net/viewcvs.py/collective/CMFFormController/
.. _PortalTransforms: http://plone.org/Members/syt/PortalTransforms/
.. _ZSyncer: http://zsyncer.sourceforge.net/
.. _Epoz: http://zope.org/Members/mjablonski/Epoz
.. `checked this in`_:
http://mail.zope.org/pipermail/cmf-checkins/2004-February/004065.html
.. _OrderSupport: http://cvs.zope.org/Zope/lib/python/OFS/OrderSupport.py
.. _DCWorkflowDump:
http://cvs.sourceforge.net/viewcvs.py/collective/DCWorkflowDump/
--
===============================================================
Tres Seaver tseaver at zope.com
Zope Corporation "Zope Dealers" http://www.zope.com
More information about the Zope-CMF
mailing list