notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photos
All times are UTC
Ukraine
The recently imposed "must be logged in" restriction is a response to increased bot traffic on the site. This affects search, commits, and vuxml pages.
Search engines are not blocked. Try using "site:www.freshports.org" and your search terms.
Port details
py-preppy Preprocessor for Python
5.2.1 print on this many watch lists=0 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout 2.4.1_1Version of this port present on the latest quarterly branch.
Maintainer: sunpoet@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2014-05-25 07:32:13
Last Update: 2026-05-09 22:57:53
Commit Hash: c4e2f20
Also Listed In: python
License: BSD3CLAUSE
WWW:
https://hg.reportlab.com/hg-public/preppy
Description:
Preppy is ReportLab's templating system. It has been in continuous production use since 2000. It was released as open source code but never evangelized. We are putting it out on PyPI now because many of our solutions depend on it, and this makes it a lot easier to install (e.g. with a pip requirements file). Preppy is a single Python module which should be placed directly on the path (i.e. you access it with 'import preppy'). The setup script does this, but it's just as effective to grab it from the repo and drop it into your project. Preppy aims to be absolutely minimal. You embed Python expressions and control structures in your template. It compiles the template into a .pyc file. A preppy template is exactly equivalent to a Python function which accepts parameters and returns text output. We don't both with include functions, block nesting, filters or any other fancy stuff, because we already have a perfectly good language to do that in. Preppy is just Python, so you get proper Python tracebacks, with the original line number in the .prep file; you can happily debug through calls to python, preppy, python and more preppy.
Homepage    cgit ¦ Codeberg ¦ GitHub ¦ GitLab ¦ SVNWeb

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}preppy>0:print/py-preppy@${PY_FLAVOR}
To install the port:
cd /usr/ports/print/py-preppy/ && make install clean
To add the package, run one of these commands:
  • pkg install print/py-preppy
  • pkg install py311-preppy
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-preppy listed in the above command, you can pick from the names under the Packages section.
PKGNAME: py311-preppy
Package flavors (<flavor>: <package>)
  • py311: py311-preppy
distinfo:
TIMESTAMP = 1778345046 SHA256 (preppy-5.2.1.tar.gz) = a2c834d8864bbe3eef8d477cffac80559724507818ed21c9694107f1166743ae SIZE (preppy-5.2.1.tar.gz) = 58325

Packages (timestamps in pop-ups are UTC):
py37-preppy
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest--2.4.1--n/an/an/a
FreeBSD:13:quarterly-----n/an/an/a
FreeBSD:14:latest--------
FreeBSD:14:quarterly--------
FreeBSD:15:latest--n/a-n/an/a--
FreeBSD:15:quarterly--n/a-n/an/a--
FreeBSD:16:latest--n/a-n/an/a--
 
py39-preppy
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest-----n/an/an/a
FreeBSD:13:quarterly--2.4.1--n/an/an/a
FreeBSD:14:latest--2.4.1--2.4.1-2.4.1
FreeBSD:14:quarterly-----2.4.12.4.12.4.1
FreeBSD:15:latest--n/a-n/an/a2.4.12.4.1
FreeBSD:15:quarterly--n/a-n/an/a--
FreeBSD:16:latest--n/a-n/an/a--
 
py311-preppy
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest5.1.05.1.0-2.4.1_15.1.0n/an/an/a
FreeBSD:13:quarterly2.4.1_12.4.1_1-2.4.1_12.4.1_1n/an/an/a
FreeBSD:14:latest5.2.15.2.1-2.4.1_15.2.1---
FreeBSD:14:quarterly2.4.1_12.4.1_1-2.4.1_12.4.1_1---
FreeBSD:15:latest5.2.15.2.1n/a2.4.1_1n/an/a--
FreeBSD:15:quarterly2.4.1_12.4.1_1n/a-n/an/a--
FreeBSD:16:latest5.2.05.2.1n/a-n/an/a--
 
Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. py311-setuptools>=61 : devel/py-setuptools@py311
  2. py311-wheel>=0 : devel/py-wheel@py311
  3. python3.11 : lang/python311
  4. py311-build>=0 : devel/py-build@py311
  5. py311-installer>=0 : devel/py-installer@py311
Test dependencies:
  1. python3.11 : lang/python311
Runtime dependencies:
  1. python3.11 : lang/python311
There are no ports dependent upon this port

