[Zope3-Users] Re: "So you've just downloaded Zope 3.3...."
Philipp von Weitershausen
philipp at weitershausen.de
Thu Sep 28 20:11:11 EDT 2006
Jeff Shell wrote:
> On 9/28/06, Jim Fulton <jim at zope.com> wrote:
>> Jeff Shell wrote:
>> > ... now what?
>> > I just tried moving some work over to Zope 3.3. Already things are
>> > blowing up.
>> What do you mean by blowing up?
>> We certainly tried to make 3.3 backward compatible.
> One blow-up instance was on something that was marked deprecated (a
> vocabulary that used `zope.app.utility.vocabulary.UtilityVocabulary`
> as its factory).
How? can you provide a traceback? Like Jim said, we tried having 3.3 be
> Strangely, I never saw that deprecation warning, or I
> would have fixed it a long time ago. It looks like deprecated items
> referenced in ZCML wouldn't trigger the warnings in Zope 3.2, whereas
> Python based importing/referencing would.
Hmmm. Weird. Can you reproduce this? If so, please file a bug.
> That said, I still don't really know much about what's new and
Ugh, that's bad. I'm sorry if we've been unclear. Does
> I see a lot of things in the Wiki in proposals, but the
> proposals don't always mirror final implementations, so sometimes it's
> a bit of a guessing game if one even has that to go on. Only a few of
> the proposed ZCML reductions went into play, correct?
I just checked and the "Implementation status" section is correct
regarding Zope 3 ("trunk" refers to 3.3 though).
I admit, though, I coudl've done a better job updating the proposals
after having implemented them. Without moving the blame elsewhere, I
think we should consider a more formal proposal process again, like I
suggested once. Python PEPs and Plone PLIPs seem to work very well.
> It would be nice if there was at least a small document that went
> through deprecated items and covered how to migrate away from them -
> separate from the change log or proposals.
I've tried to emit helpful deprecation warnigns that dont' just say
"this is deprecated" but also say "use XYZ instead". The proposals
should also document this. What is it that you're particularly
> Now, here's the strange one:
> What happened to Tools? `zope.app.component.browser.tools`? I'm not
> even sure what tools were,
We weren't either ;) so we got rid of them.
> but we used them in some places in our code: most of that code being
> done over a year ago against Zope 3.1 in a time crunch. I'm not sure
> why we used those directives/interface types, but it was probably
> from a book or from looking at someone else's code.
> `zope.app.component.browser.tools` was never marked as deprecated as
> far as I can tell, so now I'm looking at a co-worker's ZCML that
> references the `IToolType` interface type in a couple of places, and
> uses the `<browser:tool>` directive in a couple of places. They seem
> to be completely gone now, and probably for good reason. Still, since
> it never seemed to be marked as deprecated, I had no direction for
> moving us away from its use.
Shrug. That's a bug. No removal should happen w/o deprecation. If you
can confirm that anything was removed w/o proper deprecation, please
file a bug.
> All I could find on the `tool` directive in the Wiki was its proposal
> page. From looking at that page, I'm not sure it's something we ever
> needed (at least, not in the form described). I'm pretty sure that at
> least one of the instances where we use it is something my co-worker
> wants to completely re-do anyway. But until he gets back, what do I
> replace those directives with? Are they a localUtility?
Local utilities are much more light weight now. All you need is a
<class> directive (like with any other persistent object). Registration
happnens through the "Registration" tab in ZMI. Tools were a concept
based on local utilities that seemed very much overengineered.
More information about the Zope3-users