Python module which implements a template based state machine for parsing
semi-formatted text. Originally developed to allow programmatic access to
information returned from the command line interface (CLI) of networking
devices.
The engine takes two inputs - a template file, and text input (such as command
responses from the CLI of a device) and returns a list of records that contains
the data parsed from the text.
A template file is needed for each uniquely structured text input. Some examples
are provided with the code and users are encouraged to develop their own.
By developing a pool of template files, scripts can call TextFSM to parse useful
information from a variety of sources. It is also possible to use different
templates on the same data in order to create different tables (or views).
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 py311-textfsm listed in the above command, you can pick from the names under the Packages section.
port moved here from textproc/py-jtextfsm on 2025-06-30 REASON: Has expired: Upstream inactive for 9+ years and the port is now obsolete. Please use textproc/py-textfsm instead
python: bump all USE_PYTHON=distutils consumers after RUN_DEPENDS removal
Any missed ports, feel free to bump.
Any ports that need setuptools at runtime can have the devel/py-setuptools
manually added back to RUN_DEPENDS, but understand that this practice
is deprecated; see CHANGES for details.
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>
textproc/py-textfsm: Switch back to PyPI
* During QA tests of net-mgmt/py-napalm, runtime errors occured because
the egg-info of py-textfsm still had version information of the prior
release (= 1.1.2).
This was because when version 1.1.3 was released, it was already
available in the upstream repository, but there was no sdist available
at PyPI yet. This was then made up by upstream some months later with
a corresponding adjustment for the egg-info:
https://github.com/google/textfsm/compare/v1.1.3...ca3755dc
Therefore, switch back to PyPI, which is the preferred method with
respect to Python ports and bump PORTREVISION due package change.
While I'm here:
* Re-evaluate and remove no longer required BUILD_DEPENDS.
* Simplify Makefile by switching to USE_PYTHON=pytest.
MFH: 2023Q2
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 )
textproc/py-textfsm: Update to 1.1.1
This update resolves a package installation conflict with
textproc/py-texttable as both ports installs "texttable.py" into the same
place. [1]
Also while I'm here:
* Switch to GitHub for a while as no sdist tarballs are available at PyPi.
* Make the port concurrent safe because it installs scripts outside of the
site-lib directory.
* Remove the "testdata" directory to prevent possible package conflicts as
it's only required for the test suite.
(Only the first 15 lines of the commit message are shown above )
Change my maintainer email address to my new one at the FreeBSD project.
Reviewed by: miwi (mentor)
Approved by: miwi (mentor)
Differential Revision: https://reviews.freebsd.org/D19050