TypeError: catch_config_error() takes exactly 2 arguments (1 given)

I am installing ipython in an virtual environment. After installation i am unable to start it using terminal.it is showing following error

from IPython import start_ipython
  File "/Users/sandeepkumarsharma/envipyhton/lib/python2.7/site-packages/IPython/__init__.py", line 48, in <module>
    from .core.application import Application
  File "/Users/sandeepkumarsharma/envipyhton/lib/python2.7/site-packages/IPython/core/application.py", line 23, in <module>
    from traitlets.config.application import Application, catch_config_error
  File "/Users/sandeepkumarsharma/envipyhton/lib/python2.7/site-packages/traitlets/config/__init__.py", line 6, in <module>
    from .application import *
  File "/Users/sandeepkumarsharma/envipyhton/lib/python2.7/site-packages/traitlets/config/application.py", line 120, in <module>
    class Application(SingletonConfigurable):
  File "/Users/sandeepkumarsharma/envipyhton/lib/python2.7/site-packages/traitlets/config/application.py", line 291, in Application
    def initialize(self, argv=None):
TypeError: catch_config_error() takes exactly 2 arguments (1 given)