diff --git a/print/py-preppy/Makefile b/print/py-preppy/Makefile index 99daed88e318..3897431111ac 100644 --- a/print/py-preppy/Makefile +++ b/print/py-preppy/Makefile @@ -1,20 +1,22 @@ PORTNAME= preppy -PORTVERSION= 2.4.1 -PORTREVISION= 1 +PORTVERSION= 5.1.0 CATEGORIES= print python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -MAINTAINER= ports@FreeBSD.org -COMMENT= ReportLab's templating system -WWW= http://preppy.readthedocs.org/en/latest/ +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Preprocessor for Python +WWW= https://hg.reportlab.com/hg-public/preppy LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} + USES= python -USE_PYTHON= autoplist concurrent distutils +USE_PYTHON= autoplist concurrent pep517 NO_ARCH= yes .include diff --git a/print/py-preppy/distinfo b/print/py-preppy/distinfo index 7f84362db965..7bed60ff48a3 100644 --- a/print/py-preppy/distinfo +++ b/print/py-preppy/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1607539987 -SHA256 (preppy-2.4.1.tar.gz) = aafa855d317260740332b8b8f88edc1424c21db27e096588b4b89cc299ed7fff -SIZE (preppy-2.4.1.tar.gz) = 181100 +TIMESTAMP = 1773966922 +SHA256 (preppy-5.1.0.tar.gz) = 74343828eec16da0b02de3caf44075acf08de507bc7d3c630576a9792d8b7f95 +SIZE (preppy-5.1.0.tar.gz) = 58129 diff --git a/print/py-preppy/pkg-descr b/print/py-preppy/pkg-descr index ac67bb0ae5a3..473730d42fb6 100644 --- a/print/py-preppy/pkg-descr +++ b/print/py-preppy/pkg-descr @@ -1,20 +1,21 @@ -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). +Preppy is ReportLab's templating system. It has been in continuous production +use since 2000. -The key features are: +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). -- *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. +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.