[Zope-CMF] GenericSetup: How to use upgradeStep?

2007-08-21 Thread Maurits van Rees
Hi,

I am having problems understanding how the new upgradeStep
functionality of GenericSetup works.  Maybe the most important
question: is there a product that already uses this, so I can look at
its code as an example?


Warning: I am quite lengthy below in describing my (mis)understanding
of upgradeSteps.  Do not continue reading if you are already
sleepy. ;-)

I am testing it in a fresh Plone 3.0 site.  So that makes it CMF-2.1.0
and GenericSetup-1.3.1.


Expectation
---

The way I expect/hope to use upgradeSteps in add-on products is:

- Have one default GS profile for first time installs.

- Have one or more upgradeSteps to go from an old to a new version.

Perhaps a new version of portal_quickinstaller (or a clever
Extensions/install.py of a product) could then apply the default
profile when installing the product and could apply the correct
upgradeSteps when _re_installing.


Example
---

- I release version 1.0 of my testupgrade product.  In
  profiles/default it has this catalog.xml (some lines omitted for
  clarity):

 
 

- Alex installs version 1.0 of testupgrade by applying the GS profile.

- I spot an error in my product: one of the indexes it adds is wrong.
  In profiles/default I fix this:

 
 

- For people like Alex I supply an upgradeStep to fix this in their
  site.  This step consists of a profile in profiles/upgrade_10-15/
  with this catalog.xml:

 
 

- With these fixes I release version 1.5 of testupgrade.

- Alex fixes his catalog by applying the upgradeStep.

- Betty is a first time user and installs version 1.5 by applying the
  install profile.

Is something like this possible with the new upgradeSteps?


Problems


In a zcml file my upgrade step would like this:

  

If I do not supply a handler, on Zope startup I get:

ConfigurationError: ('Missing parameter:', 'handler')

If I do not supply a profile, on Zope startup I get:

ConfigurationError: ('Missing parameter:', 'profile')

I have two problems here:

1. Since this upgradeStep needs a profile I also need to register that
   profile with another zcml snippet.  I had hoped that I would not
   need that profile.  Or rather: I had hoped that the upgradeStep
   snippet would automatically register a profile (maybe by using a
   name attribute).

   In the ZMI there is now a notable difference between base and
   extension profiles.  I had also hoped for such a distinction with
   respect to "upgrade profiles".  As it is now, the upgradeStep
   itself is nicely visible on the Upgrades tab, but it needs a base
   or extension profile as well, which clutters those two lists.

   The current Plone 3.0 already registers four extension profiles
   using its own upgrade profiles (which I think were meant as
   temporary measure before the GS upgradeSteps were in place).  I
   want to avoid that the list of extension profiles gets cluttered
   with upgrade profiles from every add-on product.

   But maybe I am missing the correct meaning of the profile in
   relation to the upgradeStep, as I see a second problem.

2. I am a bit surprised that I need both a handler and a profile.  As
   I understand it, we are supposed to move away from setuphandlers in
   python code as far as possible and instead do everything with
   profiles.  In fact, I have hopes that the upgradeSteps make this
   better possible than in the past.

   As it is, I see that the code of the python handler correctly gets
   called.  The profile is not applied though.  I guess I could put
   code in the handler that actually applies the profile.  But I would
   hope that the upgradeStep would handle that for me.  So: is the
   profile attribute of an upgradeStep meant for something else?


I hope someone can shed some light on my clouded vision of how the
upgradeSteps are supposed to work.  Examples would be great. :)

-- 
Maurits van Rees | http://maurits.vanrees.org/ [NL]
Work | http://zestsoftware.nl/
"Do not worry about your difficulties in computers,
 I can assure you mine are still greater."

___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests


[Zope-CMF] Problem upgrading 2.0 to 2.1

2007-08-21 Thread Doyon, Jean-Francois
Hello,

OK, I've tried upgrading, and seem to have ironed out most kinks, except for 
this last one.

I can't seem to import the GS profile for MailHost, because the getUtility() 
call fails:

