[Zope-dev] Re: RFC: product initialization cleanup and improvements
yuppie
y.2005- at wcm-solutions.de
Fri Nov 4 06:34:48 EST 2005
Hi!
Some things turned out a bit different than proposed, so I want to
report back:
> 1.) 'action' key:
> -----------------
>
> I'd like to give empty 'action' values a special meaning: The meta_type
> is not visible in the add drop down in the ZMI.
>
> The five:registerClass directive allows to set empty 'action' values.
>
> This would resolve http://www.zope.org/Collectors/Zope/1885 .
>
> Filtering out meta_types with empty 'action' values is a two line change
> in main.dtml. I'd like to make that change also on the 2.8 branch to
> enable that feature for 2.8.5 with Five 1.2.
I wasn't able to finish this because it depends on
http://www.zope.org/Collectors/Zope/1774 . See my comment in
http://www.zope.org/Collectors/Zope/1885 for details.
> 2.) 'interfaces' key:
> ---------------------
>
> Does currently only contain oldstyle interfaces. The code in
> OFS.ObjectManager that uses that key works also with z3 interfaces. I'd
> like to add z3 interfaces to the value of that key. That would e.g.
> allow to set only new style interfaces on catalog index classes.
Done.
> 3.) 'product' key:
> ------------------
>
> AFAICS it isn't used in Zope itself. I'd like to add a note that it
> might be removed in a future version.
That key is not required, but I found two places in Zope where it is
used if it exists: In ProductRegistry for TTW products and in
OFS.Application for refreshing products.
> 4.) related cleanup:
> --------------------
>
> Application.install_product has some backwards compatibility code for
> products that have initialization code outside the 'initialize' method
> of their __init__.py. This is deprecated at least for 5 years. I'd like
> to add explicit deprecation warnings on the 2.8 branch and to remove
> that code for Zope 2.9.
Done. Made sure ZGadflyDA and ZSQLMethods don't use the deprecated code.
Given the fact that 2 Zope core products still used that code and
given the feedback on this list I didn't remove the code in Zope 2.9.
This should be done in Zope 2.10 instead.
Cheers,
Yuppie
More information about the Zope-Dev
mailing list