On Thu, Dec 31, 2009 at 02:21, Martin Aspeli <optilude+li...@gmail.com> wrote: > Hanno Schlichting wrote: >> On Wed, Dec 30, 2009 at 6:38 PM, Martijn Faassen<faas...@startifact.com> >> wrote: >>> zope.testing.doctestunit emits a deprecation warning. It also defines a >>> function pprint. How does one use pprint without getting a deprecation >>> warning? It seems impossible now, and an equivalent pprint doesn't >>> appear to be in the standard library doctest.. >> >> When I recently converted some tests, I replaced that pprint function >> with the one from the standard library: >> >> from pprint import pprint >> >> There weren't any differences in the output, as far as I could tell. > > Not sure if this is related, but one thing I found which bit me recently > is that prior to Python 2.5, pprint did not sort dict keys in the > output. That means that a test like this: > > >>> pprint(foo) > {'omega': 1, 'alpha': 2} > > will pass on 2.4 and fail on 2.5/2.6; to fix it for 2.5/2.6 you do: > > >>> pprint(foo) > {'alpha': 2, 'omega': 1} > > but now it fails on 2.4. The only way I could find it make it work > reliably was to not rely on dicts at all, but do: > > >>> pprint(sorted(foo.items()) > [('alpha', 2), ('omega', 1)] > > Which works the same on both. I don't know if the zope.doctest pprint > function was meant to fix this, but maybe it did?
That could be it. It seems silly to have a whole module just for that, but we can change the deprecation to just deprecate the BBB imports. -- Lennart Regebro: Python, Zope, Plone, Grok http://regebro.wordpress.com/ +33 661 58 14 64 _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org https://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - https://mail.zope.org/mailman/listinfo/zope-announce https://mail.zope.org/mailman/listinfo/zope )