[Zope3-dev] Downstream Users making changes.

Tres Seaver tseaver@zope.com
22 Jan 2003 09:11:28 -0500


On Wed, 2003-01-22 at 07:38, Steve Alexander wrote:
> 
> >> If you *do* make it easier to modify "closed"
> >> software, then you *must* make resolving conflicting changes easier than
> >> I foresee us having resources to tackle in the near term.
> > 
> > I think this will be needed anyway. If an end user of Swishdot 
> > customizes a template or script and I, as Swishdot author, also change 
> > that template or script for the next release, then they need to know 
> > that when they install the new version. It would also be nice if we 
> > could provide something to help them resolve the conflicting changes.
> 
> They don't need to mess with Swishdot in order to change a template or a 
> script. They can do that in their own Zope Package / workspace / 
> whatever, and configure things so that their changes override the ones 
> caused by installing Swishdot.

Sure, the CMF's "skin customization" allows that use case now;  the
problem is that they when Chris *does* release a new version of
Swishdot, the site manager who has installed and customzied an earlier
version has no help in evaluating / merging Chris' changes with the
customizations.  Leaving the customized version in place untouched can
mean that the site will not have access to features or bugfixes in the
new release.

For consulting purposes, where we expect the client to customize skins
during a project, for instance, we have adopted a pattern to help cope
with this problem:  each filesystem-based template or Python Script
embeds its CVS repository info into the source;  because the CMF copies
that information when creating the "custom" version, we can track where
the "branch point" was.  Resolving the conflict can still be *extremely*
tough, especially with ZPT, which tends to be "diff-unfriendly".


Tres.
-- 
===============================================================
Tres Seaver                                tseaver@zope.com
Zope Corporation      "Zope Dealers"       http://www.zope.com