[Zope-dev] Re: unregistering components?

Philipp von Weitershausen philipp at weitershausen.de
Wed Nov 28 05:57:15 EST 2007


On 28 Nov 2007, at 11:43 , Chris Withers wrote:
> Philipp von Weitershausen wrote:
>>> So zope.app.component replaces the getSiteManager implementation  
>>> in zope.component? :-(
>> Yes.
>
> It's a shame this couldn't have been implemented in a more component- 
> architecture-oriented way, but I'm guess things get chicken-and-egg- 
> y at this point?

Yeah.

>>> Also, where's the code which, in the local registry, defers to the  
>>> global registry to find more adapters/subscribers/whatever?
>> Look for the __bases__ property and its dynamic setter.
>
> Okay, but where's this code? (ie: what .py should I look at for the  
> local registry implementation)

zope.app.component.site contains the LocalSiteManager class. This is  
the persistent component registry used in Zope 3's standard ISites. It  
inherits from zope.component.persistentregistry.PersistentComponents  
which in turn inherits from zope.component.registry.Components. The  
latter has the dynamic __bases__ property. You'll see that the setter  
really just sets the __bases__ on its internal adapter and utility  
registry. Both of those (sic!) are some sort of subclass of  
zope.interface.adapter.BaseAdapterRegistry which has the handling for  
cascading lookups through its __bases__ property.

:)

>> I think zope3-users is also for the users of the separately usable  
>> components. Well, as it turns out, they're not so separately usable  
>> right now, at least when you're tryinig to easy_install  
>> zope.component or so :(. But at least we're working on that.
>
> I still can't make out if the whole eggs/easy_install thing just  
> sucks and we should build something else for the python community  
> (it's not just zope that's struggled with easy_install ;-) ) or if  
> it's just zope that's had the real problems 'cos of some "bad eggs"...

If eggs had some decent dependency handling. People often say that  
setuptools is reinventing what the Linux distros are doing, but  
poorly. As far as the dependency handling goes, they're right  
(setuptools' dependency handling could be *much* improved). However, I  
don't think eggs are much like Linux distros in any other way.

>> I think there's value in separating development from the rest of  
>> the traffic.
>
> Why?

Because some developers prefer lower traffic lists that focus on  
solely on development.

>> As far as zope at zope.org is concerned, I see a lot of old-school  
>> (e.g. DTML-related) traffic there,
>
> Really? I don't see much activity on that list at all nowadays,  
> although there was quite an interesting thread (and quite relevent  
> to zope3 and zope-dev) that kicked off which involved dtml ;-)

Yeah, saw that :).

>>> PS: I am quite excited that it looks like I may actually be able  
>>> to use bits of zope independently, and this wsgi stuff looks  
>>> pretty cool too :-)
>> Cool! Be sure to let us know about it afterwards. I think we could  
>> use some feedback on projects like this.
>
> Will do, but please be patient with my fumblings in the meantime.
>
> If it helps, as far as components and registries goes, I'm aiming  
> for something like skin-like stacked registries that can be altered  
> ttw...

Sounds wild :)



More information about the Zope-Dev mailing list