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
control it as if a human were typing commands.
Pexpect can be used for automating interactive applications such as ssh, ftp,
passwd, telnet, etc. It can be used to a 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.
The main features of Pexpect require the pty module in the Python standard
library, which is only available on Unix-like systems. Some features -- waiting
for patterns from file descriptors or subprocesses -- waiting for patterns from
file descriptors or subprocesses.
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py39-pexpect listed in the above command, you can pick from the names under the Packages section.
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
misc: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* Aaron Dalton <aaron@FreeBSD.org>
* Adam Weinberger <adam@vectors.cx>
* Adam Weinberger <adamw@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alan E <alane@FreeBSD.org>
* Alex Semenyaka <alex@rinet.ru>
* Alex Stangl <alex@stangl.us>
* Alexander Logvinov <avl@FreeBSD.org>
* Alexander Logvinov <ports@logvinov.com>
* Alexander Nusov <alexander.nusov@nfvexpress.com>
* Alexander Timoshenko <gonzo@univ.kiev.ua>
(Only the first 15 lines of the commit message are shown above )
misc/py-pexpect: fix most of the test cases
A number of test cases included in the pexpect distribution failed on
FreeBSD. The patches included in the commit fix most of these tests.
One of the tests used /bin/bash and long options for the nl command.
Other tests assumed pipe buffers larger than provided by FreeBSD.
3 tests are still failing:
tests/test_replwrap.py::REPLWrapTestCase::test_existing_spawn FAILED
The text received contains bracketed paste escape characters when
a bash version 5.1 or newer is installed. There may be another problem
with this test, though, since it seems to depend on some bash rc file
(Only the first 15 lines of the commit message are shown above )
misc/py-pexpect: update to 4.6.0
async is the registered keyword since python 3.7, so current version of pexpect
fails to work with py37:
File "/usr/local/lib/python3.7/site-packages/pexpect/spawnbase.py", line 224
def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False):
^
SyntaxError: invalid syntax
*** Error code 1
Update to latest version solves the issue.
Also pass maintainership to python@ at maintainer's request
PR: 230188
Approved by: wg (maintainer)
Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
(Only the first 15 lines of the commit message are shown above )
[NEW] misc/py3-pexpect: Create Python 3.x version of port
The latest www/py-requests update [1] unbundled its dependencies, now
requiring chardet, idna, urllib3 and certifi from ports.
www/py3-requests port was not tested during QA, which would have highlighted
the need for many new py3-* ports (and their dependencies).
This change creates one of those ports.
[1] https://svnweb.freebsd.org/changeset/ports/442565
PR: 219833
Fix for python3: all integers are "long".
With python2, if a number does not fit into "short int", it is
automatically promoted to "long".
No objection from: wg (maintainer)
Cleanup unmaintained ports in the misc category:
- Single space for WWW in pkg-descr
- Ordering if of items in Makefile
- Trim headers
- Comment should not begin with leading article
- Pet portlint