##// END OF EJS Templates
Backport PR #5458: Add support for PyQt5....
Backport PR #5458: Add support for PyQt5. This PR adds the new `QT_API_PYQT5` to `IPython/external/qt_loaders.py ` and allows to embed the IPython console in Qt5 Applications. In case of PyQt5, the loader returns a union of `PyQt5.QtGui` and `PyQt5.QtWidgets` acting as a Qt4-QtGui compatibility module. One small fix to `InProcessChannel.__init__` was necessary though. For some reason, when constructing `QtInProcessShellChannel`, the `QtCore.QObject.__init__` initializer from `SuperQObject` indirectly calls the `InProcessChannel.__init__` function, which doesn't have a default constructor and thus fails. I assume this has something to do with the metaclass/multiple inheritance approach IPython uses on QObject. Adding a default value for `client` in `InProcessChannel.__init__` solved the problem for me.

File last commit:

r13348:e6afea51
r18784:3b30bb89
Show More
iptest.py
19 lines | 523 B | text/x-python | PythonLexer
Fernando Perez
Added Nose support for IPython doctests and extension modules.
r1334 #!/usr/bin/env python
"""Nose-based test runner.
"""
Thomas Kluyver
Convert print statements to print function calls...
r13348 from __future__ import print_function
Fernando Perez
Added Nose support for IPython doctests and extension modules.
r1334
from nose.core import main
from nose.plugins.builtin import plugins
from nose.plugins.doctests import Doctest
Thomas Kluyver
Use explicit relative imports...
r13347 from . import ipdoctest
from .ipdoctest import IPDocTestRunner
Fernando Perez
Added Nose support for IPython doctests and extension modules.
r1334
if __name__ == '__main__':
Thomas Kluyver
Convert print statements to print function calls...
r13348 print('WARNING: this code is incomplete!')
print()
Fernando Perez
Added Nose support for IPython doctests and extension modules.
r1334
pp = [x() for x in plugins] # activate all builtin plugins first
main(testRunner=IPDocTestRunner(),
plugins=pp+[ipdoctest.IPythonDoctest(),Doctest()])