Making an issue so we don't forget about this. A lot of doctests currently fail on Python 3, although the code itself is OK, and this makes it easy to overlook real failures. Most of the culprits are print statements not being picked up by 2to3, because the doctests are written with IPython prompts. Other cases tend to be individual, and will need individual fixes (e.g. .write() returns a number of bytes written).
from __future__ import print_function
I think I'm slightly leaning towards option 3, but I'd like other opinions.
I've fixed this in the meantime, using option 3.