I see your answer, and it's valid I'd also like to add a little bit more.
- The issue had occurred because you're using python 2.7 and the most recent version of ipdb has packages that require python 3+.
Instead of specifying a version you could do the following
python2 -m pip install ipdb
Most times you can do this and your version will be recognized and the apropriate packages will be installed (Ie, what's compatible).
Though this isn't always the case it works more often than not.
pip install ipdb==0.10.2
Is also acceptable as you're specifying the version number of the package its self. I will however point out that in this case you can use 0.10.3 with python 2.7; it's installed and works fine for me. There were packages related to ipdb that required higher versions of python but had checks put in place to install other versions which were compatible with both python 2.7. and the latest version of ipdb.
update:
Even the official documentation says it's supported. Maybe you're missing something that wasn't pulled? check the requirements to verify everything was installed right.
It's likely when you installed it the first time (when it originally failed) the required packages that were also brought in were for the wrong version.
In which case you'd need to remove them as well as it would be trying to used the cached versions of them instead of pulling the appropriate ones. Or at least that's a possibility.