Commit Graph

297 Commits

Author SHA1 Message Date
epatters
2b63052424 Update setup.py for setuptools support for ipythonqt script. 2010-09-02 15:56:52 -05:00
Fernando Perez
56ede30647 Add ipythonqt script to main list of user-installed scripts. 2010-09-02 13:40:29 -07:00
epatters
a631f0fc1e Updated setupbase.py to include zmq.pylab package. 2010-08-31 17:21:40 -05:00
epatters
3ef5b1de92 Merge branch 'newkernel' of git://github.com/ellisonbg/ipython into qtfrontend
Conflicts:
	IPython/frontend/qt/console/frontend_widget.py
	IPython/frontend/qt/console/ipython_widget.py
	IPython/zmq/ipkernel.py
2010-08-19 09:33:09 -05:00
Brian Granger
29259fc441 Refactor of prompts and the displayhook.
* Renamed CachedOutput to displayhook.DisplayHook.
* Added methods that DisplayHook.__call__ uses to do its work.
  These methods can now be overridden for the ZMQ kernel.
* Removed all hooks (result_display and generate_output_prompt)
  that the outputcache was using. We need to add these back in
  once we figure out what to do about hooks in general.
2010-08-17 18:38:39 -07:00
epatters
8b42896342 Merge branch 'newkernel' of git://github.com/ellisonbg/ipython into qtfrontend
Conflicts:
	IPython/zmq/pykernel.py
2010-08-17 12:56:45 -05:00
Brian Granger
30627d74a5 Moving and renaming in preparation of subclassing InteractiveShell.
* IPython/scripts/ipython -> IPython/frontend/terminal/scripts
* IPython.core.ipapp -> IPython.frontend.terminal.ipapp
* IPython.core.embed -> IPython.frontend.terminal.embed
* IPython.core.iplib -> IPython.core.interactiveshell
2010-08-12 15:40:30 -07:00
epatters
567d5b5952 Merge branch 'master' of git://github.com/ipython/ipython into qtfrontend and fix conflicts in setupbase.py.
Conflicts:
	setupbase.py
2010-07-29 09:11:36 -05:00
Fernando Perez
2e8acf77e2 Finish cleanup of setup.py and tests after dead code removal.
This completes the cleanup from Brian's previous commits, so that
trunk again installs/tests correctly.
2010-07-27 13:52:54 -07:00
epatters
557abf30aa Updated setupbase.py to reflect new 'frontend.qt' and 'zmq' packages. 2010-07-23 16:48:34 -05:00
Brian Granger
a46f74f371 Adding .gitignore and updating release to remove bzr tag. 2010-05-13 15:34:15 -07:00
Brian Granger
5dae9f5f49 Merging Fernando's trunk (fp-trunk-dev) and Brian's edits (fp-review).
This is a huge merge of months worth of work by Fernando and Brian.

Some highlights:

* The test suite has been ported to use the new APIs.
* The test suite runs and passes on all platforms!!!
* The IPython Sphinx directive has been updated to use the new APIs.
* %history works again.
* New %tb magic for showing last traceback.
* Significant design improvements in the config loaders and applications.
* Zillions of bugs fixed.
* Completely new %pylab implementation that uses the new GUI support.
  This allows pylab to be enabled *at runtime*.
* Many other things.
2010-01-31 15:30:13 -08:00
Brian Granger
9d00d5e3da Minor cleanup in iptest.py and growl.py. 2010-01-31 12:06:20 -08:00
Brian Granger
ba5e56c49f Removed the top-level iptest.py and INSTALLED logic.
Fernando's branch introduced the ability to run the test suite
from a top-level iptest.py script. This allowed IPython to be tested
without installation. The implementation was fragile and we also
decided that we *want* people to install IPython as part of testing
it, so we removed this feature.
2010-01-30 19:43:46 -08:00
Brian Granger
e5b30872ed More work addressing review comments for Fernando's branch.
* :mod:`IPython.testing.globalipapp` now directly creates a
  :class:`~IPython.core.iplib.InteractiveShell` instance by passing it a
  configuration object, rather than creating an IPython application.
* Updated everything in :mod:`IPython.frontend` and :mod:`IPython.gui` to use
  raw :class:`~IPython.core.iplib.InteractiveShell directly rather than
  creating an IPython application.
* Updated the IPython sphinx extension to use raw
  :class:`~IPython.core.iplib.InteractiveShell directly rather than creating
  an IPython application.
* Removed code from :mod:`IPython.extensions.pretty` that called
  :func:`get_ipython` (r1271).
* Addressed comment on (r1284) about holding refs to deferreds in
  :mod:`IPython.kernel.ipclusterapp`.
