[Zope-dev] zope.testing 3.8.6 emits deprecation warnings from itself?

Lennart Regebro regebro at gmail.com
Wed Dec 30 02:58:52 EST 2009


On Tue, Dec 29, 2009 at 23:47, Marius Gedminas <marius at gedmin.as> wrote:
> I don't know enough about the differences between stdlib's doctest.py
> (in its various Python 2.4/2.5/2.6 incarnations) and
> zope.testing.doctest, other than that I've seen diffs, they were
> non-trivial, with bugfixes and new features; I've heard about
> monkey-patching the stdlib's doctest.py (which fills me with dread; when
> exactly is the monkey-patching performed?), and I'd rather not touch the
> issue without either complete understanding or a very large test suite
> (all of the packages that were in the Zope 3 KGS at the very least) run
> on various platforms.

zope.testing runs a lot of doctests. Lot's and lot's. In the Python 3
branch I've moved them over to using stdlibs doctest. There was two
bugs that are fixed in Zopes doctest that is not fixed in Pythons
doctest. I've added monkey-patches on import for them. Obviously they
should also be reported upstream, but new releases won't remove the
bugs in old releases, so the monkey patches need to stay anyway.

The alternative to this is that somebody port zopes doctest.py to
Python 3, so we don't deprecate it but keep it separate, for ever
adding to the frustration and complication in doing testing and in
particular doctesting that persists.

>  * custom doctest exception formatting

What does that formatting actually do?

>  * support for the INTERPRET_FOOTNOTES feature

Then they should use Manuel. I find it highly unlikely that this
feature will make it into stdlib.

> and since zope.testing.doctest still reimplements large bits of doctest,
> I don't know what other bugfixes might be lost too (like the universal
> newline thing that punishes people for daring to release packages from
> Windows machines).

There's no test for that one, so I didn't know about it.
I think the problem with having a sperate doctest.py is evident in the
fact that there has been bugs fixed for *years* but not moved
upstream. The custom doctest was there to support Python 3, and
nothing else. Now it's become it's own creature, and that's very bad.

> Overall, I'm still -1 for deprecating zope.testing.doctest at this point.
> A PendingDeprecationWarning would be more appropriate, IMHO.

That will just leave less time between people getting warned and
before it gets removed. I must say I find PendingDeprecationWarnings
completely and utterly pointless.
-- 
Lennart Regebro: Python, Zope, Plone, Grok
http://regebro.wordpress.com/
+33 661 58 14 64


More information about the Zope-Dev mailing list