Configuration Options:
No options to configure
Options name:
print_py-preppy
USES:
python
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (2 items)
Collapse this list.
  1. https://files.pythonhosted.org/packages/source/p/preppy/
  2. https://pypi.org/packages/source/p/preppy/
Collapse this list.

Number of commits found: 18

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
5.2.1
09 May 2026 22:57:53
commit hash: c4e2f2061db623fea6fc591beccd776e255e29c5commit hash: c4e2f2061db623fea6fc591beccd776e255e29c5commit hash: c4e2f2061db623fea6fc591beccd776e255e29c5commit hash: c4e2f2061db623fea6fc591beccd776e255e29c5 files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
print/py-preppy: Update to 5.2.1

Changes:	https://hg.reportlab.com/hg-public/preppy/shortlog
5.2.0
02 May 2026 11:14:12
commit hash: c7eaf261291e71c08d24b1c4d1ac25c173ff5eefcommit hash: c7eaf261291e71c08d24b1c4d1ac25c173ff5eefcommit hash: c7eaf261291e71c08d24b1c4d1ac25c173ff5eefcommit hash: c7eaf261291e71c08d24b1c4d1ac25c173ff5eef files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
print/py-preppy: Update to 5.2.0

Changes:	https://hg.reportlab.com/hg-public/preppy/shortlog
5.1.0
05 Apr 2026 17:18:51
commit hash: 02dffe9dff5a227ce1309ccb6a1dc9c55826754acommit hash: 02dffe9dff5a227ce1309ccb6a1dc9c55826754acommit hash: 02dffe9dff5a227ce1309ccb6a1dc9c55826754acommit hash: 02dffe9dff5a227ce1309ccb6a1dc9c55826754a files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
print/py-preppy: Update to 5.1.0

