Hi, This diff updates py-pexpect to the latest release. Tested on amd64. Add python3 flavor.
Comments ? OK ? -- Alexandr Shadchin Index: Makefile =================================================================== RCS file: /cvs/ports/devel/py-pexpect/Makefile,v retrieving revision 1.18 diff -u -p -r1.18 Makefile --- Makefile 2 Apr 2015 14:21:15 -0000 1.18 +++ Makefile 4 Jan 2016 16:00:05 -0000 @@ -2,30 +2,52 @@ COMMENT= pure Python Expect-like module -MODPY_EGG_VERSION= 2.4 +MODPY_EGG_VERSION= 4.0.1 DISTNAME= pexpect-${MODPY_EGG_VERSION} PKGNAME= py-${DISTNAME} CATEGORIES= devel HOMEPAGE= http://pexpect.sourceforge.net/ -# Python +# ISC PERMIT_PACKAGE_CDROM= Yes -MODPY_PI = Yes +MODPY_PI = Yes MODULES= lang/python -EXAMPLESDIR= ${PREFIX}/share/examples/py-pexpect -DOCDIR= ${PREFIX}/share/doc/py-pexpect +RUN_DEPENDS = devel/py-ptyprocess${MODPY_FLAVOR} +BUILD_DEPENDS = ${RUN_DEPENDS} \ + textproc/py-sphinx +TEST_DEPENDS = ${RUN_DEPENDS} \ + devel/py-test${MODPY_FLAVOR} \ + shells/bash + +FLAVORS = python3 +FLAVOR ?= + +MODPY_ADJ_FILES = tests/fakessh/ssh + +EXAMPLESDIR= ${PREFIX}/share/examples/${MODPY_PY_PREFIX}pexpect +DOCDIR= ${PREFIX}/share/doc/${MODPY_PY_PREFIX}pexpect + +pre-build: + ${SUBST_CMD} ${WRKSRC}/pexpect/replwrap.py + ${SUBST_CMD} ${WRKSRC}/tests/test_ctrl_chars.py + ${SUBST_CMD} ${WRKSRC}/tests/test_performance.py + ${SUBST_CMD} ${WRKSRC}/tests/test_replwrap.py + ${SUBST_CMD} ${WRKSRC}/tests/test_run.py -NO_TEST= Yes +post-build: + cd ${WRKSRC}/doc && env PYTHONPATH=${WRKSRC} make html post-install: ${INSTALL_DATA_DIR} ${EXAMPLESDIR} - ${INSTALL_DATA} ${WRKSRC}/{ANSI,FSM,screen}.py ${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/examples/* ${EXAMPLESDIR} ${INSTALL_DATA_DIR} ${DOCDIR} - ${INSTALL_DATA} ${WRKSRC}/doc/* ${DOCDIR} + cd ${WRKSRC}/doc/_build/html && pax -rw * ${DOCDIR} + +do-test: + cd ${WRKSRC} && ${MODPY_BIN} -m pytest .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/devel/py-pexpect/distinfo,v retrieving revision 1.7 diff -u -p -r1.7 distinfo --- distinfo 8 Oct 2013 05:09:49 -0000 1.7 +++ distinfo 4 Jan 2016 16:00:05 -0000 @@ -1,2 +1,2 @@ -SHA256 (pexpect-2.4.tar.gz) = Q8eI9Z3PS+1nf9CxaJF4fb90fiEP/ttukBVvu71NO3s= -SIZE (pexpect-2.4.tar.gz) = 113251 +SHA256 (pexpect-4.0.1.tar.gz) = IyeV68qvLhIDltu6o6Ep7aUXV+6q4ZEVWPTvjuQU/Gw= +SIZE (pexpect-4.0.1.tar.gz) = 143657 Index: patches/patch-doc_conf_py =================================================================== RCS file: patches/patch-doc_conf_py diff -N patches/patch-doc_conf_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-doc_conf_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- doc/conf.py.orig Wed Dec 30 15:08:22 2015 ++++ doc/conf.py Wed Dec 30 15:08:30 2015 +@@ -25,7 +25,7 @@ sys.path.insert(0, os.path.abspath('sphinxext')) + + # Add any Sphinx extension module names here, as strings. They can be extensions + # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +-extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', ++extensions = ['sphinx.ext.autodoc', + 'sphinx.ext.viewcode', 'github', # for easy GitHub links + ] + Index: patches/patch-pexpect_replwrap_py =================================================================== RCS file: patches/patch-pexpect_replwrap_py diff -N patches/patch-pexpect_replwrap_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-pexpect_replwrap_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- pexpect/replwrap.py.orig Wed Dec 30 11:46:48 2015 ++++ pexpect/replwrap.py Wed Dec 30 11:52:00 2015 +@@ -100,7 +100,7 @@ class REPLWrapper(object): + + command) + return u''.join(res + [self.child.before]) + +-def python(command="python"): ++def python(command="${MODPY_BIN}"): + """Start a Python shell and return a :class:`REPLWrapper` object.""" + return REPLWrapper(command, u">>> ", u"import sys; sys.ps1={0!r}; sys.ps2={1!r}") + Index: patches/patch-tests_test_ctrl_chars_py =================================================================== RCS file: patches/patch-tests_test_ctrl_chars_py diff -N patches/patch-tests_test_ctrl_chars_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_test_ctrl_chars_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,47 @@ +$OpenBSD$ +--- tests/test_ctrl_chars.py.orig Wed Dec 30 00:54:46 2015 ++++ tests/test_ctrl_chars.py Wed Dec 30 00:55:19 2015 +@@ -40,7 +40,7 @@ class TestCtrlChars(PexpectTestCase.PexpectTestCase): + def test_control_chars(self): + '''This tests that we can send all 256 8-bit characters to a child + process.''' +- child = pexpect.spawn('python getch.py', echo=False, timeout=5) ++ child = pexpect.spawn('${MODPY_BIN} getch.py', echo=False, timeout=5) + child.expect('READY') + for i in range(1, 256): + child.send(byte(i)) +@@ -54,7 +54,7 @@ class TestCtrlChars(PexpectTestCase.PexpectTestCase): + assert child.exitstatus == 0 + + def test_sendintr (self): +- child = pexpect.spawn('python getch.py', echo=False, timeout=5) ++ child = pexpect.spawn('${MODPY_BIN} getch.py', echo=False, timeout=5) + child.expect('READY') + child.sendintr() + child.expect(str(ord(ptyprocess._INTR)) + '<STOP>') +@@ -66,7 +66,7 @@ class TestCtrlChars(PexpectTestCase.PexpectTestCase): + assert child.exitstatus == 0 + + def test_sendeof(self): +- child = pexpect.spawn('python getch.py', echo=False, timeout=5) ++ child = pexpect.spawn('${MODPY_BIN} getch.py', echo=False, timeout=5) + child.expect('READY') + child.sendeof() + child.expect(str(ord(ptyprocess._EOF)) + '<STOP>') +@@ -80,14 +80,14 @@ class TestCtrlChars(PexpectTestCase.PexpectTestCase): + def test_bad_sendcontrol_chars (self): + '''This tests that sendcontrol will return 0 for an unknown char. ''' + +- child = pexpect.spawn('python getch.py', echo=False, timeout=5) ++ child = pexpect.spawn('${MODPY_BIN} getch.py', echo=False, timeout=5) + child.expect('READY') + assert 0 == child.sendcontrol('1') + + def test_sendcontrol(self): + '''This tests that we can send all special control codes by name. + ''' +- child = pexpect.spawn('python getch.py', echo=False, timeout=5) ++ child = pexpect.spawn('${MODPY_BIN} getch.py', echo=False, timeout=5) + child.expect('READY') + for ctrl in 'abcdefghijklmnopqrstuvwxyz': + assert child.sendcontrol(ctrl) == 1 Index: patches/patch-tests_test_maxcanon_py =================================================================== RCS file: patches/patch-tests_test_maxcanon_py diff -N patches/patch-tests_test_maxcanon_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_test_maxcanon_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,13 @@ +$OpenBSD$ +https://github.com/pexpect/pexpect/issues/283 + +--- tests/test_maxcanon.py.orig Thu Dec 31 22:44:43 2015 ++++ tests/test_maxcanon.py Thu Dec 31 22:45:00 2015 +@@ -97,6 +97,7 @@ class TestCaseCanon(PexpectTestCase.PexpectTestCase): + assert not child.isalive() + assert child.exitstatus == 0 + ++ @pytest.mark.xfail() + @pytest.mark.skipif( + sys.platform.lower().startswith('freebsd'), + reason='os.write to BLOCK indefinitely on FreeBSD in this case' Index: patches/patch-tests_test_performance_py =================================================================== RCS file: patches/patch-tests_test_performance_py diff -N patches/patch-tests_test_performance_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_test_performance_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,48 @@ +$OpenBSD$ +--- tests/test_performance.py.orig Wed Dec 30 00:45:19 2015 ++++ tests/test_performance.py Wed Dec 30 00:46:18 2015 +@@ -44,7 +44,7 @@ class PerformanceTestCase (PexpectTestCase.PexpectTest + return 'for n in range(1, %d+1): print(n)' % n + + def plain_range(self, n): +- e = pexpect.spawn('python', timeout=100) ++ e = pexpect.spawn('${MODPY_BIN}', timeout=100) + self.assertEqual(e.expect(b'>>>'), 0) + e.sendline(self._iter_n(n)) + self.assertEqual(e.expect(br'\.{3}'), 0) +@@ -52,7 +52,7 @@ class PerformanceTestCase (PexpectTestCase.PexpectTest + self.assertEqual(e.expect([b'inquisition', '%d' % n]), 1) + + def window_range(self, n): +- e = pexpect.spawn('python', timeout=100) ++ e = pexpect.spawn('${MODPY_BIN}', timeout=100) + self.assertEqual(e.expect(b'>>>'), 0) + e.sendline(self._iter_n(n)) + self.assertEqual(e.expect(r'\.{3}'), 0) +@@ -60,7 +60,7 @@ class PerformanceTestCase (PexpectTestCase.PexpectTest + self.assertEqual(e.expect([b'inquisition', '%d' % n], searchwindowsize=20), 1) + + def exact_range(self, n): +- e = pexpect.spawn('python', timeout=100) ++ e = pexpect.spawn('${MODPY_BIN}', timeout=100) + self.assertEqual(e.expect_exact([b'>>>']), 0) + e.sendline(self._iter_n(n)) + self.assertEqual(e.expect_exact([b'...']), 0) +@@ -68,7 +68,7 @@ class PerformanceTestCase (PexpectTestCase.PexpectTest + self.assertEqual(e.expect_exact([b'inquisition', '%d' % n],timeout=520), 1) + + def ewin_range(self, n): +- e = pexpect.spawn('python', timeout=100) ++ e = pexpect.spawn('${MODPY_BIN}', timeout=100) + self.assertEqual(e.expect_exact([b'>>>']), 0) + e.sendline(self._iter_n(n)) + self.assertEqual(e.expect_exact([b'...']), 0) +@@ -76,7 +76,7 @@ class PerformanceTestCase (PexpectTestCase.PexpectTest + self.assertEqual(e.expect_exact([b'inquisition', '%d' % n], searchwindowsize=20), 1) + + def faster_range(self, n): +- e = pexpect.spawn('python', timeout=100) ++ e = pexpect.spawn('${MODPY_BIN}', timeout=100) + self.assertEqual(e.expect(b'>>>'), 0) + e.sendline(('list(range(1, %d+1))' % n).encode('ascii')) + self.assertEqual(e.expect([b'inquisition', '%d' % n]), 1) Index: patches/patch-tests_test_replwrap_py =================================================================== RCS file: patches/patch-tests_test_replwrap_py diff -N patches/patch-tests_test_replwrap_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_test_replwrap_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- tests/test_replwrap.py.orig Wed Dec 30 00:44:47 2015 ++++ tests/test_replwrap.py Wed Dec 30 00:45:06 2015 +@@ -92,7 +92,7 @@ class REPLWrapTestCase(unittest.TestCase): + if platform.python_implementation() == 'PyPy': + raise unittest.SkipTest(skip_pypy) + +- child = pexpect.spawn('python', echo=False, timeout=5, encoding='utf-8') ++ child = pexpect.spawn('${MODPY_BIN}', echo=False, timeout=5, encoding='utf-8') + # prompt_change=None should mean no prompt change + py = replwrap.REPLWrapper(child, u">>> ", prompt_change=None, + continuation_prompt=u"... ") Index: patches/patch-tests_test_run_py =================================================================== RCS file: patches/patch-tests_test_run_py diff -N patches/patch-tests_test_run_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-tests_test_run_py 4 Jan 2016 16:00:05 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- tests/test_run.py.orig Wed Dec 30 00:53:46 2015 ++++ tests/test_run.py Wed Dec 30 00:54:33 2015 +@@ -69,7 +69,7 @@ class RunFuncTestCase(PexpectTestCase.PexpectTestCase) + super(RunFuncTestCase, self).tearDown() + + def test_run_exit(self): +- (data, exitstatus) = self.runfunc('python exit1.py', withexitstatus=1) ++ (data, exitstatus) = self.runfunc('${MODPY_BIN} exit1.py', withexitstatus=1) + assert exitstatus == 1, "Exit status of 'python exit1.py' should be 1." + + def test_run(self): Index: pkg/DESCR =================================================================== RCS file: /cvs/ports/devel/py-pexpect/pkg/DESCR,v retrieving revision 1.2 diff -u -p -r1.2 DESCR --- pkg/DESCR 26 Jul 2004 06:13:03 -0000 1.2 +++ pkg/DESCR 4 Jan 2016 16:00:05 -0000 @@ -1,13 +1,13 @@ Pexpect makes Python a better tool for controlling other applications. Pexpect is a pure Python module for spawning child applications; controlling -them; and responding to expected patterns in their output. Pexpect works like -Don Libes' Expect. Pexpect allows your script to spawn a child application and +them; and responding to expected patterns in their output. Pexpect works like +Don Libes' Expect. Pexpect allows your script to spawn a child application and control it as if a human were typing commands. -Pexpect can be used for automating interactive applications such as ssh, ftp, +Pexpect can be used for automating interactive applications such as ssh, ftp, passwd, telnet, etc. It can be used to automate setup scripts for duplicating -software package installations on different servers. It can be used for -automated software testing. Pexpect is in the spirit of Don Libes' Expect, but -Pexpect is pure Python. Unlike other Expect-like modules for Python, Pexpect -does not require TCL or Expect nor does it require C extensions to be compiled. +software package installations on different servers. It can be used for +automated software testing. Pexpect is in the spirit of Don Libes' Expect, but +Pexpect is pure Python. Unlike other Expect-like modules for Python, Pexpect +does not require TCL or Expect nor does it require C extensions to be compiled. Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/devel/py-pexpect/pkg/PLIST,v retrieving revision 1.6 diff -u -p -r1.6 PLIST --- pkg/PLIST 8 Oct 2013 05:09:49 -0000 1.6 +++ pkg/PLIST 4 Jan 2016 16:00:05 -0000 @@ -1,47 +1,116 @@ @comment $OpenBSD: PLIST,v 1.6 2013/10/08 05:09:49 rpointel Exp $ -lib/python${MODPY_VERSION}/site-packages/ANSI.py -lib/python${MODPY_VERSION}/site-packages/ANSI.pyc -lib/python${MODPY_VERSION}/site-packages/FSM.py -lib/python${MODPY_VERSION}/site-packages/FSM.pyc -lib/python${MODPY_VERSION}/site-packages/fdpexpect.py -lib/python${MODPY_VERSION}/site-packages/fdpexpect.pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/ lib/python${MODPY_VERSION}/site-packages/pexpect-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info -lib/python${MODPY_VERSION}/site-packages/pexpect.py -lib/python${MODPY_VERSION}/site-packages/pexpect.pyc -lib/python${MODPY_VERSION}/site-packages/pxssh.py -lib/python${MODPY_VERSION}/site-packages/pxssh.pyc -lib/python${MODPY_VERSION}/site-packages/screen.py -lib/python${MODPY_VERSION}/site-packages/screen.pyc -share/doc/py-pexpect/ -share/doc/py-pexpect/clean.css -share/doc/py-pexpect/email.png -share/doc/py-pexpect/examples.html -share/doc/py-pexpect/index.html -share/doc/py-pexpect/index.template.html -share/examples/py-pexpect/ -share/examples/py-pexpect/ANSI.py -share/examples/py-pexpect/FSM.py -share/examples/py-pexpect/README -share/examples/py-pexpect/astat.py -share/examples/py-pexpect/bd_client.py -share/examples/py-pexpect/bd_serv.py -share/examples/py-pexpect/cgishell.cgi -share/examples/py-pexpect/chess.py -share/examples/py-pexpect/chess2.py -share/examples/py-pexpect/chess3.py -share/examples/py-pexpect/df.py -share/examples/py-pexpect/fix_cvs_files.py -share/examples/py-pexpect/ftp.py -share/examples/py-pexpect/hive.py -share/examples/py-pexpect/monitor.py -share/examples/py-pexpect/passmass.py -share/examples/py-pexpect/python.py -share/examples/py-pexpect/rippy.py -share/examples/py-pexpect/screen.py -share/examples/py-pexpect/script.py -share/examples/py-pexpect/ssh_session.py -share/examples/py-pexpect/ssh_tunnel.py -share/examples/py-pexpect/sshls.py -share/examples/py-pexpect/table_test.html -share/examples/py-pexpect/topip.py -share/examples/py-pexpect/uptime.py +lib/python${MODPY_VERSION}/site-packages/pexpect/ANSI.py +lib/python${MODPY_VERSION}/site-packages/pexpect/FSM.py +lib/python${MODPY_VERSION}/site-packages/pexpect/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}ANSI.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}FSM.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}async.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}exceptions.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}expect.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}fdpexpect.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}popen_spawn.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}pty_spawn.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}pxssh.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}replwrap.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}run.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}screen.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}spawnbase.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pexpect/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}pyc +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pexpect/async.py +lib/python${MODPY_VERSION}/site-packages/pexpect/exceptions.py +lib/python${MODPY_VERSION}/site-packages/pexpect/expect.py +lib/python${MODPY_VERSION}/site-packages/pexpect/fdpexpect.py +lib/python${MODPY_VERSION}/site-packages/pexpect/popen_spawn.py +lib/python${MODPY_VERSION}/site-packages/pexpect/pty_spawn.py +lib/python${MODPY_VERSION}/site-packages/pexpect/pxssh.py +lib/python${MODPY_VERSION}/site-packages/pexpect/replwrap.py +lib/python${MODPY_VERSION}/site-packages/pexpect/run.py +lib/python${MODPY_VERSION}/site-packages/pexpect/screen.py +lib/python${MODPY_VERSION}/site-packages/pexpect/spawnbase.py +lib/python${MODPY_VERSION}/site-packages/pexpect/utils.py +share/doc/${MODPY_PY_PREFIX}pexpect/ +share/doc/${MODPY_PY_PREFIX}pexpect/FAQ.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/ +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/index.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect/ +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect/fdpexpect.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect/popen_spawn.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect/pxssh.html +share/doc/${MODPY_PY_PREFIX}pexpect/_modules/pexpect/replwrap.html +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/ +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/FAQ.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/ +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/fdpexpect.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/index.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/pexpect.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/popen_spawn.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/pxssh.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/api/replwrap.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/commonissues.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/examples.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/history.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/index.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/install.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_sources/overview.txt +share/doc/${MODPY_PY_PREFIX}pexpect/_static/ +share/doc/${MODPY_PY_PREFIX}pexpect/_static/ajax-loader.gif +share/doc/${MODPY_PY_PREFIX}pexpect/_static/basic.css +share/doc/${MODPY_PY_PREFIX}pexpect/_static/comment-bright.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/comment-close.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/comment.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/default.css +share/doc/${MODPY_PY_PREFIX}pexpect/_static/doctools.js +share/doc/${MODPY_PY_PREFIX}pexpect/_static/down-pressed.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/down.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/file.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/jquery.js +share/doc/${MODPY_PY_PREFIX}pexpect/_static/minus.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/plus.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/pygments.css +share/doc/${MODPY_PY_PREFIX}pexpect/_static/searchtools.js +share/doc/${MODPY_PY_PREFIX}pexpect/_static/sidebar.js +share/doc/${MODPY_PY_PREFIX}pexpect/_static/underscore.js +share/doc/${MODPY_PY_PREFIX}pexpect/_static/up-pressed.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/up.png +share/doc/${MODPY_PY_PREFIX}pexpect/_static/websupport.js +share/doc/${MODPY_PY_PREFIX}pexpect/api/ +share/doc/${MODPY_PY_PREFIX}pexpect/api/fdpexpect.html +share/doc/${MODPY_PY_PREFIX}pexpect/api/index.html +share/doc/${MODPY_PY_PREFIX}pexpect/api/pexpect.html +share/doc/${MODPY_PY_PREFIX}pexpect/api/popen_spawn.html +share/doc/${MODPY_PY_PREFIX}pexpect/api/pxssh.html +share/doc/${MODPY_PY_PREFIX}pexpect/api/replwrap.html +share/doc/${MODPY_PY_PREFIX}pexpect/commonissues.html +share/doc/${MODPY_PY_PREFIX}pexpect/examples.html +share/doc/${MODPY_PY_PREFIX}pexpect/genindex.html +share/doc/${MODPY_PY_PREFIX}pexpect/history.html +share/doc/${MODPY_PY_PREFIX}pexpect/index.html +share/doc/${MODPY_PY_PREFIX}pexpect/install.html +share/doc/${MODPY_PY_PREFIX}pexpect/objects.inv +share/doc/${MODPY_PY_PREFIX}pexpect/overview.html +share/doc/${MODPY_PY_PREFIX}pexpect/py-modindex.html +share/doc/${MODPY_PY_PREFIX}pexpect/search.html +share/doc/${MODPY_PY_PREFIX}pexpect/searchindex.js +share/examples/${MODPY_PY_PREFIX}pexpect/ +share/examples/${MODPY_PY_PREFIX}pexpect/README +share/examples/${MODPY_PY_PREFIX}pexpect/astat.py +share/examples/${MODPY_PY_PREFIX}pexpect/cgishell.cgi +share/examples/${MODPY_PY_PREFIX}pexpect/chess.py +share/examples/${MODPY_PY_PREFIX}pexpect/chess2.py +share/examples/${MODPY_PY_PREFIX}pexpect/chess3.py +share/examples/${MODPY_PY_PREFIX}pexpect/df.py +share/examples/${MODPY_PY_PREFIX}pexpect/ftp.py +share/examples/${MODPY_PY_PREFIX}pexpect/hive.py +share/examples/${MODPY_PY_PREFIX}pexpect/monitor.py +share/examples/${MODPY_PY_PREFIX}pexpect/passmass.py +share/examples/${MODPY_PY_PREFIX}pexpect/python.py +share/examples/${MODPY_PY_PREFIX}pexpect/script.py +share/examples/${MODPY_PY_PREFIX}pexpect/ssh_tunnel.py +share/examples/${MODPY_PY_PREFIX}pexpect/table_test.html +share/examples/${MODPY_PY_PREFIX}pexpect/topip.py +share/examples/${MODPY_PY_PREFIX}pexpect/uptime.py