* Removed :mod:`IPython.kernel` from list of modules tested by nose in
  :mod:`IPython.testing.iptest`. (r1318)
2010-01-29 21:01:10 -08:00
Brian Granger
e24997b0ba Work to address the review comments on Fernando's branch.
* Added comment about Magic(object) (r1224)
* Moved InteractiveTB.set_mode from IPythonApp -> InteractiveShell (r1229)
* Moved pylabtools.py to IPython/lib (r1229)
* Cleaned up comments and copyrights in testing (r1233)
* Added comment about ip.shell._ofind (r1237)
* Removed "Bye." from quitter (r1240).
* Refactored and removed :mod:`IPython.utils.genutils` and
  :mod:`IPython.utils.platutils`. These modules have been replaced by topical
  focused modules in :mod:`IPython.utils`.
* Refactored tests in :mod:`IPython.utils.tests`.
* Moved :func:`IPython.testing.tools.temp_pyfile` to :mod:`IPython.utils.io`.
* Moved :func:`IPython.testing.tools.cmd2argv` to
  :func:`IPython.testing.tools.pycmd2argv` and documented the fact that this
  only works with Python based command line programs.
* Created a new :func:`IPython.utils.path.get_ipython_module_path` to use
  in finding paths to IPython modules.
2010-01-29 16:24:13 -08:00
Fernando Perez
8965698c56 Added diagnostics printout at the end of the test suite.
This will make it easier for us to understand problem reports from users.
2010-01-17 14:36:19 -08:00
Fernando Perez
e1ea030504 Robustness fixes in test suite machinery.
Added a module-level INSTALLED flag, which can be set to false if the test
suite is being run in-place (without ipython having been installed at all).
This is because how we call and import things must be done differently
depending on whether the code is installed or is being run in-place.  The
only ones that can know this reliably are the entry-point scripts, so those
are responsible for setting this flag.

Also made the code that validates ipython in subprocesses report errors
better, by checking stderr for errors before validating stdout output, as
anything on stderr will be likely informative of the real problem.
2010-01-17 13:13:21 -08:00
Fernando Perez
4041a88063 Inform user at install time of minimal python requirements if not met.
Fixes: https://bugs.launchpad.net/ipython/+bug/505090
2010-01-16 16:57:22 -08:00
Fernando Perez
ecff1e9e39 Make the test suite runnable without X11 connections.
This fix makes the test suite work in settings like a screen session that
can import but not initialize GTK.
2010-01-16 14:50:08 -08:00
Fernando Perez
5740081c62 Fix tests to return consistent results regardless of how they are called.
Now, calling:

- 'python iptest.py' from source dir or from src/IPython/testing should give
the same results

- 'python iptest.py IPython.SOMETHING' from either place should also give
the same results.
2010-01-16 14:43:41 -08:00
Fernando Perez
34dd139174 Fixes to make test suite more robust on Fedora.
I fond some spurious warnings on Fedora, extra noise on stdout and other
small problems this commit fixes.

The test suite now runs cleanly on Fedora11 without Twisted available.
2010-01-15 14:41:10 -08:00
Fernando Perez
5756b33e52 Make it possible to run the tests from the source dir without installation.
Also clean up the handling of command-line options for iptest, so that all
options given at the top-level are correctly passed to nose.

Fixes: https://bugs.launchpad.net/ipython/+bug/507079
2010-01-15 02:00:11 -08:00
Fernando Perez
ae70bfc440 Let iptest pass arguments correctly to nose (in-process or in subprocess).
Fixes https://bugs.launchpad.net/ipython/+bug/507079

Also, remove relative imports from the iptest.py module so it can be run as
a script as well under 2.5 or 2.6.
2010-01-15 01:06:34 -08:00
Fernando Perez
1621f0a23f Fix bug where python -c "import IPython; IPython.test()" could fail.
Depending on where one was located when typing it, it could fail.  Made all
necessary paths absolute so this doesn't happen.
2010-01-13 00:32:13 -08:00
Fernando Perez
59117c597e Include 'kernel' in the nose tests as well; it picks up doctests that trial
doesn't.
2010-01-12 23:58:30 -08:00
Fernando Perez
91791416ab Fixes for test suite in win32 when all dependencies (esp. Twisted) are
installed.

Also activated testing.tools to be picked up by the test suite (was
excluded), this gives us a few more tests.

Status:

- On Linux, the full suite passes like before.