2007-08-17 14:04:00 ERROR Zope.SiteErrorLog 
http://:8080/manage_addProduct/ESSPortals/addConfiguredSite
Traceback (innermost last):
  Module ZPublisher.Publish, line 119, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 42, in call_object
  Module Products.ESSPortals.factory, line 46, in addConfiguredSite
  Module Products.GenericSetup.tool, line 313, in runAllImportStepsFromProfile
   - __traceback_info__: profile-Products.ESSPortals:atlas
  Module Products.GenericSetup.tool, line 1000, in _runImportStepsFromContext
  Module Products.GenericSetup.tool, line 966, in _doRunImportStep
   - __traceback_info__: mailhost
  Module Products.CMFCore.exportimport.mailhost, line 30, in importMailHost
  Module zope.component.registry, line 137, in getUtility
ComponentLookupError: (, 
u'')

I don't do anything special with this object.  I'm using the export/import from 
CMFCore ... I just have my own profile and XML file for it (looks like there 
were no changes there).

If I add a CMFDefault site, all goes well, mine, no go.  I've dug around a bit 
to see if there are differences between the Portal objects and such, but 
nothing jumps out at me.

The interfaces tab on the MailHost object does show the IMailHost interface ...

I'm at a loss, anyone have any ideas?

Thanks,

Jean-François Doyon
Data Dissemination Division | Division de la diffusion des données
Data Management and Dissemination Branch | Direction de la gestion et de la 
diffusion des données
Earth Sciences Sector | Secteur des sciences de la Terre
Natural Resources Canada | Ressources naturelles Canada
Ottawa, Canada K1A 0E9
[EMAIL PROTECTED]
Telephone | Téléphone 613-992-4902
Facsimile | Télécopieur 613-947-2410
Teletypewriter | Téléimprimeur 613-996-4397
Government of Canada | Gouvernement du Canada

___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests


[Zope-CMF] CMF Tests: 11 OK

2007-08-21 Thread CMF Tests Summarizer
Summary of messages to the cmf-tests list.
Period Mon Aug 20 12:00:00 2007 UTC to Tue Aug 21 12:00:00 2007 UTC.
There were 11 messages: 11 from CMF Unit Tests.


Tests passed OK
---

Subject: OK : CMF-1.5 Zope-2.7 Python-2.3.6 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:27:54 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006030.html

Subject: OK : CMF-1.5 Zope-2.8 Python-2.3.6 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:29:25 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006031.html

Subject: OK : CMF-1.5 Zope-2.9 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:30:56 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006032.html

Subject: OK : CMF-1.6 Zope-2.8 Python-2.3.6 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:32:27 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006033.html

Subject: OK : CMF-1.6 Zope-2.9 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:33:58 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006034.html

Subject: OK : CMF-2.0 Zope-2.9 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:35:29 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006035.html

Subject: OK : CMF-2.0 Zope-2.10 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:37:00 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006036.html

Subject: OK : CMF-2.1 Zope-2.10 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:38:32 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006037.html

Subject: OK : CMF-2.1 Zope-trunk Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:40:04 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006038.html

Subject: OK : CMF-trunk Zope-2.10 Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:41:35 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006039.html

Subject: OK : CMF-trunk Zope-trunk Python-2.4.4 : Linux
From: CMF Unit Tests
Date: Mon Aug 20 21:43:06 EDT 2007
URL: http://mail.zope.org/pipermail/cmf-tests/2007-August/006040.html

___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests


[Zope-CMF] CMF Collector: Open Issues

2007-08-21 Thread tseaver
The following supporters have open issues assigned to them in this collector
(http://www.zope.org/Collectors/CMF).

Assigned and Open


  tseaver

- "CMF needs View-based TypeInformation",
  [Accepted] http://www.zope.org/Collectors/CMF/437


  yuppie

- "purge_old in runAllImportSteps not working",
  [Accepted] http://www.zope.org/Collectors/CMF/455


Pending / Deferred Issues

- "workflow notify success should be after reindex",
  [Deferred] http://www.zope.org/Collectors/CMF/389


Pending / Deferred Features

- "CMFTopic Does Not Cache",
  [Deferred] http://www.zope.org/Collectors/CMF/295

- "iCal support for CMFCalendar",
  [Pending] http://www.zope.org/Collectors/CMF/487



___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests