skip to navigation
skip to content

unicode-nazi 1.1

Annoying helper module that finds unicode/bytestring comparisions and other problems.

// The Unicode Nazi //

Once enabled the unicode nazi will complain whenever something is not purely unicode or bytestring. It’s annoying as hell and only useful when porting over libraries from Python 2 to Python 3. It has a huge runtime impact on performance and will also complain about most of the stuff in the Python standard library.
  • usage:

    >>> import unicodenazi
    >>> 'foo' == u'foo'
    __main__:1: UnicodeWarning: Implicit conversion of str to unicode
    True
    
  • how to disable it again:

    >>> unicodenazi.disable()
    
  • and here is how to enable:

    >>> unicodenazi.enable()
    
  • if you want to enable it only for a given block:

    >>> unicodenazi.disable()
    >>> with unicodenazi.blockwise(enabled=True):
    ...  assert 'foo' == u'foo'
    ...
    __main__:2: UnicodeWarning: Implicit conversion of str to unicode
    

    The reverse works too of course.

The module can be used from a command line:

$ python -municodenazi your_script.py [script_args..]
 
File Type Py Version Uploaded on Size
unicode-nazi-1.1.tar.gz (md5) Source 2011-01-23 2KB