- On Win32, now that we have Twisted, we're seeing a few failures, because I
don't have the WinHPC server stuff.  These should be easy for Brian to fix.
There are also two tests where the Skip nose exception isn't recognized by
Twisted, should also be easy.  I'll file tickets for those.
2010-01-12 23:21:21 -08:00
Fernando Perez
56d74fedba Move cleanup to main setup.py, where it belongs.
Distutils now generates .egg-info stuff even without setuptools, so we
should do the cleanup in the main script.
2010-01-12 21:03:16 -08:00
Fernando Perez
e3a6f8da77 Fix test failure when pexpect not available 2010-01-12 17:39:42 -08:00
Fernando Perez
2b7da9a1bd Fix test suite when Twisted not available, cleanups to iptest for clarity. 2010-01-12 17:36:00 -08:00
Fernando Perez
0e94b28cd8 Remove accidentally introduced runtime nose dependencies. 2010-01-12 12:42:23 -08:00
Fernando Perez
f7422d6539 Improve setuptools support.
Many thanks to Gael for the code/idea for the solution, see bug page for
details.

Fixes: https://bugs.launchpad.net/ipython/+bug/504968
2010-01-09 19:31:46 -08:00
Fernando Perez
22cb80d555 Fix config part of the test suite. 2010-01-09 17:55:56 -08:00
Fernando Perez
72cb0a3c73 Massive amount of work to improve the test suite, restores doctests.
After Brian's comments, I realized that our test machinery was NOT in
reality running all the ipython-syntax doctests we have.  This is now fixed.
The test suite isn't completely passing, but this commit is for the
underlying machinery.  I will now work on fixing as many broken tests as I
can.

Fixes https://bugs.launchpad.net/ipython/+bug/505071
2010-01-09 16:30:59 -08:00
Fernando Perez
6d8161fac0 A few small fixes so ipythonx works, and PEP-8 cleanups I found along the way. 2010-01-07 17:39:24 -08:00
Fernando Perez
e68e992d80 Improve test suite robustness by cleaning up stale processes when possible. 2010-01-07 16:47:46 -08:00
Fernando Perez
dabdb5361a Work in multiple places to improve state of the test suite.
With these changes, on my system now all the test sub-suites pass except
for the Twisted one (see https://bugs.launchpad.net/ipython/+bug/504515 for
details on that one).
2010-01-07 16:04:08 -08:00
Fernando Perez
dd4405c646 Progress towards getting the test suite in shape again.
Work all over the place to get more tests to pass.
2010-01-06 01:56:27 -08:00
Fernando Perez
ed2f210ebe Add new testing support machinery with better parametric tests.
Also included are new tools for doctests with ipython syntax.
2009-12-31 19:26:22 -08:00
Fernando Perez
12a323ff6d Merging with upstream trunk 2009-12-30 11:32:39 -08:00
Brian Granger
9cab40c1fe Merging Brian's work on branch: lp:~ipython-dev/ipython/kernel-config
This makes trunk significantly more usable again.
2009-12-30 11:26:16 -08:00
bgranger
18fab0d4a1 Fixing a few small things on Windows.
* No os.environ['USER'].
* get_home_dir() now first looks at %HOMESHARE% to get a UNC shared
  path if it exists.
* Minor fixes for setupbase.py.
2009-11-08 12:09:07 -08:00
Brian Granger
4c83569772 Semi-working refactored ipcluster.
This version uses the NotificationCenter, which I am not sure I like.
But, it is important to see how all of this works.
2009-10-28 18:15:02 -07:00
Brian Granger
c9b9d7550a The ipengine script has been refactored to use the new config system.
It is also now a formal Application: IPython.kernel.ipengineapp
2009-10-21 20:06:22 -07:00
Brian Granger
f0301f402b Work on ipcontroller.
* The IPControllerApp now uses ApplicationWithDir to manage the app_dir.
* The setup.py script and ipcontroller script have been updated to use
  the new IPControllerApp.
* launch_new_instance created and being used.
2009-10-18 09:25:32 -07:00
Brian Granger
d44d9d96fa Merging the config-refactor branch.
This branch did start with the config system refactor, but moved on
from there.  Here are some highlights.

* New config system.
* Traitlets
* Componenets
* Applications
* The main ipython program has been refactored to use these new
  abstractions.
2009-09-28 13:59:23 -07:00
Brian Granger
4ca0ac83cc First failed attempt to get the test suite to run. 2009-09-17 21:29:54 -07:00
Brian Granger
81e0e8805d Removed ipapi compatability layer and updated top-level functions.
The ipapi.py module has been completely deprecated as of this point.
No new code should use it and all existing code that uses it will
migrate away from it.  The launch_new_instance function has
been moved to ipapp and the setup.py scripts have been updated.
2009-09-17 19:59:36 -07:00
Brian Granger
cf5972e4aa Fixed small bug in setup.py.
We have removed the config.userconfig directory.
2009-09-17 15:20:16 -07:00
Brian Granger
7031a8fa95 Merging the inputhook branch. 2009-08-31 15:21:10 -07:00