From b364c8aad5d4330faed4e3262906d53bb0c62ebb Mon Sep 17 00:00:00 2001 From: MinRK Date: Wed, 20 Oct 2010 02:54:12 -0700 Subject: [PATCH 01/13] added zmq controller/engine entry points --- setup.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index f6c7e99fc..fe18c0bd9 100755 --- a/setup.py +++ b/setup.py @@ -215,9 +215,8 @@ if 'setuptools' in sys.modules: 'ipython = IPython.frontend.terminal.ipapp:launch_new_instance', 'ipython-qtconsole = IPython.frontend.qt.console.ipythonqt:main', 'pycolor = IPython.utils.PyColorize:main', - # 'ipcontroller = IPython.kernel.ipcontrollerapp:launch_new_instance', - # 'ipengine = IPython.kernel.ipengineapp:launch_new_instance', - # 'ipcluster = IPython.kernel.ipclusterapp:launch_new_instance', + 'ipcontrollerz = IPython.zmq.parallel.controller:main', + 'ipenginez = IPython.zmq.parallel.engine:main', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] From 796c94b23043531ac7e23b4de909e0e5c6f115e1 Mon Sep 17 00:00:00 2001 From: MinRK Date: Thu, 21 Oct 2010 11:10:23 -0700 Subject: [PATCH 02/13] added simple cluster entry point --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index fe18c0bd9..2d83b9a4a 100755 --- a/setup.py +++ b/setup.py @@ -217,6 +217,7 @@ if 'setuptools' in sys.modules: 'pycolor = IPython.utils.PyColorize:main', 'ipcontrollerz = IPython.zmq.parallel.controller:main', 'ipenginez = IPython.zmq.parallel.engine:main', + 'ipclusterz = IPython.zmq.parallel.ipcluster:main', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] From 6331f97b9e98f562d8fddab7edd302ee5bbbf373 Mon Sep 17 00:00:00 2001 From: MinRK Date: Wed, 27 Oct 2010 11:42:39 -0700 Subject: [PATCH 03/13] added zmq.parallel to setupbase --- setupbase.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setupbase.py b/setupbase.py index 51be1cdb6..0cd86a744 100644 --- a/setupbase.py +++ b/setupbase.py @@ -132,6 +132,7 @@ def find_packages(): add_package(packages, 'testing.plugin', tests=False) add_package(packages, 'utils', tests=True) add_package(packages, 'zmq') + add_package(packages, 'zmq.parallel') add_package(packages, 'zmq.pylab') return packages From 2705688219424a0241d885fc326c001d692cdfd4 Mon Sep 17 00:00:00 2001 From: MinRK Date: Thu, 4 Nov 2010 11:42:55 -0700 Subject: [PATCH 04/13] ignore docs/build,_build --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 9f2290212..6221076cf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ build ./dist docs/dist -docs/build/* +docs/build +docs/_build docs/source/api/generated docs/gh-pages *.py[co] From 343d69750ca0ea153602b779243b929c344ac8d2 Mon Sep 17 00:00:00 2001 From: MinRK Date: Fri, 4 Feb 2011 16:57:12 -0800 Subject: [PATCH 05/13] Refactor newparallel to use Config system This is working, but incomplete. --- setup.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 2d83b9a4a..53f2144f7 100755 --- a/setup.py +++ b/setup.py @@ -215,8 +215,9 @@ if 'setuptools' in sys.modules: 'ipython = IPython.frontend.terminal.ipapp:launch_new_instance', 'ipython-qtconsole = IPython.frontend.qt.console.ipythonqt:main', 'pycolor = IPython.utils.PyColorize:main', - 'ipcontrollerz = IPython.zmq.parallel.controller:main', - 'ipenginez = IPython.zmq.parallel.engine:main', + 'ipcontrollerz = IPython.zmq.parallel.ipcontrollerapp:launch_new_instance', + 'ipenginez = IPython.zmq.parallel.ipengineapp:launch_new_instance', + 'iploggerz = IPython.zmq.parallel.iploggerapp:launch_new_instance', 'ipclusterz = IPython.zmq.parallel.ipcluster:main', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' From 9afdcad9e94cb7a8c0011f2f4b1502d41e66153d Mon Sep 17 00:00:00 2001 From: MinRK Date: Sat, 5 Feb 2011 23:10:04 -0800 Subject: [PATCH 06/13] adapt kernel's ipcluster and Launchers to newparallel --- setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 53f2144f7..2450384ed 100755 --- a/setup.py +++ b/setup.py @@ -218,12 +218,13 @@ if 'setuptools' in sys.modules: 'ipcontrollerz = IPython.zmq.parallel.ipcontrollerapp:launch_new_instance', 'ipenginez = IPython.zmq.parallel.ipengineapp:launch_new_instance', 'iploggerz = IPython.zmq.parallel.iploggerapp:launch_new_instance', - 'ipclusterz = IPython.zmq.parallel.ipcluster:main', + 'ipclusterz = IPython.zmq.parallel.ipclusterapp:launch_new_instance', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] } setup_args['extras_require'] = dict( + zmq = 'pyzmq>=2.0.10', doc='Sphinx>=0.3', test='nose>=0.10.1', security='pyOpenSSL>=0.6' From 6082ce8aaf9049015ea100c5814f5eb45f7dec96 Mon Sep 17 00:00:00 2001 From: MinRK Date: Thu, 24 Feb 2011 18:13:51 -0800 Subject: [PATCH 07/13] add scripts for non-setuptools install of zmq.parallel --- setupbase.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/setupbase.py b/setupbase.py index 0cd86a744..c05e6e07a 100644 --- a/setupbase.py +++ b/setupbase.py @@ -261,11 +261,12 @@ def find_scripts(): """ Find IPython's scripts. """ - # kernel_scripts = pjoin('IPython','kernel','scripts') + zmq_scripts = pjoin('IPython','zmq','parallel','scripts') main_scripts = pjoin('IPython','scripts') - scripts = [# pjoin(kernel_scripts, 'ipengine'), - # pjoin(kernel_scripts, 'ipcontroller'), - # pjoin(kernel_scripts, 'ipcluster'), + scripts = [pjoin(zmq_scripts, 'ipenginez'), + pjoin(zmq_scripts, 'ipcontrollerz'), + pjoin(zmq_scripts, 'ipclusterz'), + pjoin(zmq_scripts, 'iploggerz'), pjoin(main_scripts, 'ipython'), pjoin(main_scripts, 'ipython-qtconsole'), pjoin(main_scripts, 'pycolor'), @@ -299,7 +300,8 @@ def check_for_dependencies(): from setupext.setupext import ( print_line, print_raw, print_status, check_for_sphinx, check_for_pygments, - check_for_nose, check_for_pexpect + check_for_nose, check_for_pexpect, + check_for_pyzmq ) print_line() print_raw("BUILDING IPYTHON") @@ -315,6 +317,7 @@ def check_for_dependencies(): check_for_pygments() check_for_nose() check_for_pexpect() + check_for_pyzmq() def record_commit_info(pkg_dir, build_cmd=build_py): From 5dfb26377ff59242aba065f92efce542c197e417 Mon Sep 17 00:00:00 2001 From: MinRK Date: Sun, 27 Feb 2011 21:06:02 -0800 Subject: [PATCH 08/13] add zmq checking in iptest --- IPython/testing/iptest.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/IPython/testing/iptest.py b/IPython/testing/iptest.py index ecbb64b75..6fa421155 100644 --- a/IPython/testing/iptest.py +++ b/IPython/testing/iptest.py @@ -82,7 +82,7 @@ warnings.filterwarnings('ignore', 'wxPython/wxWidgets release number mismatch', # Logic for skipping doctests #----------------------------------------------------------------------------- -def test_for(mod): +def test_for(mod, min_version=None): """Test to see if mod is importable.""" try: __import__(mod) @@ -91,7 +91,10 @@ def test_for(mod): # importable. return False else: - return True + if min_version: + return sys.modules[mod].__version__ >= min_version + else: + return True # Global dict where we can store information on what we have and what we don't # have available at test run time @@ -101,6 +104,7 @@ have['curses'] = test_for('_curses') have['wx'] = test_for('wx') have['wx.aui'] = test_for('wx.aui') have['pexpect'] = test_for('pexpect') +have['zmq'] = test_for('zmq', '2.0.10') #----------------------------------------------------------------------------- # Functions and classes @@ -179,6 +183,9 @@ def make_exclude(): exclusions.extend([ipjoin('scripts', 'irunner'), ipjoin('lib', 'irunner')]) + if not have['zmq']: + exclusions.append(ipjoin('zmq')) + # This is needed for the reg-exp to match on win32 in the ipdoctest plugin. if sys.platform == 'win32': exclusions = [s.replace('\\','\\\\') for s in exclusions] From 2b4ab756abb96c70b186a9329cb552303313b47d Mon Sep 17 00:00:00 2001 From: MinRK Date: Thu, 31 Mar 2011 16:27:32 -0700 Subject: [PATCH 09/13] move IPython.zmq.parallel to IPython.parallel --- setup.py | 8 ++++---- setupbase.py | 13 +++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/setup.py b/setup.py index 2450384ed..13ec6aa08 100755 --- a/setup.py +++ b/setup.py @@ -215,10 +215,10 @@ if 'setuptools' in sys.modules: 'ipython = IPython.frontend.terminal.ipapp:launch_new_instance', 'ipython-qtconsole = IPython.frontend.qt.console.ipythonqt:main', 'pycolor = IPython.utils.PyColorize:main', - 'ipcontrollerz = IPython.zmq.parallel.ipcontrollerapp:launch_new_instance', - 'ipenginez = IPython.zmq.parallel.ipengineapp:launch_new_instance', - 'iploggerz = IPython.zmq.parallel.iploggerapp:launch_new_instance', - 'ipclusterz = IPython.zmq.parallel.ipclusterapp:launch_new_instance', + 'ipcontrollerz = IPython.parallel.ipcontrollerapp:launch_new_instance', + 'ipenginez = IPython.parallel.ipengineapp:launch_new_instance', + 'iploggerz = IPython.parallel.iploggerapp:launch_new_instance', + 'ipclusterz = IPython.parallel.ipclusterapp:launch_new_instance', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] diff --git a/setupbase.py b/setupbase.py index c05e6e07a..8a2289f1d 100644 --- a/setupbase.py +++ b/setupbase.py @@ -132,8 +132,8 @@ def find_packages(): add_package(packages, 'testing.plugin', tests=False) add_package(packages, 'utils', tests=True) add_package(packages, 'zmq') - add_package(packages, 'zmq.parallel') add_package(packages, 'zmq.pylab') + add_package(packages, 'parallel') return packages #--------------------------------------------------------------------------- @@ -261,12 +261,13 @@ def find_scripts(): """ Find IPython's scripts. """ - zmq_scripts = pjoin('IPython','zmq','parallel','scripts') + parallel_scripts = pjoin('IPython','parallel','scripts') main_scripts = pjoin('IPython','scripts') - scripts = [pjoin(zmq_scripts, 'ipenginez'), - pjoin(zmq_scripts, 'ipcontrollerz'), - pjoin(zmq_scripts, 'ipclusterz'), - pjoin(zmq_scripts, 'iploggerz'), + scripts = [ + pjoin(parallel_scripts, 'ipenginez'), + pjoin(parallel_scripts, 'ipcontrollerz'), + pjoin(parallel_scripts, 'ipclusterz'), + pjoin(parallel_scripts, 'iploggerz'), pjoin(main_scripts, 'ipython'), pjoin(main_scripts, 'ipython-qtconsole'), pjoin(main_scripts, 'pycolor'), From 8c38900f2bed079627c62ec917dfb324e55cf5d6 Mon Sep 17 00:00:00 2001 From: MinRK Date: Sun, 3 Apr 2011 15:04:43 -0700 Subject: [PATCH 10/13] add missing external.ssh to setupbase.py --- setupbase.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setupbase.py b/setupbase.py index 8a2289f1d..f039830b0 100644 --- a/setupbase.py +++ b/setupbase.py @@ -119,6 +119,7 @@ def find_packages(): add_package(packages, 'external.pexpect') add_package(packages, 'external.pyparsing') add_package(packages, 'external.simplegeneric') + add_package(packages, 'external.ssh') add_package(packages, 'external.validate') add_package(packages, 'kernel') add_package(packages, 'frontend') From 587b10631a9a2f9542c79b7388d8f79847195cae Mon Sep 17 00:00:00 2001 From: MinRK Date: Wed, 6 Apr 2011 14:54:33 -0700 Subject: [PATCH 11/13] rebase IPython.parallel after removal of IPython.kernel This commit removes all '*z' suffixes from scripts and docs, as there is no longer conflict with IPython.kernel. --- IPython/testing/iptest.py | 1 + setup.py | 10 +++++----- setupbase.py | 10 +++++----- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/IPython/testing/iptest.py b/IPython/testing/iptest.py index 6fa421155..9d005711a 100644 --- a/IPython/testing/iptest.py +++ b/IPython/testing/iptest.py @@ -185,6 +185,7 @@ def make_exclude(): if not have['zmq']: exclusions.append(ipjoin('zmq')) + exclusions.append(ipjoin('parallel')) # This is needed for the reg-exp to match on win32 in the ipdoctest plugin. if sys.platform == 'win32': diff --git a/setup.py b/setup.py index 13ec6aa08..c928ab827 100755 --- a/setup.py +++ b/setup.py @@ -215,16 +215,16 @@ if 'setuptools' in sys.modules: 'ipython = IPython.frontend.terminal.ipapp:launch_new_instance', 'ipython-qtconsole = IPython.frontend.qt.console.ipythonqt:main', 'pycolor = IPython.utils.PyColorize:main', - 'ipcontrollerz = IPython.parallel.ipcontrollerapp:launch_new_instance', - 'ipenginez = IPython.parallel.ipengineapp:launch_new_instance', - 'iploggerz = IPython.parallel.iploggerapp:launch_new_instance', - 'ipclusterz = IPython.parallel.ipclusterapp:launch_new_instance', + 'ipcontroller = IPython.parallel.ipcontrollerapp:launch_new_instance', + 'ipengine = IPython.parallel.ipengineapp:launch_new_instance', + 'iplogger = IPython.parallel.iploggerapp:launch_new_instance', + 'ipcluster = IPython.parallel.ipclusterapp:launch_new_instance', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] } setup_args['extras_require'] = dict( - zmq = 'pyzmq>=2.0.10', + zmq = 'pyzmq>=2.0.10.1', doc='Sphinx>=0.3', test='nose>=0.10.1', security='pyOpenSSL>=0.6' diff --git a/setupbase.py b/setupbase.py index f039830b0..683a3a65b 100644 --- a/setupbase.py +++ b/setupbase.py @@ -127,6 +127,7 @@ def find_packages(): add_package(packages, 'frontend.qt.console', tests=True) add_package(packages, 'frontend.terminal', tests=True) add_package(packages, 'lib', tests=True) + add_package(packages, 'parallel', tests=True) add_package(packages, 'quarantine', tests=True) add_package(packages, 'scripts') add_package(packages, 'testing', tests=True) @@ -134,7 +135,6 @@ def find_packages(): add_package(packages, 'utils', tests=True) add_package(packages, 'zmq') add_package(packages, 'zmq.pylab') - add_package(packages, 'parallel') return packages #--------------------------------------------------------------------------- @@ -265,10 +265,10 @@ def find_scripts(): parallel_scripts = pjoin('IPython','parallel','scripts') main_scripts = pjoin('IPython','scripts') scripts = [ - pjoin(parallel_scripts, 'ipenginez'), - pjoin(parallel_scripts, 'ipcontrollerz'), - pjoin(parallel_scripts, 'ipclusterz'), - pjoin(parallel_scripts, 'iploggerz'), + pjoin(parallel_scripts, 'ipengine'), + pjoin(parallel_scripts, 'ipcontroller'), + pjoin(parallel_scripts, 'ipcluster'), + pjoin(parallel_scripts, 'iplogger'), pjoin(main_scripts, 'ipython'), pjoin(main_scripts, 'ipython-qtconsole'), pjoin(main_scripts, 'pycolor'), From b84c3f0cd6f40aabae6981d92fdf2a1806058ed8 Mon Sep 17 00:00:00 2001 From: MinRK Date: Wed, 6 Apr 2011 21:34:12 -0700 Subject: [PATCH 12/13] organize IPython.parallel into subpackages --- IPython/testing/iptest.py | 5 ++++- setup.py | 10 +++++----- setupbase.py | 3 ++- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/IPython/testing/iptest.py b/IPython/testing/iptest.py index 9d005711a..9b702140b 100644 --- a/IPython/testing/iptest.py +++ b/IPython/testing/iptest.py @@ -282,7 +282,10 @@ def make_runners(): # Packages to be tested via nose, that only depend on the stdlib nose_pkg_names = ['config', 'core', 'extensions', 'frontend', 'lib', 'scripts', 'testing', 'utils' ] - + + if have['zmq']: + nose_pkg_names.append('parallel') + # For debugging this code, only load quick stuff #nose_pkg_names = ['core', 'extensions'] # dbg diff --git a/setup.py b/setup.py index c928ab827..ace1149b5 100755 --- a/setup.py +++ b/setup.py @@ -215,19 +215,19 @@ if 'setuptools' in sys.modules: 'ipython = IPython.frontend.terminal.ipapp:launch_new_instance', 'ipython-qtconsole = IPython.frontend.qt.console.ipythonqt:main', 'pycolor = IPython.utils.PyColorize:main', - 'ipcontroller = IPython.parallel.ipcontrollerapp:launch_new_instance', - 'ipengine = IPython.parallel.ipengineapp:launch_new_instance', - 'iplogger = IPython.parallel.iploggerapp:launch_new_instance', - 'ipcluster = IPython.parallel.ipclusterapp:launch_new_instance', + 'ipcontroller = IPython.parallel.apps.ipcontrollerapp:launch_new_instance', + 'ipengine = IPython.parallel.apps.ipengineapp:launch_new_instance', + 'iplogger = IPython.parallel.apps.iploggerapp:launch_new_instance', + 'ipcluster = IPython.parallel.apps.ipclusterapp:launch_new_instance', 'iptest = IPython.testing.iptest:main', 'irunner = IPython.lib.irunner:main' ] } setup_args['extras_require'] = dict( + parallel = 'pyzmq>=2.1.4', zmq = 'pyzmq>=2.0.10.1', doc='Sphinx>=0.3', test='nose>=0.10.1', - security='pyOpenSSL>=0.6' ) else: # If we are running without setuptools, call this function which will diff --git a/setupbase.py b/setupbase.py index 683a3a65b..6ebdfc098 100644 --- a/setupbase.py +++ b/setupbase.py @@ -127,7 +127,8 @@ def find_packages(): add_package(packages, 'frontend.qt.console', tests=True) add_package(packages, 'frontend.terminal', tests=True) add_package(packages, 'lib', tests=True) - add_package(packages, 'parallel', tests=True) + add_package(packages, 'parallel', tests=True, scripts=True, + others=['apps','engine','client','controller']) add_package(packages, 'quarantine', tests=True) add_package(packages, 'scripts') add_package(packages, 'testing', tests=True) From ca5b871975b846aaea2197ebbab3f72497a81c74 Mon Sep 17 00:00:00 2001 From: MinRK Date: Thu, 7 Apr 2011 17:50:07 -0700 Subject: [PATCH 13/13] add pymongo to iptest exclusions --- IPython/testing/iptest.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/IPython/testing/iptest.py b/IPython/testing/iptest.py index 9b702140b..56255a3c7 100644 --- a/IPython/testing/iptest.py +++ b/IPython/testing/iptest.py @@ -105,6 +105,7 @@ have['wx'] = test_for('wx') have['wx.aui'] = test_for('wx.aui') have['pexpect'] = test_for('pexpect') have['zmq'] = test_for('zmq', '2.0.10') +have['pymongo'] = test_for('pymongo') #----------------------------------------------------------------------------- # Functions and classes @@ -186,6 +187,9 @@ def make_exclude(): if not have['zmq']: exclusions.append(ipjoin('zmq')) exclusions.append(ipjoin('parallel')) + + if not have['pymongo']: + exclusions.append(ipjoin('parallel', 'controller', 'mongodb')) # This is needed for the reg-exp to match on win32 in the ipdoctest plugin. if sys.platform == 'win32':