- Update COMMENT
- Update WWW
- Convert to USE_PYTHON=pep517
- Update pkg-descr
- Take maintainership
2.4.1_1
08 Mar 2025 04:05:21
commit hash: 06a08e69f3acb846ad8252945f53c3a2d211e303commit hash: 06a08e69f3acb846ad8252945f53c3a2d211e303commit hash: 06a08e69f3acb846ad8252945f53c3a2d211e303commit hash: 06a08e69f3acb846ad8252945f53c3a2d211e303 files touched by this commit
Charlie Li (vishwin) search for other commits by this committer
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.
2.4.1
27 Jun 2023 19:34:34
commit hash: 3d9a815d9c5acbb71f4bb07738bdeab4879feacbcommit hash: 3d9a815d9c5acbb71f4bb07738bdeab4879feacbcommit hash: 3d9a815d9c5acbb71f4bb07738bdeab4879feacbcommit hash: 3d9a815d9c5acbb71f4bb07738bdeab4879feacb files touched by this commit
Rene Ladan (rene) search for other commits by this committer
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>
2.4.1
11 Jan 2023 15:58:34
commit hash: 77d68471aded6907dbbcb5ef50d557e4c69db656commit hash: 77d68471aded6907dbbcb5ef50d557e4c69db656commit hash: 77d68471aded6907dbbcb5ef50d557e4c69db656commit hash: 77d68471aded6907dbbcb5ef50d557e4c69db656 files touched by this commit
Dmitry Marakasov (amdmi3) search for other commits by this committer
*/*: rename CHEESESHOP to PYPI in MASTER_SITES

PR:			267994
Differential revision:	D37518
Approved by:		bapt
07 Sep 2022 21:58:51
commit hash: fb16dfecae4a6efac9f3a78e0b759fb7a3c53de4commit hash: fb16dfecae4a6efac9f3a78e0b759fb7a3c53de4commit hash: fb16dfecae4a6efac9f3a78e0b759fb7a3c53de4commit hash: fb16dfecae4a6efac9f3a78e0b759fb7a3c53de4 files touched by this commit
Stefan Eßer (se) search for other commits by this committer
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)
2.4.1
07 Sep 2022 21:10:59
commit hash: b7f05445c00f2625aa19b4154ebcbce5ed2daa52commit hash: b7f05445c00f2625aa19b4154ebcbce5ed2daa52commit hash: b7f05445c00f2625aa19b4154ebcbce5ed2daa52commit hash: b7f05445c00f2625aa19b4154ebcbce5ed2daa52 files touched by this commit
Stefan Eßer (se) search for other commits by this committer
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 View all of this commit message)
2.4.1
20 Jul 2022 14:22:48
commit hash: 51879c91f87889e30c8cc97affa08f16b6ac8527commit hash: 51879c91f87889e30c8cc97affa08f16b6ac8527commit hash: 51879c91f87889e30c8cc97affa08f16b6ac8527commit hash: 51879c91f87889e30c8cc97affa08f16b6ac8527 files touched by this commit
Tobias C. Berner (tcberner) search for other commits by this committer
print: remove 'Created by' lines

A big Thank You to the original contributors of these ports:

  *  Akinori MUSHA aka knu <knu@idaemons.org>
  *  Alan Eldridge <alane@geeksrus.net>
  *  Alex Dupre <ale@FreeBSD.org>
  *  Alex Dupre <sysadmin@alexdupre.com>
  *  Alexander Vereeken <Alexander88207@protonmail.com>
  *  Alexey Dokuchaev <danfe@FreeBSD.org>
  *  Alonso Cardenas Marquez <acm@FreeBSD.org>
  *  Andreas Klemm <andreas@FreeBSD.org>
  *  Andreas Klemm <andreas@klemm.gtn.com>
  *  Andrew Pantyukhin <infofarmer@FreeBSD.org>
  *  Anish Mistry <amistry@am-productions.biz>
(Only the first 15 lines of the commit message are shown above View all of this commit message)
2.4.1
06 Apr 2021 14:31:07
commit hash: 305f148f482daf30dcf728039d03d019f88344ebcommit hash: 305f148f482daf30dcf728039d03d019f88344ebcommit hash: 305f148f482daf30dcf728039d03d019f88344ebcommit hash: 305f148f482daf30dcf728039d03d019f88344eb files touched by this commit
Mathieu Arnold (mat) search for other commits by this committer
Remove # $FreeBSD$ from Makefiles.
2.4.1
28 Dec 2020 23:02:15
Revision:559531Original commit files touched by this commit
antoine search for other commits by this committer
Drop python 2.7 support from a few ports

With hat:	portmgr
2.4.1
10 Dec 2020 22:00:14
Revision:557689Original commit files touched by this commit
sunpoet search for other commits by this committer
Update to 2.4.1
2.3.4
26 Sep 2020 19:20:10
Revision:550207Original commit files touched by this commit
skozlov search for other commits by this committer
print/py-preppy: Give up maintainership
2.3.4
23 Sep 2018 08:13:44
Revision:480460Original commit files touched by this commit
skozlov search for other commits by this committer
Change MAINTAINER in my ports to @FreeBSD.org email

Approved By: sbruno
Differential Revision: https://reviews.freebsd.org/D17284
2.3.4
12 Sep 2015 07:33:38
Revision:396733Original commit files touched by this commit
wen search for other commits by this committer
- Update to 2.3.4

PR:		203024
Submitted by:	kozlov.sergey.404@gmail.com(maintainer)
2.3.2
24 Oct 2014 16:43:00
Revision:371452Original commit files touched by this commit
mva search for other commits by this committer
- Convert ports of news/ and print/ to new USES=python

Approved by: portmgr (implicit)
2.3.2
26 May 2014 08:15:51
Revision:355285Original commit files touched by this commit
culot search for other commits by this committer
- Update to 2.3.2

PR:		ports/190205
Submitted by: 	Kozlov Sergey <kozlov.sergey.404@gmail.com> (maintainer)
2.1.2
25 May 2014 07:32:07
Revision:355133Original commit files touched by this commit
miwi search for other commits by this committer
Preppy is ReportLab's templating system.  It was developed in late 2000 and has
been in continual production use since then.  It is open source (BSD-license).

The key features are:

- *small*.  Preppy is a single Python module.  If you want a templating system
  'in the box', it's easy to include it in your project
- *easy to learn*.  It takes about one minute to scan all the features
- *just Python*.  We have not invented another language, and if you want to do
  something - includes, quoting, filters - you just use Python
- *compiled to bytecode*: a .prep file gets compiled to a Python function in
  a .pyc file
- *easy to debug*: preppy generates proper Python exceptions, with the correct
  line numbers for the .prep file.  You can follow tracebacks from Python
  script to Preppy template and back, through multiple includes
- *easy to type and read*.  We've been using ``{{this}}`` syntax since well
  before Django was thought of
- *8-bit safe*:  it makes no assumption that you are generating markup and does
  nothing unexpected with whitespace; you could use it to generate images or
  binary files if you wanted to.

WWW: http://preppy.readthedocs.org/en/latest/

PR:		ports/186881
Submitted by:	Kozlov Sergey <kozlov.sergey.404@gmail.com>

Number of commits found: 18