| Port details |
- py-parsy Easy-to-use parser combinators, for parsing in pure Python
- 2.2 devel
=0 Package not present on quarterly.This port was created during this quarter. It will be in the next quarterly branch but not the current one. - Maintainer: sunpoet@FreeBSD.org
 - Port Added: 2026-04-18 22:03:52
- Last Update: 2026-04-18 21:18:23
- Commit Hash: bae38c8
- Also Listed In: python
- License: MIT
- WWW:
- https://parsy.readthedocs.io/en/latest/
- https://github.com/python-parsy/parsy
- Description:
- Parsy is an easy and elegant way to parse text in Python by combining small
parsers into complex, larger parsers. If it means anything to you, it's a
monadic parser combinator library for LL(infinity) grammars in the spirit of
Parsec, Parsnip, and Parsimmon. But don't worry, it has really good
documentation and it doesn't say things like that!
For a good example of the kind of clear, declarative code you can create using
parsy, see the SQL SELECT statement example or JSON parser.
The project:
- has zero dependencies outside stdlib.
- is highly mature and stable, with few-to-none backwards incompatibilities over
the past 10 years.
- is essentially complete, with no rewrites planned. Widely useful improvements
that don't break compatibility will still be considered, however.
- is implemented in a single module with less than 800LOC, which you could
vendor easily if required.
 ¦ ¦ ¦ ¦ 
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - There is no configure plist information for this port.
- USE_RC_SUBR (Service Scripts)
- no SUBR information found for this port
- Dependency lines:
-
- ${PYTHON_PKGNAMEPREFIX}parsy>0:devel/py-parsy@${PY_FLAVOR}
- To install the port:
- cd /usr/ports/devel/py-parsy/ && make install clean
- To add the package, run one of these commands:
- pkg install devel/py-parsy
- pkg install py311-parsy
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-parsy listed in the above command, you can pick from the names under the Packages section.- PKGNAME: py311-parsy
- Package flavors (<flavor>: <package>)
- distinfo:
- TIMESTAMP = 1775587106
SHA256 (parsy-2.2.tar.gz) = e943147644a8cf0d82d1bcb5c5867dd517495254cea3e3eb058b1e421cb7561f
SIZE (parsy-2.2.tar.gz) = 47296
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- py311-setuptools>=61.2 : devel/py-setuptools@py311
- py311-wheel>=0 : devel/py-wheel@py311
- python3.11 : lang/python311
- py311-build>=0 : devel/py-build@py311
- py311-installer>=0 : devel/py-installer@py311
- Test dependencies:
-
- python3.11 : lang/python311
- Runtime dependencies:
-
- python3.11 : lang/python311
- This port is required by:
- for Run
-
- math/py-ibis-framework
Configuration Options:
- No options to configure
- Options name:
- devel_py-parsy
- USES:
- python
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
Number of commits found: 1
| Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
| Commit | Credits | Log message |
2.2 18 Apr 2026 21:18:23
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-parsy: Add py-parsy 2.2
Parsy is an easy and elegant way to parse text in Python by combining small
parsers into complex, larger parsers. If it means anything to you, it's a
monadic parser combinator library for LL(infinity) grammars in the spirit of
Parsec, Parsnip, and Parsimmon. But don't worry, it has really good
documentation and it doesn't say things like that!
For a good example of the kind of clear, declarative code you can create using
parsy, see the SQL SELECT statement example or JSON parser.
The project:
- has zero dependencies outside stdlib.
- is highly mature and stable, with few-to-none backwards incompatibilities over
the past 10 years.
- is essentially complete, with no rewrites planned. Widely useful improvements
that don't break compatibility will still be considered, however.
- is implemented in a single module with less than 800LOC, which you could
vendor easily if required. |
Number of commits found: 1
|